Integrate without depending on the screen
Automating through the interface is the last resort, not the first. Where an integration contract exists, it is faster, more stable and survives an upgrade. The screen should be reserved for what exposes no API.
The cost of integrating through the interface when an API existed
Many projects automate the screen because nobody checked what was already exposed.
Avoidable fragility
A flow that could be a service call becomes dependent on the layout and starts breaking with every visual change.
Volume limited by the session
Integration through the interface is limited by the number of simultaneous sessions. High volume requires an integration contract.
Errors without meaning
The screen returns a message for a human. The API returns a code that can be handled, letting you decide between retrying, escalating or aborting.
How it works
First we discover what already exists, then we build what is missing.
Inventory of what is already exposed
Survey of the services available in SAP and the systems involved, including what exists but is not documented internally.
Contract definition
Fields, authentication, error format, idempotency and volume limit, agreed before any implementation.
Implementation and authentication
Building the integration with authentication and access control, with no credentials in code and no versioned secrets.
Contract monitoring
Tracking of errors, latency and volume, so a contract break shows up as an alert and not as a stopped process.
Supported standards
Compatible with any language or platform that consumes an HTTP contract.
| Standard | Typical use | Notes |
|---|---|---|
| REST | Integration between applications and services | Most common format in projects |
| SOAP | Legacy SAP services and middleware | Still frequent in corporate environments |
| Webhook | Event notification | Requires an endpoint available on the customer side |
| File | Batch load and batch interface | When the system exposes no service |
| Database | Controlled direct read | Last resort, with a restricted scope |
Frequently asked questions
Does it work with any language?
Yes. The contract is HTTP, so any platform that can make a service call can consume it.
What if the system has no API?
Then automation through the interface is legitimate, and it is what we do in Automations. The order matters: check the contract first, use the screen when there is none.
How are credentials handled?
Outside the code and outside version control, with role-based access. It is a requirement, not a recommendation.
See also
Is there an API where you are automating the screen?
We survey what is already exposed in your environment and show what can leave the interface.






