ml-connector
MYOBIBM Sterling

MYOB and IBM Sterling integration

MYOB runs your accounting and inventory. IBM Sterling runs your B2B transactions with suppliers via EDI and file protocols. Connecting the two keeps your purchase orders, invoices, and ASNs synchronized without manual re-entry. Purchase orders created in MYOB can flow to suppliers through IBM Sterling, and vendor invoices arriving via EDI are posted back into MYOB accounts payable. ml-connector handles the different credential models (MYOB's OAuth2 plus company file auth, IBM Sterling's instance-local authentication) and the polling schedules that both systems require.

How MYOB works

MYOB Business API exposes suppliers, purchase orders, bills (supplier invoices), sale invoices, GL accounts, and inventory through REST endpoints with OData v3 query parameters. Authentication requires three headers: an OAuth2 Authorization Code bearer token (20-minute expiry, 1-week refresh token), an API Key, and base64-encoded company file credentials (username and password). The API enforces an 8 requests/second rate limit and a daily cap of 1,000,000 requests per API key. Poll using OData $filter on the LastModified timestamp to detect changes since the last sync, and every PATCH or PUT requires a RowVersion field to prevent conflicts. MYOB does not publish webhooks, so all data discovery is pull-based.

How IBM Sterling works

IBM Sterling B2B Integrator is an on-premises or hybrid-cloud platform deployed on a customer-managed server (not SaaS). It runs REST APIs via an embedded WebSphere Liberty Profile server and manages trading partners, mailbox messages, workflows, and digital certificates. Every API call authenticates with HTTP Basic (username and password) or OAuth2 Client Credentials against the customer's local token endpoint. Finance documents such as POs and invoices flow as EDI payloads inside mailbox messages, extracted via dedicated extraction endpoints rather than exposed as standalone REST resources. Polling is the only supported discovery method; IBM Sterling does not publish outbound webhooks. Network access to the customer's B2Bi instance is required (VPN or DMZ), and the authenticating user account must have non-admin rights.

What moves between them

Purchase orders and supplier invoices flow bidirectionally. MYOB purchase orders trigger exports through IBM Sterling to connected EDI trading partners on a schedule you control. Vendor invoices arriving in IBM Sterling mailboxes (via EDI 810 invoice messages or AS2 file transfers) are polled by ml-connector, mapped to MYOB suppliers and GL accounts, and posted into MYOB's bill register. Supplier and payment records are aligned in both directions so IBM Sterling trading partner definitions match MYOB supplier contacts.

How ml-connector handles it

ml-connector stores the MYOB OAuth2 credentials plus company file username and password encrypted, and on each call presents all three required headers. The MYOB access token is refreshed when a 401 is returned. For IBM Sterling, ml-connector connects to the customer's local B2Bi instance using the provided host, port, and credentials (HTTP Basic or OAuth2), and polls the mailbox endpoint every 1 to 5 minutes to detect new EDI documents. When a new purchase order or invoice arrives, ml-connector extracts the EDI payload, parses the trading partner number, and looks up the matching MYOB supplier using a mapping table. GL postings are allocated to cost centers and accounts specified in the flow configuration. Because both MYOB and IBM Sterling are polling-only, ml-connector coordinates the two schedules so POs and invoices do not race. MYOB's RowVersion concurrency field is managed to prevent 409 conflicts. Every record carries a full audit trail and can be replayed if a downstream call fails.

A real-world example

A mid-sized distribution company in Australia runs MYOB for accounting and inventory, and uses IBM Sterling B2B Integrator to manage EDI transactions with 50+ suppliers in the UK and Europe. Before the integration, the procurement team exported POs from MYOB, manually re-keyed them into IBM Sterling to format for EDI transmission, and when invoices arrived, they received EDI-formatted files, manually parsed them, and re-entered the invoice totals into MYOB accounts payable. With MYOB and IBM Sterling connected, new purchase orders are automatically exported from MYOB through IBM Sterling to trading partners, and incoming vendor invoices are polled from IBM Sterling mailboxes and posted directly into MYOB. The manual re-keying and error-prone parsing is eliminated, invoice-to-PO matching is faster, and the monthly AP closing process is compressed.

What you can do

  • Export MYOB purchase orders to suppliers through IBM Sterling EDI and file-based protocols without manual re-entry.
  • Post EDI supplier invoices (810 messages) arriving in IBM Sterling into MYOB accounts payable, mapped to the correct vendor and GL account.
  • Sync supplier contact records between MYOB and IBM Sterling trading partners so both systems agree on vendor master data.
  • Authenticate MYOB with OAuth2 and company file credentials, and IBM Sterling with instance-local HTTP Basic or OAuth2.
  • Poll both systems on schedules independent of webhooks, with retries, conflict avoidance, and a full audit trail on every document.

Questions

Does the integration handle the mismatch between MYOB cloud and IBM Sterling on-premises?
Yes. ml-connector stores the MYOB cloud base URL and company file ID per customer, and for IBM Sterling it stores the customer's local B2Bi host and port. Both are configured at flow setup so each customer can map their own instance URLs. Network access to the IBM Sterling server (VPN or DMZ) must be in place for ml-connector to reach it.
How are EDI documents (POs and invoices) handled if IBM Sterling does not expose them as REST resources?
IBM Sterling stores EDI documents as payloads inside mailbox messages. ml-connector polls the mailbox endpoint, retrieves new message IDs, and then calls the extraction endpoint to read the EDI payload. The EDI document is parsed (e.g., ANSI X12 850 for POs, 810 for invoices), and the line items are mapped to MYOB suppliers and GL accounts before posting.
What happens if a purchase order or invoice fails to post in MYOB after arriving in IBM Sterling?
Every record is written to ml-connector's audit log with the mailbox message ID, EDI document ID, parsing result, and the MYOB API response. If a PATCH or POST fails, the job is retried with exponential backoff. If the failure is permanent (e.g., supplier not found, invalid GL account), ml-connector surfaces the error in the audit trail so the operator can fix the mapping or supplier record and replay the job.

Related integrations

Connect MYOB and IBM Sterling

Free to use. Add your credentials, ping your real systems, and see if we fit.

Get started