SAP Ariba (platform)

SAP Ariba is an enterprise source-to-pay and sourcing suite. Contingent services and SOW work are modelled through Sourcing Projects, Requisitions and Contract Workspaces rather than a single VMS object. VMS Agent maps canonical intent onto those objects across Ariba's REST, SOAP and cXML surfaces.

Reference
API at a glance

The public API facts VMS Agent's adapter relies on. Tenant-specific details (custom fields, picklists, approval chains) are confirmed during connection and folded into the MappingProfile.

AuthenticationOAuth 2.0 client-credentials PLUS a per-API Application Key. Every call sends apiKey + Authorization: Bearer. Token from https://api.ariba.com/v2/oauth/token. One application per API per realm.
API styleREST (JSON) + SOAP (strategic sourcing) + cXML (transactional documents over Ariba Network)
Base URLhttps://openapi.ariba.com/api/{service}/{version}/{env} e.g. /sourcing-approval/v2/prod
ObjectsSourcing Project, Sourcing Request / Requisition, Purchase Order, Supplier, Contract Workspace (SOW), Invoice (cXML)
Events / webhooksPoll-first. cXML push over Ariba Network; External Approval API for inbound/outbound approvals. No general object-change webhook bus.
Rate limitsPer app key + per API, multi-window (per sec/min/hour/day). Varies widely by API; raised case-by-case via account exec.
Readiness
Docs confidence: Public

“Docs confidence” describes how deterministic our mapping templates can be before we connect to a tenant. Even with public docs, implementations vary — especially around custom fields, approval flows and object extensions.

Deterministic mapping

Common Workforce Model fields map to known API fields. Best for standard objects (requisitions, assignments, timesheets, POs).

Tenant discovery

VMS Agent can scan tenant configuration (custom fields, picklists, required fields) where the platform permits it, then generate a tenant‑specific MappingProfile.

Enrichment loop

If the target platform requires a field the Intent record doesn't yet have, VMS Agent emits an enrichment_request back to the intake layer.

Mapping
Minimum viable mapping for SAP Ariba

An opinionated baseline. The platform adapter enforces additional requirements via preflight. “Tenant required” fields are discovered during connection and added to the MappingProfile.

Object Canonical fields Platform target Required status Notes
Requisition (Contingent)
Create external worker request
role_title, location, start_date, cost_center, worker_type Operational Requisition / Sourcing Request Required + tenant required Preflight enforces tenant-required fields
Statement of Work
Services / SOW engagement
service_category, sow.summary, deliverables[], budget, dates Contract Workspace (SOW type) Often tenant required SOW is modelled as a contract-workspace type
Purchase Order
Transact the order
po_lines, supplier, amount cXML PO over Ariba Network Network-dependent Transacted via Ariba Network
Idempotency & drift — publish + reconcileExpand

Publish operations are idempotent using a deterministic key {intent_id}-{intent_version}-{target_system}. Because humans can change records inside the platform, VMS Agent supports reconciliation: it compares the platform record snapshot to the canonical intent and flags drift.

Tenant specifics
Custom fields & unique mapping

Real deployments rely on program-specific custom fields (for compliance, approvals, GL coding, rate rules or supplier constraints). VMS Agent is designed to generate tenant‑specific mappings rather than forcing you to redesign your intake.

How scanning works

High-level flow

connect_destination() → read required fields + picklists (where permitted) → detect custom fields / extensions → build MappingProfile + validation rules → preflight intent against tenant requirements

What gets produced

Portable artefacts

MappingProfile (tenant-scoped) Capabilities matrix Required-field rules Picklist dictionaries Enrichment prompts Audit spine links (defence_file_ref)
Important — where this platform is tenant-definedExpand

SOW / contingent labour is not a first-class REST object; field-level schemas live in per-API WSDL/OpenAPI specs on the Business Accelerator Hub, several behind Hub login. App keys take ~12h to activate, and apps are promoted from test realm to production.

Next
Implement the adapter

Use this page alongside the API + Schemas docs to implement: destination connection, preflight validation, publish, webhook back-sync and reconciliation.