ml-connector
Microsoft Dynamics 365 F&OAmazon Seller Central

Microsoft Dynamics 365 F&O and Amazon Seller Central integration

Microsoft Dynamics 365 F&O runs financials, procurement, and supply chain. Amazon Seller Central runs your marketplace listings, orders, and payments. Connecting the two brings marketplace sales and Amazon settlements into the ERP without re-keying. Amazon orders and the fees, refunds, and disbursements that follow each settlement post into D365 as customer records and general ledger entries, and released products in D365 can feed Amazon listings. ml-connector handles the very different APIs on each side and moves the data on a schedule you control.

How Microsoft Dynamics 365 F&O works

Microsoft Dynamics 365 F&O exposes its data through the OData v4 service at a tenant-specific host such as contoso.operations.dynamics.com/data/, covering VendorsV2, CustomersV3, ProductsV2 and ReleasedProductsV2, VendorInvoiceHeaders and lines, MainAccounts, and GeneralJournalAccountEntries. Authentication is OAuth2 client credentials through Microsoft Entra ID, with the scope set to the environment host plus /.default. Posted general ledger entries are read-only and must be created through journal entities, and financial dimensions are written as a formatted display string that the customer configures first. D365 can push Business Events such as a posted invoice to an HTTPS or Azure endpoint, but the payload is a lightweight stub identified by a ControlNumber, so finance detail is read back over OData.

How Amazon Seller Central works

Amazon Seller Central exposes orders, financial events, settlement reports, catalog and listing data, and FBA inventory through the Selling Partner API, a REST service with separate base URLs for the North America, Europe, and Far East regions. Authentication is OAuth2 through Login with Amazon using a long-lived seller refresh token that is exchanged for one-hour access tokens, passed in the x-amz-access-token header, and most calls require a marketplace ID. Settlement-level finances arrive only after Amazon releases a disbursement, so the Finances API gives event-level data while the Reports API settlement report is the authoritative payment record. Push notifications exist but are delivered through AWS EventBridge or SQS rather than plain HTTP webhooks, and there is no notification type for settlement events, so financial data is polled.

What moves between them

The main flow runs from Amazon Seller Central into Microsoft Dynamics 365 F&O. ml-connector reads orders and settlement-level financial events from the SP-API and posts them into D365 as customer invoices and general ledger entries, with captured sales, Amazon fees, refunds, and adjustments mapped to the matching main accounts and financial dimensions. Inventory summaries can be read from Amazon for stock visibility in the ERP. In the other direction, released product details from D365 can be published to Amazon listings through the Feeds and Listings APIs. Settlement reports are read-only on the Amazon side, so ml-connector never writes financial postings back to Amazon.

How ml-connector handles it

ml-connector stores both credential sets encrypted and bridges two unrelated OAuth2 systems: it exchanges the Amazon Login with Amazon refresh token for a short-lived access token on the correct regional endpoint, and separately requests a Microsoft Entra ID client-credentials token scoped to the customer environment host, refreshing each before it expires. Because Amazon offers no settlement webhook and D365 cloud reads are pull-based, it polls the Orders, Finances, and Reports APIs on a schedule rather than waiting for a push, and treats the settlement report as the authoritative disbursement record once Amazon closes it. Amazon SKUs and ASINs are mapped to D365 product numbers, and Amazon fee and refund types are mapped to D365 main accounts and dimension display values, so every posted line references an account that already exists. The connector passes the marketplace ID on each Amazon call, requests a Restricted Data Token before reading buyer PII, and respects D365 entity rules by creating an invoice header before its lines and never writing posted ledger entries directly. Both APIs throttle with HTTP 429, so ml-connector backs off and retries, deduplicates Amazon settlements by report ID and D365 records by natural key, and keeps a full audit trail with replay on any failed call.

A real-world example

A consumer goods brand of roughly 150 staff sells on Amazon across the US and Canada and runs Microsoft Dynamics 365 F&O as its ERP. Before the integration, the finance team downloaded Amazon settlement reports every two weeks and manually keyed the sales, FBA fees, referral fees, and refunds into the general ledger, then tried to tie each disbursement back to the bank deposit during month-end close. With Microsoft Dynamics 365 F&O and Amazon Seller Central connected, each Amazon settlement posts into D365 automatically as customer invoices and ledger entries split across the right fee accounts, and orders flow in for revenue recognition. Month-end starts with marketplace revenue already reconciled to the disbursement, and the manual re-keying is gone.

What you can do

  • Post Amazon orders into Microsoft Dynamics 365 F&O as customer invoices for revenue recognition.
  • Read settlement-level financial events and post sales, fees, refunds, and adjustments into the D365 general ledger.
  • Map Amazon SKUs and fee types to D365 product numbers, main accounts, and financial dimensions so postings stay valid.
  • Publish released D365 product details to Amazon listings through the Feeds and Listings APIs.
  • Bridge Login with Amazon refresh tokens and Microsoft Entra ID client credentials, with retries and a full audit trail on every record.

Questions

Which direction does data move between Microsoft Dynamics 365 F&O and Amazon Seller Central?
The main flow is Amazon Seller Central into Microsoft Dynamics 365 F&O. Orders and settlement-level financial events move from Amazon into D365 as customer invoices and general ledger entries, and inventory can be read for stock visibility. In the other direction, released product details from D365 can be published to Amazon listings, but Amazon settlement reports are read-only so no financial postings are written back.
How does the integration handle Amazon settlements that only appear after a disbursement?
Amazon does not provide a notification for settlement or financial events, so ml-connector polls the Finances and Reports APIs on a schedule. It treats the settlement report as the authoritative disbursement record once Amazon closes it, and deduplicates by report ID so the same settlement is never posted to D365 twice. Event-level finances can also be read between settlements for earlier visibility.
How are the two different login systems connected?
Amazon uses Login with Amazon OAuth2 with a seller refresh token, while D365 uses Microsoft Entra ID client credentials scoped to the tenant environment host. ml-connector stores both credential sets encrypted, exchanges the Amazon refresh token for a one-hour access token on the correct regional endpoint, and separately obtains the Entra ID token, refreshing each before it expires. Reads of buyer PII first request a Restricted Data Token from Amazon.

Related integrations

Connect Microsoft Dynamics 365 F&O and Amazon Seller Central

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

Get started