Ellipse Gradient for Header
SAP S/4HANA Cloud logo

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 pointSupported by SAP S/4HANA Cloud?Common use casesHow Martini supports it
REST and OData APIsYesReleased 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 APIsYesSelected 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 callbacksLimitedSelected 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 processingYesSupported 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 APIsLimitedSelected 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 servicesLimitedReleased 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 arrangementsYesOAuth 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 APIsNot confirmedNo 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

Authenticate with the configured SAP communication arrangement
Retrieve the current page or resource from the released OData service
Follow the service-provided continuation mechanism
Map SAP structures to the target canonical model
Apply validation and business rules
Write the result to the target system and store the synchronization checkpoint

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

Load the service-specific endpoint and authentication configuration
Construct the XML request from the canonical integration model
Invoke the SAP SOAP service
Parse the response or SOAP fault
Apply business and technical error classification
Persist the correlation identifier and final processing state

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

Receive the selected SAP event notification
Validate the event type and tenant context
Check the event identifier for duplicate processing
Retrieve the current SAP object when the event is not complete
Map and route the business change
Record the event outcome for reconciliation

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

Partition work according to the SAP service limits
Build a supported batch or asynchronous request
Submit the request with correlation data
Read individual operation or process outcomes
Retry only eligible transient failures
Reconcile unresolved items and publish the final status

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
SAP S/4HANA Cloud
Martini
Salesforce
Example Mapping
SAP S/4HANA Cloud FieldCanonical FieldTarget Field
BusinessPartnerpartyIdAccount.externalSapId
CustomerNamelegalNameAccount.name
SalesAreasalesAreaCodeAccount.salesArea
CountrycountryCodeAccount.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
Shopify
Martini
SAP S/4HANA Cloud
Example Mapping
SAP S/4HANA Cloud FieldCanonical FieldTarget Field
externalOrderIdorderReferenceSalesOrder.ExternalReference
customerIdcustomerReferenceSalesOrder.SoldToParty
lineItems[].skuproductIdSalesOrder.Item.Material
lineItems[].quantityorderedQuantitySalesOrder.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
SAP Ariba
Martini
SAP S/4HANA Cloud
Example Mapping
SAP S/4HANA Cloud FieldCanonical FieldTarget Field
supplierIdsupplierReferencePurchaseOrder.Supplier
purchasingOrganizationbuyingOrganizationPurchaseOrder.PurchasingOrganization
companyCodelegalEntityPurchaseOrder.CompanyCode
items[].netPriceunitPricePurchaseOrder.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
SAP S/4HANA Cloud
Martini
Jira
Example Mapping
SAP S/4HANA Cloud FieldCanonical FieldTarget Field
eventIdsourceEventIdIssue.externalCorrelationId
businessObjectIdsapObjectIdIssue.sapReference
eventTypechangeTypeIssue.summary
objectStatusbusinessStatusIssue.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

ObjectTypical UseCommon target systemsMartini handling
Business PartnerCentral party data for customers, suppliers, organizations, and individuals.Salesforce, Workday, SAP SuccessFactors, master data platforms, data warehousesMartini 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.
CustomerCustomer master and sales-area-related information used in order-to-cash processes.Salesforce, Shopify, NetSuite, data warehousesMartini synchronizes customer attributes and sales-area dimensions through OData, applies code and ownership rules, and records rejected or incomplete master data for remediation.
SupplierSupplier master and purchasing-related information used in procure-to-pay processes.SAP Ariba, NetSuite, Workday, procurement platformsMartini maps supplier identifiers, purchasing organizations, company codes, currencies, and tax data, while separating authorization or validation failures from transient API errors.
ProductProduct or material master data, including descriptions, units, and related commercial attributes.Shopify, Salesforce, NetSuite, inventory and analytics platformsMartini uses released Product APIs where available, normalizes units and language-dependent descriptions, and schedules incremental or reconciliation-based synchronization.
Sales OrderCustomer orders containing items, schedules, pricing, fulfillment details, and organizational dimensions.Shopify, Salesforce, ServiceNow, logistics platformsMartini validates external references, maps order lines and organizational fields, handles CSRF requirements for writes where applicable, and avoids duplicate creation during retries.
Purchase OrderProcurement documents containing suppliers, items, delivery schedules, conditions, and purchasing data.SAP Ariba, NetSuite, procurement applications, supplier platformsMartini 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

How can SAP S/4HANA Cloud be integrated with enterprise systems?

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.

Can Martini integrate with SAP S/4HANA Cloud?

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.

Do I need a connector to integrate SAP S/4HANA Cloud with Martini?

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.

Is there any extra Lonti cost to integrate SAP S/4HANA Cloud with Martini?

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.

Which SAP S/4HANA Cloud APIs should a new integration use?

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.

Does SAP S/4HANA Cloud support events or webhooks?

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.

How does synchronization with SAP S/4HANA Cloud handle mapping and 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.

How are errors, retries, and duplicates handled in SAP integrations?

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.