◂ Back to examples
SAP

Integrate SAP with your enterprise systems

Connect SAP S/4HANA, ECC and SuccessFactors from Python. Read and write business partners, sales orders, employees and any other entity over OData, with CSRF tokens, OAuth2, paging and serialization all handled by the platform.

Tutorials

How to use the SAP integration

More examples

About SAP

SAP is the backbone of enterprise operations across manufacturing, retail, logistics and finance - S/4HANA and ECC for ERP, SuccessFactors for HR. All of them expose their business data through OData services, which is exactly what Zato's outgoing SAP connections speak. With Zato, you configure a connection once - address, OData version, credentials - and every Python service can then read and write business partners, sales orders, employees or any other entity, orchestrating SAP with databases, message queues and the rest of your integration landscape.

Frequently asked questions

Which SAP products can Zato connect to?

S/4HANA and ECC through Gateway OData services and SuccessFactors through its OData API. See the S/4HANA and ECC and SuccessFactors chapters for the address and auth settings of each.

How does authentication work?

Basic Auth, Bearer tokens or OAuth2 client credentials, with tokens cached and refreshed automatically. Details are in the SAP security chapter.

What about CSRF tokens?

SAP Gateway requires an X-CSRF-Token for writes - Zato fetches, caches and refreshes the token automatically, as described in the security chapter.

How do I read data from SAP?

Obtain a client with self.sap and call .read, .get or .iter - entities arrive as plain Python dicts, with paging followed transparently.

Can I write data too?

Yes - .create, .update and .delete cover the full CRUD range against any entity set your SAP user is authorized for.

Does this replace SAP RFC connections?

Yes - OData is the API layer that SAP publishes and supports for S/4HANA and SuccessFactors, and Zato's SAP connections build on it, with no SAP client libraries to install.

How do I test SAP integrations?

Mock SAP responses in unit tests or run live tests against the in-process OData test server that simulates SAP auth and validation behavior.

Can I keep the configuration in version control?

Yes - define connections in YAML with enmasse and import them per environment, with secrets read from environment variables.

Ready to build SAP integrations?

Get started with Zato and connect SAP to your enterprise systems in minutes.