ml-connector
Sage 100TrueCommerce

Sage 100 and TrueCommerce integration

Sage 100 runs finance, procurement, and inventory on your premises. TrueCommerce connects your business to trading partners via EDI, SFTP, and managed APIs. Connecting the two automates the movement of purchase orders from Sage 100 into TrueCommerce, flows invoices and shipping notices back into your ERP, and keeps your supply chain data aligned across both systems. New POs created in Sage 100 are formatted as EDI X12 850 documents and delivered to your trading partners through TrueCommerce without manual export. Incoming advance ship notices and invoices from partners are read by ml-connector and posted into Sage 100 AP and inventory.

How Sage 100 works

Sage 100 is an on-premises ERP system exposing purchase orders, AP vendors, AP invoices, GL accounts, items, and sales orders through SOAP Web Services (eBusiness Web Services, customer-hosted) or through the local BOI COM layer wrapped by a customer-managed Windows agent. Authentication uses username and password per SOAP call with no OAuth or token refresh; each call requires a company code identifier. Sage 100 publishes no webhooks, so data is retrieved by polling using DateLastUpdated or DateCreated fields. The SOAP surface covers only AR sales orders and customers; full AP, GL, PO, and vendor access requires the BOI COM layer through the local agent. Concurrent write operations face COM record-locking limits, so retries with backoff are necessary for high-frequency operations.

How TrueCommerce works

TrueCommerce is a cloud-based EDI and supply chain platform that acts as a managed Value-Added Network (VAN). It connects businesses with trading partners via EDI (X12 and EDIFACT), SFTP/FTP file exchange, and managed REST API connectivity. Authentication options include SFTP username/password, API key provisioned per customer, or a local Windows Integration Service authenticating via TrueCommerce portal credentials. TrueCommerce has no public developer API or self-serve token generation; all credentials are provisioned during account setup. Data is primarily polled on a scheduled basis, typically hourly from SFTP or configured through the managed Exchange API. Document format is flat file or raw EDI, and each trading partner integration path is customer-specific, confirmed during onboarding.

What moves between them

Purchase orders and AP invoices flow from Sage 100 into TrueCommerce. ml-connector polls Sage 100 for new POs and invoices, formats them as EDI X12 documents (850 for orders, 810 for invoices), and delivers them to TrueCommerce via SFTP or the Exchange API for transmission to trading partners. Incoming EDI documents from trading partners including advance ship notices (856), purchase order acknowledgments (855), and invoices (810) are polled from TrueCommerce SFTP and transformed into Sage 100 format, then posted to AP and inventory. The cadence is typically hourly for standard trading partner documents and daily for summary reconciliation. EDI functional acknowledgments (997) are generated by TrueCommerce and used for deduplication via ISA control numbers.

How ml-connector handles it

ml-connector stores Sage 100 SOAP credentials and TrueCommerce SFTP or API credentials encrypted, and polls Sage 100 using its DateLastUpdated field on a schedule you define (typically every 15 minutes for purchase orders). For each new PO, ml-connector maps Sage vendor codes, item numbers, and GL dimensions into the EDI X12 850 format, then uploads the resulting file to TrueCommerce SFTP with customer-specific naming conventions confirmed during setup. On the inbound side, ml-connector polls TrueCommerce SFTP hourly (or via Exchange API if configured), parses incoming EDI documents (856, 855, 810), and transforms them back into Sage 100 format. AP invoices are matched against Sage POs using purchase order numbers and vendor codes; receipt quantities are matched against line items and posted to inventory. The Sage 100 local agent SOAP layer enforces concurrent write limits via COM record-locking, so ml-connector backs off and retries on lock conflicts. TrueCommerce EDI functional acknowledgments (997) carry ISA control numbers used for deduplication, preventing duplicate posting. All records carry a full audit trail and can be replayed if a downstream transformation or post fails.

A real-world example

A mid-sized distributor runs Sage 100 for procurement, AP, and inventory across three warehouses. They ship to manufacturing customers and order from multiple suppliers via TrueCommerce EDI. Before the integration, the procurement team exported POs from Sage 100 to a spreadsheet, manually created EDI X12 850 documents, and uploaded them to TrueCommerce, then manually received incoming advance ship notices and invoices back into Sage inventory and AP. With Sage 100 and TrueCommerce connected, each new PO created in Sage is automatically transformed into EDI and sent to the supplier through TrueCommerce within minutes. Incoming shipping notices update Sage inventory in real time, and supplier invoices are matched and posted to AP without manual intervention, reducing order-to-cash cycle time and eliminating re-keying errors.

What you can do

  • Transform Sage 100 purchase orders into EDI X12 850 format and deliver them to trading partners through TrueCommerce SFTP or Exchange API.
  • Receive advance ship notices (856), purchase order acknowledgments (855), and invoices (810) from TrueCommerce and post them into Sage 100 AP and inventory.
  • Match incoming EDI invoices to Sage 100 purchase orders using PO numbers and vendor codes, and validate GL dimensions and item numbers before posting.
  • Authenticate Sage 100 via its local SOAP Web Services with username/password, and TrueCommerce via SFTP or API credentials provisioned during onboarding.
  • Poll Sage 100 and TrueCommerce on a schedule you control, with backoff retry on SOAP locks and EDI deduplication via ISA control numbers.

Questions

Which direction does data move between Sage 100 and TrueCommerce?
The main flow is Sage 100 into TrueCommerce: purchase orders and AP invoices are transformed into EDI X12 format and sent to trading partners. Inbound EDI documents from trading partners (advance ship notices, acknowledgments, invoices) are received from TrueCommerce and posted into Sage 100 AP and inventory. The integration is bidirectional but asymmetric: outbound orders and invoices are formatted as EDI, while inbound documents are parsed from EDI back into Sage 100 format.
Does Sage 100 require a local agent to connect to ml-connector?
Yes. Sage 100 has no cloud API. Full access to purchase orders, AP, GL, and inventory requires the BOI COM layer, which runs as a Windows service on a customer-hosted machine on the same network as the Sage 100 server. ml-connector communicates with this local agent, which in turn calls Sage 100 via COM. The agent handles SOAP call retries and COM record-locking automatically.
How does the integration handle TrueCommerce's customer-specific SFTP paths and EDI format requirements?
TrueCommerce provisions SFTP credentials and specifies file naming conventions and upload paths during account setup. ml-connector stores these customer-specific paths encrypted and uses them to upload outbound EDI files and poll for inbound documents. Each trading partner may have different EDI versions (X12 4010 vs 5010) and document types; ml-connector maps Sage purchase orders and invoices to the format required by each partner, confirmed during setup. If using the Exchange API instead of SFTP, TrueCommerce configures the integration paths on their side, and ml-connector uses provisioned API credentials to poll and post.

Related integrations

Connect Sage 100 and TrueCommerce

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

Get started