SAP Business One and IBM Sterling integration
SAP Business One handles purchasing and finance for small-to-midsize manufacturers and distributors. IBM Sterling B2B Integrator manages end-to-end EDI translation, validation, and routing of those documents to trading partners. Connecting the two automates the journey from PO creation in SAP to EDI transmission to suppliers, and from supplier invoices back into SAP accounts payable without manual re-keying or format translation. ml-connector handles the session management on SAP's side, the EDI encoding rules on Sterling's side, and the back-and-forth mapping between the two document models.
What moves between them
Purchase orders and invoices flow from SAP Business One into IBM Sterling. After a new PO is created in SAP, ml-connector polls for it, extracts the order lines, bill-to and ship-to business partner data, and sends it to Sterling for EDI translation. Sterling applies the customer's X12 850 (PO) or EDIFACT ORDERS rules, encodes the document, and routes it to the supplier trading partner via SFTP, AS2, or file drop based on the routing configuration. Supplier invoices that arrive via EDI are extracted from Sterling's mailbox, decoded back to JSON, and posted into SAP Business One's IncomingPayments or PurchaseInvoices endpoint to match the original PO. Reference data such as business partners and items is aligned in both directions so EDI partner identifiers map to the correct SAP business partner code.
How ml-connector handles it
ml-connector reuses the SAP Business One session token to avoid cold-start delays and polls purchase orders and invoices on a schedule you set (typically every 15-60 minutes depending on transaction volume). For each SAP document, it constructs a trading partner lookup using the bill-to business partner code to find the matching EDI partner in Sterling. It then uses Sterling's REST API to submit the document for translation, which applies the customer's X12 or EDIFACT rules and routes it based on the partner's configured mailbox and schedule. On the return path, ml-connector polls Sterling's mailbox messages for new inbound documents, extracts the EDI payload, reverses the translation, and posts the result into SAP as an incoming payment or PO receipt. Because both systems are on-premise, ml-connector must be network-accessible to both the SAP Service Layer port and the Sterling B2Bi instance. Sterling's API requires a non-admin user account, so a dedicated connector user must be created in Sterling's directory. SAP's OData pagination defaults to 20 records per request, so large batches are paginated with $skip. Retries on both sides account for temporary service unavailability, and every transaction is logged to the audit trail for replay if a downstream posting fails.
A real-world example
A mid-sized electronics distributor runs SAP Business One for inventory, purchasing, and accounts payable across three regional warehouses. They work with 40+ suppliers, each expecting either X12 EDI or EDIFACT ORDERS documents for their purchase orders. Before the integration, the procurement team manually entered SAP purchase orders into an external EDI translator, reviewed the output, and batch-transmitted them via SFTP on a daily schedule. Invoices came back as EDI ASNs and invoices from suppliers, which a data entry clerk decoded and re-entered into SAP. With SAP Business One and IBM Sterling connected, each PO flows automatically to Sterling, gets translated and routed to the supplier, and inbound supplier invoices reverse-translate back into SAP as matching receipts and invoices, reducing manual re-keying and cycle time from days to hours.
What you can do
- Translate SAP Business One purchase orders into X12 850 or EDIFACT ORDERS format and route them to EDI-enabled suppliers via IBM Sterling.
- Map SAP business partner codes to Sterling trading partner identifiers so POs reach the correct supplier.
- Extract inbound supplier invoices and advanced shipping notices from Sterling's mailbox and post them back into SAP as incoming payments and purchase receipts.
- Reuse SAP session tokens to avoid authentication overhead, and poll on a schedule that fits your procurement cycle.
- Maintain a complete audit trail of every translation, routing, and posting step so failed transactions can be replayed.
Questions
- How do purchase orders flow from SAP Business One to suppliers via IBM Sterling?
- ml-connector polls SAP Business One for new or updated purchase orders, extracts the order lines and business partner information, and submits them to Sterling's REST API for EDI translation. Sterling applies your configured X12 850 or EDIFACT rules, validates the output, and routes the document to the supplier's mailbox or transmission schedule based on the trading partner configuration. Transmission via SFTP, FTP, AS2, or file drop is handled by Sterling's own scheduling and transport layer.
- What happens when a supplier sends back an invoice or ASN via EDI?
- ml-connector polls Sterling's mailbox for new inbound messages, extracts the EDI payload using Sterling's REST extraction endpoint, reverses the translation back to JSON, and posts it into SAP Business One as an IncomingPayment or receipt against the matching PO. The mapping from supplier code (in the EDI document) back to SAP business partner is handled via the trading partner lookup table configured in Sterling.
- Does ml-connector work with on-premise SAP and Sterling instances?
- Yes. Both SAP Business One and IBM Sterling B2B Integrator are on-premise or customer-managed systems with no shared public endpoint, so each customer provides their own Service Layer URL and Sterling instance host. ml-connector must have network access to both systems; this typically requires VPN or DMZ exposure if the instances are not on the same network. A non-admin user account must be created in Sterling for API authentication.
Related integrations
More SAP Business One integrations
Other systems that connect to IBM Sterling
Connect SAP Business One and IBM Sterling
Free to use. Add your credentials, ping your real systems, and see if we fit.
Get started