ml-connector
Microsoft Dynamics NAVBigCommerce

Microsoft Dynamics NAV and BigCommerce integration

Microsoft Dynamics NAV is your ERP and source of truth for inventory, customers, and accounts. BigCommerce runs your online storefront. Connecting the two keeps orders flowing from web into your ERP without manual entry, product changes on the web stay in sync with your NAV item master, and customer records in BigCommerce match your NAV customer file. ml-connector handles the different authentication schemes and endpoints on each side and moves data on a schedule you define.

How Microsoft Dynamics NAV works

Microsoft Dynamics NAV exposes customers, sales orders, sales invoices, items, accounts, general ledger entries, vendors, and dimensions through OData v4 REST APIs served at a tenant-specific URL. Authentication uses OAuth 2.0 client credentials via Microsoft Entra ID. NAV supports push webhooks for most entities with a 3-day subscription window and clientState verification, though webhooks require renewal before expiry. On-premises deployments use the same OData port 7048 and OAuth flow but require administrator setup. General ledger accounts are read-only in the standard API, and posted entries are immutable.

How BigCommerce works

BigCommerce is a cloud e-commerce platform that exposes orders, customers, products, and variants through a REST API secured with a static API key in the X-Auth-Token header. Each store is identified by a store_hash retrieved from the API URL, not the control panel store ID. BigCommerce delivers webhooks via HTTP POST with HMAC-SHA256 signatures to notify on order, product, customer, and inventory changes. Webhook payloads contain only a stub; the full record must be fetched immediately via REST. Webhooks auto-deactivate after 90 days of inactivity or ~48 hours of delivery failures, and rate limits apply per 30-second window based on the merchant plan.

What moves between them

Orders flow from BigCommerce into Microsoft Dynamics NAV as sales orders and invoices. When a customer places an order on the BigCommerce storefront, ml-connector receives the webhook event, retrieves the order details via REST, looks up or creates the matching customer in NAV, maps line items to NAV inventory items, and creates a sales invoice in NAV. Product changes flow from NAV into BigCommerce so the ecommerce catalog reflects current inventory status and pricing. Customer records are synced bidirectionally to keep name, email, and shipping address in agreement.

How ml-connector handles it

ml-connector stores the BigCommerce API key encrypted and uses it on every call to fetch full order details from the webhook stub. It stores the NAV tenant URL and OAuth client credentials, refreshes the bearer token on 401 response, and monitors the 3-day webhook subscription window in NAV, renewing subscriptions before they expire. When a BigCommerce order arrives, ml-connector matches the customer email to an NAV customer or creates a new one, then maps each product to a NAV item by SKU or barcode. The sales invoice is created in NAV with line items, customer reference, and totals calculated from the BigCommerce order amount. BigCommerce rate limits reset every 30 seconds, so ml-connector tracks request counts and queues overflow requests for the next window. For outbound updates to BigCommerce (product changes from NAV), ml-connector polls NAV for item master changes and pushes price and inventory updates to BigCommerce via REST, with each request signed with BigCommerce's X-BC-Signature header. Every record carries a full audit trail and can be replayed if a downstream call fails.

A real-world example

A small-to-medium e-commerce business runs BigCommerce for its online store and Microsoft Dynamics NAV on-premises for accounting, inventory, and fulfillment. Before the integration, when a customer ordered online, the e-commerce team exported orders from BigCommerce daily and entered them manually into NAV as sales invoices, a process that created data entry errors and delayed fulfillment. Product price and inventory quantity changes had to be manually synced both directions. With BigCommerce and NAV connected, each new order flows automatically into NAV as a sales invoice within seconds of purchase. The invoice ties to the correct customer record, picks the right inventory items, and is ready for fulfillment without re-keying. When inventory is adjusted in NAV, the updated quantity syncs to BigCommerce so the store reflects true stock. Month-end reconciliation is faster because sales orders in NAV match the BigCommerce transaction ledger automatically.

What you can do

  • Create sales invoices in Microsoft Dynamics NAV from BigCommerce orders, mapped to the correct customer and inventory items.
  • Sync product prices and inventory quantities from NAV item master to BigCommerce so the storefront reflects current availability.
  • Align customer records between BigCommerce and NAV, keeping email, shipping address, and payment terms consistent.
  • Handle NAV OAuth 2.0 token refresh and 3-day webhook subscription renewal, and BigCommerce HMAC-SHA256 signature verification and rate-limit backoff.
  • Track order and product changes via webhooks with a full audit trail, and replay failed records without manual intervention.

Questions

Which direction does data move between Microsoft Dynamics NAV and BigCommerce?
The primary flow is BigCommerce orders into NAV as sales invoices and customers. Product prices and inventory quantities flow from NAV into BigCommerce so the storefront shows current availability. Customer names, emails, and addresses are synced bidirectionally. NAV is the source of truth for inventory and pricing; BigCommerce is the sales channel.
How does ml-connector handle NAV webhook subscription renewal and BigCommerce signature verification?
ml-connector tracks the 3-day NAV webhook subscription window in the audit log and renews subscriptions before they expire, so order and customer changes continue to flow without gaps. On the BigCommerce side, every webhook payload is verified against the X-BC-Signature header using HMAC-SHA256 with the client secret, and requests with invalid signatures are rejected immediately.
What happens if a BigCommerce order cannot be matched to a NAV customer?
ml-connector looks up the BigCommerce customer email in NAV. If no match is found, it creates a new NAV customer with the email, name, and shipping address from BigCommerce before creating the sales invoice. The new customer record is audited so the finance team can verify it later.

Related integrations

Connect Microsoft Dynamics NAV and BigCommerce

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

Get started