ml-connector
QuickBooks OnlineAmazon Seller Central

QuickBooks Online and Amazon Seller Central integration

Amazon Seller Central merchants face a gap between fulfillment and accounting. Orders ship and settle on Amazon, but revenue and deposits land in QuickBooks Online days or weeks later if re-keyed by hand. Connecting Amazon Seller Central to QuickBooks Online closes that gap. Sales orders flow into QuickBooks as customer invoices on your income account, and Amazon's financial settlement reports become deposits matched to the deposits that arrived in your bank, all without re-keying.

How QuickBooks Online works

QuickBooks Online exposes vendors, customers, employees, items, accounts, departments, and transaction records (invoices, bills, payments, journal entries) through the QuickBooks Online Accounting API v3. The REST API authenticates via OAuth 2.0 Authorization Code flow, requiring user consent through the Intuit authorization screen once per company. Access tokens expire after 1 hour and refresh tokens rotate every 24 to 26 hours. QuickBooks supports both webhooks (push notifications on entity changes) and the CDC endpoint (polling with 30-day history). Webhook payloads contain only the entity ID and operation type and must be followed by a full GET to retrieve the record. All creates and updates require the exact object representation with a SyncToken for concurrency control.

How Amazon Seller Central works

Amazon Seller Central provides orders, inventory, financial events, and settlement data through the Selling Partner API, a REST service supporting sellers across North America, Europe, and Far East regions. Authentication uses OAuth 2.0 via Login with Amazon (LWA) with either refresh-token (for seller-authorized operations on Orders, Finances, and Listings) or client-credentials (for grantless Notifications access). Access tokens expire after 3600 seconds. Amazon does not offer direct HTTP webhooks; instead, push notifications route through Amazon EventBridge or Amazon SQS, or data is polled from the Orders, Finances, and Reports APIs. Financial settlement events and invoice submission results are not pushed and must be polled on a schedule.

What moves between them

Sales data flows from Amazon Seller Central into QuickBooks Online. Amazon orders become customer invoices in QuickBooks, linked to the matching Amazon customer record or a generic Amazon sales customer. After each Amazon financial settlement period, the Finances API returns settlement events (order fees, refunds, adjustments) which ml-connector aggregates into a deposit transaction in QuickBooks, applied to a bank deposits account and matched to the corresponding bank deposit by date and amount. Reference data such as income accounts and customer mappings are configured once and reused for every order and settlement.

How ml-connector handles it

ml-connector stores the OAuth 2.0 credentials for both QuickBooks Online and Amazon Seller Central encrypted in the database. On the QuickBooks side, it uses the Authorization Code flow once to capture the realm ID (company identifier) from the OAuth callback, then refreshes tokens as they expire. On the Amazon side, it stores the long-lived refresh token granted by the seller's initial login and re-authenticates with the LWA token endpoint when tokens approach expiry. ml-connector polls Amazon's Orders API and Finances API on a cadence you set (typically daily after settlement closes), reads both the orders and the financial events that settled in that period, then creates or updates invoices in QuickBooks for each order and a single deposit transaction for each settlement batch. Orders older than 2 years are not returned by Amazon, so ml-connector starts polling from a stored watermark. The SyncToken requirement in QuickBooks means ml-connector must fetch the current invoice or deposit before updating it, handle any mid-flight changes, and retry with exponential backoff if a conflict occurs. Financial settlement data from Amazon is read-only, so ml-connector never attempts to write back to Amazon; changes to pending transactions or settlements must be made in Amazon first or adjusted in QuickBooks manually. If a financial event fails to map to a valid income account or customer, ml-connector logs the incident in the audit trail and raises an alert so the mapping can be corrected before the next settlement closes.

A real-world example

A mid-sized e-commerce merchant sells inventory on Amazon Seller Central across multiple product categories and regional marketplaces, with daily orders and weekly settlement deposits. Before the integration, the accounting team waited until Amazon's settlement report arrived, manually entered each order into QuickBooks, and matched deposits to their bank statement, a process that took 4 to 6 hours per week and created reconciliation delays during month-end close. With QuickBooks Online and Amazon Seller Central connected, each order syncs into QuickBooks as an invoice the morning after the order settles, and the weekly Amazon settlement appears as a deposit transaction that reconciles automatically to the bank deposit. The team reclaims 4 hours per week and month-end close closes on schedule without revenue discrepancies between the two systems.

What you can do

  • Sync Amazon sales orders into QuickBooks Online as customer invoices, linked to each order's Amazon order ID and tracking number.
  • Post Amazon settlement deposits and refunds into QuickBooks as bank deposits, aggregated by settlement date and mapped to the correct income account.
  • Authenticate both systems via OAuth 2.0, refresh tokens automatically as they expire, and maintain a full audit trail of every record synced.
  • Map Amazon customers and product categories to QuickBooks customers and items so invoices land on the accounts and dimensions you have configured.
  • Poll Amazon's Orders and Finances APIs on a schedule you control, handle retries and conflicts, and alert you if a record cannot be mapped.

Questions

How does ml-connector handle Amazon's settlement deposits and fees?
Amazon's Finances API returns settlement events including orders, refunds, service fees, and adjustments. ml-connector aggregates all events within a settlement period into a single deposit transaction in QuickBooks, applied to your bank deposits account. The deposit is dated and reconciled to match the actual settlement that arrived in your bank account.
What happens if an Amazon order or customer cannot be mapped to QuickBooks?
ml-connector logs unmapped records in the audit trail and raises an alert. You can then configure the mapping (e.g., add a missing customer or income account in QuickBooks) and ml-connector will pick up the unmapped order on the next sync cycle without requiring a full re-run.
Does ml-connector support multiple Amazon regions or seller accounts?
Yes. ml-connector can be configured to sync multiple Amazon regions (North America, Europe, Far East) and multiple seller accounts by creating separate flow instances for each region or account. Each flow stores its own OAuth credentials and polling watermarks, so orders and settlements do not cross between them.

Related integrations

Connect QuickBooks Online and Amazon Seller Central

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

Get started