ml-connector
Sage IntacctTrueCommerce

Sage Intacct and TrueCommerce integration

Sage Intacct runs your accounting and procurement. TrueCommerce connects you to your trading partners via EDI, SFTP, and API. Keeping these two systems in sync ensures purchase orders and invoices flow to trading partners without manual re-entry, and remittance advice coming back from TrueCommerce posts into Intacct's GL without delay. ml-connector bridges the XML gateway on the Intacct side and the SFTP or managed API on the TrueCommerce side, handling the format translation and transport mechanics so your finance and supply chain teams stay aligned.

How Sage Intacct works

Sage Intacct is a cloud-based ERP and accounting system accessible via a single XML gateway endpoint over HTTPS POST at https://api.intacct.com/ia/xml/xmlgw.phtml. Authentication is session-based: an initial getAPISession call exchanges a senderId, senderPassword, companyId, userId, and userPassword for a sessionid, which is cached for 50 minutes before requiring a refresh. Key entities exposed include vendors, AP bills, GL accounts, dimensions, and AP payments. Intacct does not support webhooks, so all data flows are driven by polling on your schedule. HTTP 200 responses may contain application-level errors nested inside the XML body, so responses must be parsed for errormessage tags and status. XML control characters except tab, newline, and carriage return must be stripped before encoding.

How TrueCommerce works

TrueCommerce is a cloud-based EDI and supply chain integration platform that acts as a managed Value-Added Network (VAN) rather than a standalone ERP. It exposes data through SFTP (primary endpoint at integrationftp.truecommerce.com port 22), a managed REST Exchange API with per-customer configuration, or a local Windows Integration Service via JSON. Credentials are provisioned by TrueCommerce per customer and include SFTP username and password, Merchant ID and API Key for managed intermediaries, or Exchange API bearer tokens. Key entities are EDI documents: purchase orders (X12 850), invoices (810), remittance advice (820), advance ship notices (856), and functional acknowledgments (997). TrueCommerce does not expose a public webhook API, so polling is the standard pattern, typically hourly or daily depending on your load. EDI functional acknowledgments handle deduplication via ISA control numbers rather than application-level headers. File paths and naming conventions are customer-specific and confirmed during onboarding.

What moves between them

Purchase order and invoice data flows from Sage Intacct into TrueCommerce. Intacct vendors and GL accounts are translated into EDI format and delivered to TrueCommerce via SFTP or the managed Exchange API on a schedule you control, typically daily or triggered by purchase order creation. Remittance advice and acknowledgments received through TrueCommerce are polled back into Intacct and posted to the GL, matched to the original vendor and GL account so the payables ledger reconciles with what trading partners have received and confirmed.

How ml-connector handles it

ml-connector manages two distinct authentication flows. On the Intacct side, it exchanges the initial partner and user credentials for a sessionid on first call, caches that sessionid, and automatically refreshes it before the 50-minute expiry window, so downstream transactions never encounter a stale session. On the TrueCommerce side, it accepts either SFTP credentials (username and password to integrationftp.truecommerce.com) or Exchange API credentials (bearer token or API key) depending on your account configuration. Purchase orders and invoices are serialized from Intacct's XML format into EDI X12 (850 for orders, 810 for invoices) and written to the SFTP drop folder or posted via Exchange API. Remittance advice (EDI 820) and functional acknowledgments (997) are polled from TrueCommerce and transformed back into Intacct GL transactions, keyed to the vendor and GL account so the match is deterministic. Because TrueCommerce file paths and naming conventions are customer-specific, ml-connector accepts the path and filename pattern per customer during setup. EDI deduplication is handled by ISA control numbers on the TrueCommerce side; Intacct's lack of a native idempotency header means the uniqueid flag in Intacct's control block deduplicates retried operations server-side. Every record carries a full audit trail and can be replayed if a downstream step fails.

A real-world example

A mid-sized distributor uses Sage Intacct for accounting and procurement and ships orders through a network of trading partners via TrueCommerce EDI connections. Before the integration, the procurement team manually exported purchase orders from Intacct, translated them into EDI 850 format, and uploaded them to the TrueCommerce SFTP folder. When remittance advice arrived from suppliers, the team downloaded it, parsed the EDI, and manually re-entered received quantities and invoices back into Intacct. With Sage Intacct and TrueCommerce connected, each new purchase order automatically translates to EDI 850 and lands in the TrueCommerce folder on schedule, and all remittance advice flows back into Intacct's payables GL, keyed to the vendor account. The manual translation step is gone, suppliers receive orders faster, and month-end close starts with AP reconciled.

What you can do

  • Automatically translate purchase orders from Sage Intacct into EDI X12 850 format and deliver them to TrueCommerce via SFTP or Exchange API.
  • Convert Intacct invoices and vendor records into EDI 810 invoices and trading partner references for delivery through TrueCommerce.
  • Poll remittance advice and functional acknowledgments from TrueCommerce and post them back into Sage Intacct's general ledger, keyed to the original vendor and GL account.
  • Manage Intacct session refresh across the 50-minute expiry window and handle SFTP or managed API transport to TrueCommerce on your schedule.
  • Track every translation and delivery in a full audit trail and replay records if a downstream step fails, without duplicating on TrueCommerce via EDI ISA control numbers.

Questions

Which direction does data move between Sage Intacct and TrueCommerce?
Purchase orders and invoices flow from Sage Intacct into TrueCommerce in EDI format, typically on a daily schedule. Remittance advice and acknowledgments are polled from TrueCommerce and posted back into Intacct's GL, matched to the vendor and GL account. This two-way flow keeps orders moving to trading partners and incoming remittances reconciled with AP.
How does ml-connector handle Sage Intacct's session-based authentication and 50-minute expiry?
ml-connector exchanges the senderId, senderPassword, companyId, userId, and userPassword for a sessionid on the first call, caches it, and automatically refreshes it before expiry. Downstream transactions never encounter a stale session, and refresh happens transparently on the next request.
Does TrueCommerce require SFTP or can the integration use the Exchange API instead?
Both are supported. Your TrueCommerce account is provisioned with either SFTP credentials (username and password to integrationftp.truecommerce.com) or an Exchange API bearer token and Merchant ID. ml-connector accepts either transport at setup and uses whichever matches your account configuration.

Related integrations

Connect Sage Intacct and TrueCommerce

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

Get started