ml-connector
Microsoft Dynamics NAVAmazon Seller Central

Microsoft Dynamics NAV and Amazon Seller Central integration

Microsoft Dynamics NAV runs procurement and inventory for small and mid-size businesses. Amazon Seller Central is where vendors submit purchase orders, track shipments, and receive payment. Connecting the two keeps your purchase records aligned with Amazon vendor requests and surfaces invoice data back into NAV for accounts payable reconciliation. ml-connector handles the different authentication models, regional endpoint routing, and the asynchronous nature of vendor invoicing on the Amazon side, so your supply chain stays in sync without manual re-entry.

How Microsoft Dynamics NAV works

Microsoft Dynamics NAV (Business Central online or on-premises) exposes vendors, purchase orders, sales orders, items, inventory, general ledger accounts, and employees through OData v4 REST APIs and legacy SOAP web services. Authentication uses Microsoft Entra ID OAuth 2.0 (recommended) or deprecated web service access keys. Base URLs differ between online (api.businesscentral.dynamics.com) and on-premises deployments. NAV supports both webhooks (which expire after 3 days and must be renewed) and polling for real-time or scheduled synchronization. GL accounts are read-only via the standard API, and posted entries cannot be modified.

How Amazon Seller Central works

Amazon Seller Central, accessed via the Selling Partner API (SP-API), exposes vendor purchase orders, vendor invoices, orders, inventory, and financial events through REST JSON endpoints. Regional endpoints (North America, Europe, Far East) are selected at integration time. Authentication uses OAuth 2.0 via Login with Amazon (LWA) with a refresh_token that persists for multiple calls and access tokens that expire hourly. Amazon does not offer direct HTTP webhooks; asynchronous operations like invoice submission results must be polled. Reports and financial settlement data are only available via polling, not via push notifications.

What moves between them

Purchase orders created in NAV flow to Amazon Seller Central as vendor purchase order submissions, while vendor invoices and shipment notifications from Amazon flow back into NAV purchase order records for matching and GL posting. Order status changes and invoice line details sync on a daily polling schedule. Inventory levels can flow in both directions to keep NAV stock counts aligned with Amazon vendor fulfillment data, depending on your configuration. GL posting remains in NAV; Amazon data feeds the input only.

How ml-connector handles it

ml-connector stores NAV and Amazon credentials encrypted and manages OAuth 2.0 token refresh for both systems independently, since NAV uses Microsoft Entra ID and Amazon uses Login with Amazon. It selects the correct regional SP-API endpoint based on your Amazon seller region and routes all calls appropriately. Because Amazon invoice and settlement data is not available via push notifications, ml-connector polls NAV and Amazon on a daily cadence aligned to your procurement cycle, matches incoming Amazon vendor invoices to NAV purchase orders by order number and vendor ID, and surfaces mismatches for manual review. NAV's 3-day webhook expiry is handled by automatic renewal before expiry or by falling back to polling. Rate limits on both sides are handled with exponential backoff and retry. Every matched record carries an audit trail including the original API response, enabling replay if a downstream GL posting fails.

A real-world example

A mid-sized distributor uses Microsoft Dynamics NAV for procurement and inventory and sells on Amazon as a vendor partner. Before the integration, procurement staff issued purchase orders in NAV, submitted them manually to Amazon Seller Central, waited for vendor invoices from Amazon, manually matched them to the original orders, and entered them into NAV for payment. With NAV and Amazon Seller Central connected, each purchase order created in NAV automatically appears in Amazon Seller Central, incoming vendor invoices are matched to the corresponding order and surface in NAV immediately, and the matching report is ready on day one of close instead of day five.

What you can do

  • Push purchase orders from NAV to Amazon Seller Central vendor purchase order submissions with order number, quantity, and item identification.
  • Pull vendor invoices and shipment notifications from Amazon back into NAV purchase order records, matched by order number and vendor ID.
  • Sync inventory availability and fulfillment status from Amazon into NAV to keep stock counts current.
  • Authenticate NAV via Microsoft Entra ID OAuth 2.0 and Amazon via Login with Amazon OAuth 2.0, managing token expiry and renewal for both on a synchronized schedule.
  • Poll both systems daily and maintain a complete audit trail on every order submitted and every invoice matched.

Questions

How does ml-connector handle the difference between NAV's Entra ID authentication and Amazon's Login with Amazon?
ml-connector maintains separate credential stores and token refresh loops for each system. Microsoft Entra ID tokens are requested from Microsoft's OAuth endpoint, while Amazon Login with Amazon refresh tokens are exchanged at Amazon's auth endpoint. Both tokens are refreshed automatically before expiry and stored encrypted in the same database, so a single ml-connector instance can manage the two auth models without manual intervention.
Why must ml-connector poll Amazon instead of using webhooks for invoices?
Amazon Seller Central does not offer direct HTTP webhooks for vendor invoice submissions or financial settlement events. The SP-API provides push notifications via EventBridge or SQS for order changes and inventory availability, but invoices and settlements are asynchronous and only queryable through the Finances API. ml-connector polls the Finances API daily to retrieve vendor invoices and matches them to NAV purchase orders by order number.
What happens when an Amazon vendor invoice does not match a NAV purchase order?
ml-connector flags unmatched invoices in its audit log and surfaces them in a daily reconciliation report for your accounts payable team to review. No GL posting occurs until the mismatch is resolved manually in NAV (for example, if the vendor ID, order number, or amount does not align). Once resolved, ml-connector will match and post the invoice on the next scheduled sync.

Related integrations

Connect Microsoft Dynamics NAV and Amazon Seller Central

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

Get started