SAP CPI iFlow Design Template
An iFlow without a design document is hard to support when the original developer moves on. This template captures purpose, connectivity, flow steps, error handling and monitoring in one page that reviewers and support teams can read.
Fill in
SAP CPI iFlow Design Template
SAP Cloud Integration iFlow Design: IF_S4_ORDERS_To_EDI_850
Package: Order_To_Cash_EDI Owner: Plant Order Management Author: A. Developer Date: 2026-10-20
1. Business purpose
Send approved customer purchase order acknowledgements from S/4HANA to the customer EDI provider as X12 855 documents.
2. Connectivity
| Item | Detail |
|---|---|
| Sender and adapter | S/4HANA via IDoc adapter (SOAP channel), message type ORDRSP |
| Receiver and adapter | EDI provider via SFTP adapter, X12 855 |
| Authentication | SFTP public key |
| Expected volume | 300 messages per day, peak 60 per hour |
| Credentials stored in | Security Material (Manage Security Material), no secrets in the iFlow |
3. Message flow
Step 1: Receive message through the sender adapter and set the message ID header. Step 2: Validate the payload against the source schema (XSD). Step 3: Map using Graphical message mapping to the target structure. Step 4: Convert to the target syntax (for example X12 through the EDI splitter and converter flow steps if used). Step 5: Send through the receiver adapter. Step 6: Write a log entry with the business key and message ID.
4. Error handling and retry
Use the JMS queue for retry with exponential backoff, then send an alert email and store the payload for manual reprocessing.
Define an exception subprocess to catch errors, set an error text property and raise the alert. Do not swallow exceptions, so the monitor shows a failed message.
5. Monitoring and support
| Topic | Decision |
|---|---|
| Business key for search | Order number in the message ID header or an MPL custom header |
| Alerting | Email to the support group on final failure |
| Payload logging | Off in production unless for debugging, mind personal and export-controlled data |
| Reprocessing | From the JMS queue or by resend from the source system |
6. Transport and environments
Use externalized parameters for hosts, paths and credentials aliases. Transport through the agreed route (for example Cloud Transport Management) and keep one tenant per stage where possible.
Approvals
A starting point for an iFlow design document. Adjust step names to the adapters and flow steps in your tenant, and add trading partner details from the implementation guideline. Check licensing and feature availability in your Integration Suite edition.
Want your interface documentation searchable?
Ask how a private on-prem assistant could answer questions over your iFlow documents and integration logs.
Optional. The tool and every export work without this. No spam.
How to use the template
Fill the fields at the top for the interface you are building, then review the generated sections and adjust the steps to match your iFlow. Export to PDF or Word and attach it to the transport request or your wiki. Update it whenever you change an adapter, mapping or error path, so it stays accurate.
What a good iFlow design covers
The design should state who sends and receives, with which adapter and authentication, how the mapping is built, and what happens when a step fails. It should also name the business key used to find a message in the monitor, since that is the first thing support asks for.
- Sender and receiver systems with adapter type and protocol
- Mapping approach and where the mapping documents are kept
- Exception subprocess and retry design
- Monitoring key, alerting and reprocessing steps
- Security material aliases and parameter externalization
Error handling patterns
For asynchronous flows, use a JMS or data store queue so that a temporary receiver outage does not lose messages. For synchronous flows, return a clear error to the caller. Always decide up front who is alerted and who owns reprocessing, because unowned failures pile up quietly.
Common mistakes
Hard coded hosts and passwords in the iFlow, payload tracing left on in production, no business key in the message processing log, and no retry design are the usual causes of painful support. Documenting these choices up front prevents them.
Frequently Asked Questions
What should an iFlow design document contain?
At minimum: purpose, sender and receiver with adapters, authentication, mapping approach, error handling, monitoring key and transport plan. This lets a new engineer understand and support the interface without reading every flow step.
How do I handle retries in SAP Cloud Integration?
Use a JMS queue or data store between the sender and receiver steps so failed deliveries can be retried with a backoff. Add an exception subprocess that raises an alert after the final attempt, and keep the payload for manual reprocessing.
Should I log payloads in production?
Generally not. Payloads can contain personal data or export-controlled technical data. Use payload tracing only for short debugging windows, and log a business key and message ID instead. Check your own data protection policy.
How are secrets managed in an iFlow?
Store credentials, certificates and keys in the tenant security material and reference them by alias in the channel. Never type a password in a script or property, and use externalized parameters for hosts and paths per environment.
If you run many CPI interfaces, Netray can add a private assistant that searches your iFlow documentation and message logs and explains failures in plain language.
Related Tools
IDoc to EDI X12 Mapping Worksheet (INVOIC to 810)
An editable mapping sheet that pairs IDoc segments and fields with X12 segments and elements, with rules and open questions, exported as an Excel spec.
SAPSAP IDoc Message Types Reference (ORDERS, DESADV, INVOIC, MATMAS, DEBMAS)
Searchable list of common SAP IDoc message types with the basic IDoc type, business meaning and the X12 or EDIFACT message they usually map to.
SAPSAP OData Service URL Builder
Generate a correct SAP Gateway OData V2 request URL with query options, test it in a browser or REST client, then reuse it in your code.
SAPSAP API Business Hub Request Generator
Build a ready-to-run cURL or HTTP request for an SAP API Business Hub sandbox or your own S/4HANA Cloud tenant, with the right headers and query options.