.png)

SAP S/4HANA Cloud Integration Guide
Integrate SAP S/4HANA Cloud with enterprise applications through released OData APIs, SOAP services, selected business events, and secure communication arrangements.
SAP S/4HANA Cloud integration options at a glance
SAP S/4HANA Cloud provides released REST APIs, primarily through OData V2 and OData V4, for reading and modifying supported business objects. Selected SOAP enterprise services remain useful for business processes not covered by a suitable OData API. Selected business events can be delivered through SAP eventing architectures, although event coverage is not universal. OData batch, asynchronous services, attachment APIs, and approved analytical interfaces support additional use cases. OAuth 2.0, Basic Authentication, certificates, communication users, and communication arrangements may apply by scenario. Martini can orchestrate these interfaces, schedule synchronization, transform SAP structures, expose application-friendly APIs, and apply validation, retry, and reconciliation logic.
| Integration point | Supported by SAP S/4HANA Cloud? | Common use cases | How Martini supports it |
|---|---|---|---|
| REST and OData APIs | Yes | Released OData V2 and OData V4 APIs support querying and, for selected objects, creating, updating, deleting, filtering, expanding, paging, and delta-style synchronization. Representative services include Business Partner, Sales Order, Purchase Order, and Product APIs. | Martini can consume SAP REST/OData APIs from workflows, follow continuation links, submit mapped requests, manage headers such as CSRF tokens where required, and expose a controlled API façade. |
| SOAP APIs | Yes | Selected SOAP enterprise services support business operations that may not be available through a suitable OData API, existing SAP service interfaces, and some asynchronous enterprise processes. | Martini can invoke SAP SOAP services, use service-specific authentication and WSDL-defined structures, transform XML payloads, and handle SOAP faults separately from transport errors. |
| Business events and outbound callbacks | Limited | Selected business events can be delivered through SAP eventing architectures, including SAP Event Mesh-related designs. Coverage depends on object, event, edition, release, and tenant configuration. | Martini can consume event notifications or receive them through an intermediary endpoint, retrieve the current SAP object, deduplicate events, and run reconciliation when event coverage is incomplete. |
| Bulk, batch, and asynchronous processing | Yes | Supported OData services may provide $batch requests, selected mass-processing operations, and asynchronous enterprise services. Transaction boundaries and payload limits are API-specific. | Martini can group supported requests, orchestrate asynchronous processing, bound concurrency, track correlation identifiers, and retry only operations with appropriate outcome semantics. |
| File and attachment APIs | Limited | Selected business objects expose attachment and document APIs for metadata and binary content, sometimes through media streams or separate operations. | Martini can coordinate metadata and binary transfers, map MIME types and object references, and route large or rejected files for controlled handling. |
| Analytical and released data services | Limited | Released analytical queries, CDS-based services, OData analytical APIs, SAP Analytics Cloud, or SAP Datasphere patterns may provide approved analytical access. Direct application-database access is not the normal public-cloud model. | Martini can consume approved analytical endpoints or coordinate exports, but it should not connect directly to the SAP-managed application database without a separately supported access pattern. |
| Authentication and communication arrangements | Yes | OAuth 2.0, Basic Authentication, certificates or mutual TLS, communication users, communication systems, communication arrangements, scopes, and business authorizations may apply by interface. | Martini can store tenant URLs and credentials in secure environment configuration, configure authentication for API calls, and keep secrets and certificates outside workflow logic. |
| GraphQL APIs | Not confirmed | No generally applicable SAP S/4HANA Cloud GraphQL catalog was confirmed. Released OData, SOAP, or event interfaces should be used instead. | Martini can consume GraphQL APIs where a separate confirmed endpoint exists, but this is not presented as a standard SAP S/4HANA Cloud integration method. |
How SAP S/4HANA Cloud exposes data and business events
SAP S/4HANA Cloud REST and OData APIs
SAP S/4HANA Cloud provides released REST APIs primarily based on OData V2 and OData V4. Service-specific capabilities can include filtering, expansion, server-side paging, metadata discovery, CRUD operations, and selected delta or batch features.
Martini implementation pattern
Martini implementation pattern: a workflow calls the selected SAP service, follows server-provided pagination, applies field and code mappings, handles CSRF protection for applicable write requests, and stores synchronization state and correlation data.
Implementation sequence
SAP S/4HANA Cloud SOAP services
Selected SAP enterprise services remain available through SOAP, particularly where a suitable OData API is unavailable, an existing SAP architecture uses SOAP, or an asynchronous enterprise service is required.
Martini implementation pattern
Martini implementation pattern: a workflow invokes the service defined by the relevant WSDL, transforms XML request and response structures, handles SOAP faults distinctly, and correlates asynchronous outcomes where supported.
Implementation sequence
SAP S/4HANA Cloud business events
Selected business events can be delivered through SAP eventing capabilities and SAP Event Mesh-related architectures. Event availability depends on the business object, event type, edition, release, activation, and subscription configuration; there is no universal webhook for every change.
Martini implementation pattern
Martini implementation pattern: Martini consumes the configured event notification or receives it through an intermediary endpoint, deduplicates the event, retrieves the current SAP object when necessary, and starts downstream processing. Scheduled reconciliation remains a safeguard for critical flows.
Implementation sequence
SAP S/4HANA Cloud batch and asynchronous processing
Supported OData services may provide $batch requests, mass-processing operations, or asynchronous enterprise services. Batch behavior, transaction boundaries, payload limits, and atomicity are specific to each service.
Martini implementation pattern
Martini implementation pattern: Martini groups compatible operations only where the SAP API supports it, controls concurrency and payload size, tracks individual business outcomes, and retries bounded transient failures without assuming that a batch is unlimited or universally atomic.
Implementation sequence
Common SAP S/4HANA Cloud integration patterns
Pattern 1: Synchronize Business Partners and customers
When to use this pattern
Use this pattern when SAP S/4HANA Cloud is authoritative for customer, supplier, or central party data and another application needs reliable master-data updates. A scheduled workflow can combine supported delta mechanisms with periodic reconciliation.
Integration direction
Example Mapping
| SAP S/4HANA Cloud Field | Canonical Field | Target Field |
|---|---|---|
| BusinessPartner | partyId | Account.externalSapId |
| CustomerName | legalName | Account.name |
| SalesArea | salesAreaCode | Account.salesArea |
| Country | countryCode | Account.billingCountry |
Martini implementation pattern
A scheduler starts a Martini workflow that reads Business Partner and Customer data through the relevant OData APIs, follows pagination or delta behavior, validates organizational codes, and upserts the target using a stable SAP identifier. Failures are classified, recorded, and retried or reconciled without creating duplicates.
Martini capabilities used
- workflows
- API consumption
- scheduling
- data mapping
- business rules
- error handling
Pattern 2: Submit sales orders through an API façade
When to use this pattern
Use this pattern when a commerce or customer-facing application should not depend directly on SAP-specific payloads, communication arrangements, CSRF details, or error formats.
Integration direction
Example Mapping
| SAP S/4HANA Cloud Field | Canonical Field | Target Field |
|---|---|---|
| externalOrderId | orderReference | SalesOrder.ExternalReference |
| customerId | customerReference | SalesOrder.SoldToParty |
| lineItems[].sku | productId | SalesOrder.Item.Material |
| lineItems[].quantity | orderedQuantity | SalesOrder.Item.RequestedQuantity |
Martini implementation pattern
Martini exposes a controlled REST API, validates the incoming order and required master-data references, maps the payload to the SAP Sales Order API, obtains or refreshes a CSRF token when required, and returns a normalized response containing the SAP order number. External references and correlation IDs protect against duplicate creation.
Martini capabilities used
- API exposure
- workflows
- data mapping
- validation
- business rules
- error handling
Pattern 3: Synchronize procurement documents
When to use this pattern
Use this pattern when suppliers, purchase orders, or procurement status must move between SAP S/4HANA Cloud and SAP Ariba, NetSuite, or another procurement application.
Integration direction
Example Mapping
| SAP S/4HANA Cloud Field | Canonical Field | Target Field |
|---|---|---|
| supplierId | supplierReference | PurchaseOrder.Supplier |
| purchasingOrganization | buyingOrganization | PurchaseOrder.PurchasingOrganization |
| companyCode | legalEntity | PurchaseOrder.CompanyCode |
| items[].netPrice | unitPrice | PurchaseOrder.Item.NetPrice |
Martini implementation pattern
Martini orchestrates supplier and purchase-order exchanges through the confirmed endpoints, converts identifiers, currencies, tax fields, units, and line items, and validates purchasing organization and supplier assignments before writing to SAP. Business rejections are routed for correction, while transient failures use bounded retry policies.
Martini capabilities used
- workflows
- API consumption
- data mapping
- business rules
- retry handling
- monitoring
Pattern 4: Process selected SAP business events
When to use this pattern
Use this pattern when a required event is available for the tenant and business object through SAP eventing. It is appropriate for responsive downstream processing, but should be paired with reconciliation because event coverage and delivery behavior are configuration-dependent.
Integration direction
Example Mapping
| SAP S/4HANA Cloud Field | Canonical Field | Target Field |
|---|---|---|
| eventId | sourceEventId | Issue.externalCorrelationId |
| businessObjectId | sapObjectId | Issue.sapReference |
| eventType | changeType | Issue.summary |
| objectStatus | businessStatus | Issue.status |
Martini implementation pattern
Martini receives the selected event, validates and deduplicates it, retrieves the current SAP object when necessary, and creates or updates a downstream issue or notification. Delayed, duplicated, or missing events are handled through correlation, retry, and scheduled reconciliation workflows.
Martini capabilities used
- event-driven workflows
- API consumption
- data mapping
- deduplication
- error handling
- scheduled reconciliation
Applications commonly integrated with SAP S/4HANA Cloud
SAP S/4HANA Cloud commonly participates in enterprise landscapes where customer, supplier, product, order, procurement, finance, workforce, and fulfillment data must move between specialized applications. The exact ownership of each object depends on the implementation. Martini can consume the relevant APIs or events, apply canonical mappings and business rules, and coordinate retries and reconciliation without assuming that every named application uses the same interface.
| Application | Scenario | Direction | Martini Pattern |
|---|---|---|---|
| Salesforce | Synchronize Business Partners, Customers, sales orders, and account-related master data between SAP and CRM processes. | SAP S/4HANA Cloud → Martini → Salesforce | Use scheduled OData reads or selected SAP events, map SAP identifiers and customer attributes to Salesforce objects, and route Salesforce-originated requests through a Martini API when SAP is authoritative for master data. |
| ServiceNow | Exchange procurement requests, asset-related information, incidents, and approval or fulfillment status with SAP processes. | ServiceNow → Martini → SAP S/4HANA Cloud | Expose or consume REST endpoints, validate organizational and document references, transform payloads into SAP business objects, and return controlled business or technical error responses. |
| Workday | Coordinate worker, organization, cost-center, supplier, or finance-related data where SAP and Workday have overlapping master-data responsibilities. | Workday → Martini → SAP S/4HANA Cloud | Schedule incremental exchanges, normalize organizational codes and effective dates, apply ownership rules, and persist synchronization watermarks for reconciliation. |
| NetSuite | Exchange finance, customer, supplier, product, and order data in organizations operating both platforms. | SAP S/4HANA Cloud → Martini → NetSuite | Use SAP OData APIs and the target platform APIs in a coordinated workflow, map currencies, tax fields, identifiers, and line items, and use idempotent business keys for retries. |
| Shopify | Send products, inventory availability, prices, and fulfillment status to commerce processes, and submit customer orders to SAP. | Shopify → Martini → SAP S/4HANA Cloud | Receive order requests or events, validate product and customer references, create SAP Sales Orders through the released API, and publish fulfillment or inventory updates downstream. |
| Jira | Create or update work items from SAP exceptions, delivery issues, or change processes and return status information. | SAP S/4HANA Cloud → Martini → Jira | Trigger a workflow from selected SAP events or reconciliation results, create or update Jira issues, correlate issue keys with SAP identifiers, and route status changes back when required. |
| SAP SuccessFactors | Exchange employee, organizational, cost-center, and payroll-related data across the SAP product landscape. | SAP SuccessFactors → Martini → SAP S/4HANA Cloud | Coordinate API-based master-data exchanges, map effective-dated structures and organizational codes, and use validation and reconciliation steps for incomplete or conflicting records. |
| SAP Ariba | Exchange suppliers, purchase requisitions, purchase orders, invoices, and procurement status. | SAP Ariba → Martini → SAP S/4HANA Cloud | Orchestrate procurement payloads through APIs or approved intermediary endpoints, validate supplier and purchasing-organization data, and distinguish business rejection from retryable transport failures. |
How to build a SAP S/4HANA Cloud integration in Martini
Objective
Establish tenant-specific access to SAP S/4HANA Cloud using the communication arrangement and authentication method required by the selected API or service.
Instructions in Martini
- Store tenant URLs, client identifiers, secrets, passwords, and certificates in secure environment configuration.
- Configure OAuth 2.0, Basic Authentication, or certificate-based access according to the SAP scenario.
- Confirm communication users, scopes, business roles, and API permissions.
Objective
Select a trigger that matches the synchronization requirement and the confirmed SAP capability for the business object.
Instructions in Martini
- Use a Martini API for application-led requests.
- Use a scheduler for polling, incremental synchronization, or reconciliation.
- Use an event or webhook-style trigger only for a confirmed SAP business event and delivery architecture.
Objective
Read or receive SAP data while respecting service-specific pagination, delta behavior, event coverage, and payload limits.
Instructions in Martini
- Follow OData continuation links and use bounded page sizes.
- Use filters, selected fields, and supported change tracking where appropriate.
- Retrieve the current object after an event when the notification does not contain complete business data.
Objective
Coordinate SAP calls, target-system operations, branching, correlation, and asynchronous processing in a maintainable Martini workflow.
Instructions in Martini
- Separate transport, authentication, validation, and SAP business errors.
- Use correlation identifiers across calls and asynchronous outcomes.
- Use supported batch operations only when their limits and semantics are understood.
Objective
Convert SAP OData, SOAP, event, or attachment structures into the target model while enforcing enterprise data rules.
Instructions in Martini
- Map organizational dimensions such as company code, plant, sales organization, and purchasing organization explicitly.
- Normalize currencies, units, dates, time zones, tax fields, and language-dependent descriptions.
- Validate required master data and business constraints before writes.
Objective
Create or update downstream applications or SAP objects with idempotent behavior and controlled responses.
Instructions in Martini
- Use SAP identifiers or approved external references to prevent duplicate creation.
- Handle CSRF tokens and session behavior for applicable SAP OData writes.
- Return normalized API responses rather than exposing SAP-specific errors unnecessarily.
Common SAP S/4HANA Cloud data objects used in integrations
| Object | Typical Use | Common target systems | Martini handling |
|---|---|---|---|
| Business Partner | Central party data for customers, suppliers, organizations, and individuals. | Salesforce, Workday, SAP SuccessFactors, master data platforms, data warehouses | Martini reads and writes the released Business Partner API where supported, maps identifiers and role data, validates required fields, and uses business partner numbers or approved external references for idempotency. |
| Customer | Customer master and sales-area-related information used in order-to-cash processes. | Salesforce, Shopify, NetSuite, data warehouses | Martini synchronizes customer attributes and sales-area dimensions through OData, applies code and ownership rules, and records rejected or incomplete master data for remediation. |
| Supplier | Supplier master and purchasing-related information used in procure-to-pay processes. | SAP Ariba, NetSuite, Workday, procurement platforms | Martini maps supplier identifiers, purchasing organizations, company codes, currencies, and tax data, while separating authorization or validation failures from transient API errors. |
| Product | Product or material master data, including descriptions, units, and related commercial attributes. | Shopify, Salesforce, NetSuite, inventory and analytics platforms | Martini uses released Product APIs where available, normalizes units and language-dependent descriptions, and schedules incremental or reconciliation-based synchronization. |
| Sales Order | Customer orders containing items, schedules, pricing, fulfillment details, and organizational dimensions. | Shopify, Salesforce, ServiceNow, logistics platforms | Martini validates external references, maps order lines and organizational fields, handles CSRF requirements for writes where applicable, and avoids duplicate creation during retries. |
| Purchase Order | Procurement documents containing suppliers, items, delivery schedules, conditions, and purchasing data. | SAP Ariba, NetSuite, procurement applications, supplier platforms | Martini transforms purchasing structures, validates supplier and purchasing organization data, invokes OData or SOAP as appropriate, and routes business rejections for review. |
Authentication and security considerations
Tenant-specific access
SAP S/4HANA Cloud access is configured through communication systems, communication users, communication arrangements, business roles, catalogs, and API-specific permissions. Public and private editions, releases, activated scope items, and tenant configuration can change the available interfaces.
Authentication and protection
- OAuth 2.0 is commonly used through SAP BTP destinations, communication arrangements, and API-based access.
- Basic Authentication, certificates, mutual TLS, or other SAP BTP security patterns may apply to selected scenarios.
- State-changing OData requests may require CSRF token retrieval and preservation of relevant session behavior.
- Tenant URLs, credentials, tokens, and certificates should be stored in Martini secure environment configuration rather than workflow code.
Operational considerations for SAP S/4HANA Cloud integrations
API and release variation
Confirm the OData version, release status, supported operations, communication scenario, edition availability, and successor or deprecated APIs for each business object.
Throughput and synchronization
- Follow SAP server-provided pagination and use bounded page sizes, filters, and selected fields.
- Use controlled concurrency, bounded retries, and exponential backoff for throttling and transient 5xx responses.
- Use supported batch operations carefully; batch requests do not imply unlimited throughput or universal atomicity.
- Combine events with scheduled reconciliation when event coverage, ordering, or delivery cannot be guaranteed.
Data quality and duplicate control
- Map organizational codes, currencies, units, dates, time zones, tax data, and language-dependent values explicitly.
- Use stable SAP identifiers, approved external references, correlation IDs, and duplicate-event checks.
- Separate business validation failures from retryable transport failures.
- Test attachment size, MIME type, binary handling, and separate metadata operations where applicable.
Why use Martini instead of scripts or point-to-point integrations?
Maintainable orchestration
Point-to-point scripts often combine SAP authentication, pagination, mapping, business validation, retries, and target-system logic in code that is difficult to govern. Martini organizes this behavior in reusable workflows and APIs.
Adapt to SAP variation
Martini can coordinate OData, SOAP, selected events, attachments, and approved analytical interfaces while keeping tenant configuration and secrets separate from integration logic.
Reliable enterprise processing
- Apply mappings and business rules consistently across SAP objects and target applications.
- Use controlled retries, correlation, idempotency, error classification, and reconciliation.
- Expose application-friendly APIs that shield consumers from SAP-specific structures and CSRF or communication details.
- Monitor workflow outcomes and evolve integrations as SAP APIs, releases, and tenant capabilities change.
Frequently asked questions
SAP S/4HANA Cloud can be integrated through released OData V2 and OData V4 APIs, selected SOAP enterprise services, selected business events delivered through SAP eventing architectures, supported batch or asynchronous services, attachment APIs, and approved analytical interfaces. Authentication and authorization depend on the API, tenant, edition, communication arrangement, and configured identity model.
Yes. Martini can consume SAP S/4HANA Cloud REST/OData APIs, invoke supported SOAP services, process selected SAP business events, schedule synchronization workflows, expose APIs that hide SAP-specific details, and map SAP structures to downstream applications. A Martini native SAP S/4HANA Cloud connector is not documented in the supplied materials.
No. A dedicated SAP S/4HANA Cloud connector is not required. Martini can use SAP's confirmed native integration mechanisms, including OData APIs, selected SOAP services, eventing architectures, authentication methods, and supported attachment or analytical endpoints.
Lonti does not charge an additional per-connector or per-vendor fee to integrate SAP S/4HANA Cloud. The integration is subject to the provisioned capacity of the Martini environment. Separate costs may apply from SAP, SAP BTP or Event Mesh, cloud infrastructure, API usage, or other third-party services.
Use a released OData API when it provides the required business object and operations. Use SOAP when the required service is exposed through a SOAP enterprise service, an existing SAP architecture depends on it, or it provides a business operation unavailable through OData. Confirm API version, release status, operations, and edition support for each object.
Selected business events can be delivered through SAP eventing capabilities and SAP Event Mesh-related architectures, but SAP S/4HANA Cloud does not provide a universal webhook for every object and change. Availability depends on the object, event, release, edition, activation, and subscription configuration. Polling or reconciliation may be needed for unsupported changes.
Martini can map OData, SOAP, event, and attachment structures into canonical or target models, while applying rules for identifiers, organizational dimensions, currencies, units, dates, tax data, and language. Synchronization can use server pagination, supported delta mechanisms, timestamps, events, and scheduled reconciliation.
Martini can distinguish transport, authentication, validation, authorization, and SAP business errors, then apply bounded retries only to eligible transient failures. Stable SAP identifiers, external references, correlation IDs, duplicate-event checks, and reconciliation workflows help prevent duplicate writes and recover from uncertain outcomes.
Related Martini documentation
SAP APIs
Workflows
Integrate SAP S/4HANA Cloud with Martini
Use Martini to connect SAP S/4HANA Cloud APIs, SOAP services, selected business events, and enterprise applications through secure, maintainable workflows and APIs.