Microsoft Dynamics GP and Shopify integration
Microsoft Dynamics GP runs your back-office financials, payables, and inventory. Shopify powers your e-commerce channel. Connecting them keeps your GL balanced and your inventory current. Sales orders from Shopify become receivables invoices in Microsoft Dynamics GP without re-keying, inventory adjustments flow both ways, and your customer list stays in sync. ml-connector handles the very different authentication models and moves the data on a schedule tied to your order volume.
What moves between them
The primary flow runs from Shopify into Microsoft Dynamics GP. Shopify order webhooks trigger ml-connector to read the full order details and customer data from Shopify, then post an AR invoice and customer record into GP's receivables and customer modules. Inventory changes flow in both directions: Shopify fulfillments update GP inventory, and GL inventory adjustments in GP push back to Shopify InventoryLevels on a polling schedule. Customer and product reference data sync bidirectionally so Shopify product names and customer credit limits match what is recorded in GP.
How ml-connector handles it
ml-connector stores the Shopify OAuth2 token encrypted and listens for order webhooks via HTTPS, verifying the X-Shopify-Webhook-Id signature before processing. When an order arrives, ml-connector queries Shopify for full customer and order details, then translates the Shopify customer into a GP Customer record and the order into a GP AR Invoice, mapped to the GL account configured for e-commerce sales. For GP writes, ml-connector connects using Windows Authentication with a dedicated domain account provided by the customer, wraps the JSON payload in the required top-level Payload key that SBA REST expects, and posts to the customer's specific GP instance URL. Because GP fiscal periods must be open and the company name is the actual SQL Server database name, ml-connector validates both before attempting a post. When an order invoice posts successfully, ml-connector logs the GL batch number for reconciliation. If posting fails due to a closed period or validation error, ml-connector queues a retry and alerts the finance team with the specific error. Inventory syncs on a polling cadence: ml-connector reads GP's inventory balances and updates Shopify InventoryLevels for the matching products, and reads Shopify fulfillments to adjust GP inventory when orders ship.
A real-world example
A mid-sized B2B e-commerce retailer sells office furniture through Shopify while running Microsoft Dynamics GP for financials and inventory management. Before the integration, the order management team processed each Shopify order by hand: exporting the CSV daily, creating a customer record in GP if new, manually typing the order line items into an AR invoice, and posting it to the GL. This took 45 minutes per day and was error-prone. With Shopify and Microsoft Dynamics GP connected, each order becomes an AR invoice automatically, the customer is created on first order, inventory is updated when the order ships, and the daily posting is instant. The finance team reconciles to GL at month-end with zero manual re-keying.
What you can do
- Post Shopify orders as AR invoices into Microsoft Dynamics GP, mapped to the e-commerce GL account and customer.
- Sync Shopify customers into GP's customer master with credit limits, contact info, and billing address.
- Update Shopify InventoryLevels when Microsoft Dynamics GP inventory is adjusted or transfers occur.
- Authenticate GP using Windows domain credentials and Shopify using OAuth2 tokens, both stored encrypted.
- Listen for Shopify order and fulfillment webhooks, verify signatures, and retry failed GL postings with a full audit trail.
Questions
- Which direction does data move between Microsoft Dynamics GP and Shopify?
- The main flow is Shopify orders into Microsoft Dynamics GP as AR invoices. Customers and products sync in both directions so GP and Shopify stay aligned. Inventory flows both ways: Shopify fulfillments update GP stock, and GL inventory adjustments in GP post back to Shopify InventoryLevels.
- How does ml-connector handle Windows Authentication to Microsoft Dynamics GP?
- ml-connector stores the Windows domain account credentials encrypted and uses them to authenticate to the customer's on-premises GP instance via the Service Based Architecture REST endpoint or SOAP Web Services. The customer must create the domain account and map it to a GP User with the necessary security roles before the integration starts.
- What happens if a GP fiscal period is closed when an order arrives from Shopify?
- ml-connector checks the GL calendar before attempting to post an invoice. If the period is closed, the post fails, ml-connector queues the invoice for retry, and alerts the finance team with the specific error so they can open the period or adjust the order date before reprocessing.
Related integrations
More Microsoft Dynamics GP integrations
Other systems that connect to Shopify
Connect Microsoft Dynamics GP and Shopify
Free to use. Add your credentials, ping your real systems, and see if we fit.
Get started