Exact Online and SPS Commerce integration
Exact Online runs your accounting and order management. SPS Commerce is your link to retail trading partners like Walmart and Amazon who send orders in EDI format. Connecting the two keeps your order records in sync and eliminates manual EDI translation. Inbound purchase orders from SPS Commerce become sales orders in Exact Online, and your invoices flow back out to trading partners in the format they require without manual re-keying.
What moves between them
Inbound flows from SPS Commerce into Exact Online. ml-connector polls SPS Commerce for purchase orders at regular intervals (typically matching the trading partner order cadence), converts each PO from RSX envelope format into Exact Online sales order structure, and creates the sales order in Exact Online with references to the inbound trading partner and SPS PO number for audit and match-back. Outbound flows from Exact Online to SPS Commerce. When sales invoices are created or updated in Exact Online, ml-connector wraps each invoice in the RSX 7.7.7 envelope format, routes it to the correct trading partner ID at SPS Commerce, and posts it as an EDI 810 invoice.
How ml-connector handles it
ml-connector stores both credential sets encrypted and uses OAuth 2.0 on both sides, refreshing Exact Online tokens every 9 minutes and SPS Commerce tokens before they expire. The Exact Online division ID is fetched once per customer and cached. On inbound, ml-connector polls the SPS fulfillment API, decodes the RSX envelope from each purchase order, maps the trading partner and supplier name to the correct Exact Online account (customer), and uses the line item details to populate sales order line structure with Exact Online item codes and GL account references. Cost centers are mapped if present in the PO. On outbound, ml-connector listens for sales invoice creation in Exact Online (via webhook if available, or polling as fallback), wraps the invoice data in the RSX 7.7.7 envelope, adds the destination trading partner ID, and posts to SPS Commerce. Every record carries a full audit trail and can be replayed if the SPS post fails. Both sides retry with exponential backoff on transient errors and 429 rate limits.
A real-world example
A mid-sized consumer goods manufacturer runs Exact Online for order entry, invoicing, and GL accounting across multiple divisions in Europe. The company supplies three major retail chains (Walmart, Target, Carrefour) who send orders through SPS Commerce in EDI X12 format. Before the integration, the supply chain team exported orders from SPS weekly, manually re-entered line items into Exact Online sales orders, then exported invoices from Exact Online and uploaded them back to SPS for transformation into X12 for each retailer. With Exact Online and SPS Commerce connected, inbound orders land as sales orders within minutes of arrival, eliminating re-entry errors and delays. Invoices post to SPS automatically after billing, reducing the monthly close cycle by two days and freeing the team to focus on exception handling rather than manual translation.
What you can do
- Poll inbound purchase orders from SPS Commerce and create sales orders in Exact Online with automatic supplier account mapping.
- Post sales invoices from Exact Online to SPS Commerce in RSX 7.7.7 format and route them to the correct trading partner.
- Map trading partner IDs and supplier names to Exact Online accounts so orders and invoices land on the correct customer record.
- Manage OAuth 2.0 refresh tokens for both Exact Online (10-minute access, 30-day refresh) and SPS Commerce (with exponential backoff on 429 rate limits).
- Maintain a full audit trail of every PO inbound and invoice outbound, with replay capability if a downstream call fails.
Questions
- Which direction does data move between Exact Online and SPS Commerce?
- Purchase orders flow inbound from SPS Commerce into Exact Online as sales orders. Sales invoices flow outbound from Exact Online to SPS Commerce in EDI 810 format wrapped in RSX envelope. Inbound ship notices and advance shipping notices can also be polled from SPS for visibility into fulfillment status if needed.
- How does ml-connector handle the RSX 7.7.7 envelope format required by SPS Commerce?
- ml-connector automatically wraps outbound invoices in the RSX 7.7.7 JSON envelope format that SPS Commerce expects, including the required trading partner ID and document type identifier. Inbound purchase orders from SPS arrive already wrapped, so ml-connector unwraps them, extracts the order details, and converts to Exact Online sales order structure.
- What happens if the Exact Online refresh token expires or SPS Commerce returns a 429 rate limit?
- ml-connector tracks Exact Online refresh token expiry and refreshes before the 30-day window closes to prevent re-authorization. For SPS Commerce rate limits, ml-connector backs off with exponential jitter and retries, and every inbound order or outbound invoice carries a unique identifier so retries do not duplicate records.
Related integrations
More Exact Online integrations
Other systems that connect to SPS Commerce
Connect Exact Online and SPS Commerce
Free to use. Add your credentials, ping your real systems, and see if we fit.
Get started