QuickBooks Desktop and Shopify integration
Shopify processes your online orders and payments. QuickBooks Desktop records your revenue and reconciles your bank account. Connecting the two keeps your accounting current without manual entry. When a customer pays on Shopify, ml-connector posts the deposit to your bank account in QuickBooks Desktop. Refunds flow the same way, keeping AR and cash reconciled.
What moves between them
Shopify orders and payments flow into QuickBooks Desktop in two directions. When a customer pays on Shopify, the order becomes an invoice in QuickBooks Desktop and the payment posts as a deposit to your bank account. Refunds issued in Shopify create credit memos or reverse deposits in QuickBooks Desktop. The sync runs on webhook (real-time from Shopify) and does not write back to Shopify.
How ml-connector handles it
ml-connector listens for Shopify webhook events (orders/paid, orders/cancelled, refunds/created) and validates the signature against your shared secret. Each Shopify order maps to a QuickBooks Desktop invoice using the order number and customer email. The payment amount posts to your bank deposit account in QuickBooks Desktop via the QBWC polling bridge. Because QuickBooks Desktop requires EditSequence (version counters) on all modifications and QBWC operates sequentially, ml-connector reads the current state before posting to prevent conflicts. Shopify transactions may bundle multiple payments; ml-connector groups them by currency and posts a single deposit entry. If Shopify's webhook delivery fails, orders are backfilled on the next QBWC poll cycle by querying for unpaid invoices in QuickBooks Desktop.
A real-world example
A small online retailer runs Shopify for their storefront and QuickBooks Desktop for accounting. Every day they receive orders from multiple Shopify channels (web, marketplace sync). Before the integration, the owner or a bookkeeper exported daily orders from Shopify, created invoices in QuickBooks Desktop by hand, and then manually entered payments once bank deposits cleared, often days later. With Shopify and QuickBooks Desktop connected, each order creates an invoice instantly and each payment posts to the bank account the same day it arrives, eliminating manual data entry and reducing reconciliation time from hours per week to minutes.
What you can do
- Convert Shopify orders into QuickBooks Desktop invoices mapped by order number and customer email.
- Post Shopify payments and deposits as bank transactions in your QuickBooks Desktop cash account in real time.
- Handle refunds and chargebacks by creating credit memos or reversing deposits in QuickBooks Desktop.
- Bridge QBWC polling with Shopify webhook delivery to keep both systems in step.
- Maintain a full audit trail of every order and payment, with replay capability if a write fails.
Questions
- Can I sync Shopify orders to QuickBooks Desktop invoices without manual matching?
- Yes. ml-connector matches Shopify orders to customers by email address and creates invoices in QuickBooks Desktop using the Shopify order number as the invoice ID. If no customer exists in QuickBooks Desktop, the integration can create one automatically based on the Shopify customer profile.
- How does the integration handle refunds and chargebacks?
- Shopify refunds and chargebacks trigger refund/created and disputes/create webhooks that ml-connector receives in real time. These create credit memos in QuickBooks Desktop against the original invoice or post reverse deposits to your bank account, depending on whether the original order was already paid.
- What happens if QBWC is offline or QuickBooks Desktop is closed?
- QBWC must run on a Windows machine where QuickBooks Desktop is open and logged in. If QBWC is offline, pending orders and payments are queued in ml-connector and posted as soon as QBWC comes back online. ml-connector tracks which invoices and deposits have been sent to prevent duplicates.
Related integrations
More QuickBooks Desktop integrations
Other systems that connect to Shopify
Connect QuickBooks Desktop and Shopify
Free to use. Add your credentials, ping your real systems, and see if we fit.
Get started