Skip to content

Operations2 min readBy Ry

Why Shopify and QuickBooks never quite reconcile

Payouts, fees, refunds and timing differences make Shopify-to-accounting reconciliation painful. Here is where the gaps come from and how to close them.

If you run a Shopify store, at some point your bookkeeper has asked why the deposit in the bank does not match the sales in Shopify. The honest answer is that they were never supposed to match directly. They describe different things.

Sales are not deposits

A Shopify order records what the customer paid. A payout records what landed in your bank after the payment processor has done its work. Between the two sit several adjustments:

  • Processing fees deducted before the payout
  • Refunds that reduce a later payout, not the original order’s
  • Chargebacks and their fees
  • Timing: one payout can cover orders from several days, and one day’s orders can span payouts
  • Gift cards, which are a liability when sold and revenue only when redeemed
  • Sales tax, which is collected on behalf of someone else and is not revenue
  • Other payment methods such as PayPal or Shop Pay Installments settling on their own schedules

If your accounting system receives a single lump for each deposit, all of these are hidden inside it. If it receives one entry per order, none of the fees and refunds line up with the deposits. Either way someone reconciles by hand.

The approach that works: reconcile to the payout

The cleanest method is to treat each payout as the unit of reconciliation and break it into its parts:

  1. Gross sales for the orders included in the payout
  2. Minus refunds applied in that payout
  3. Minus fees and chargebacks
  4. Sales tax and shipping split to their own accounts
  5. Equals the bank deposit, to the cent

Shopify’s payout reports contain the transaction-level detail to do this. A journal entry built this way matches the bank line exactly, so the bank feed reconciles with one click and the revenue, fees and tax each land in the right accounts.

Off-the-shelf connectors vs a custom sync

There are good apps that do a version of this, and for a single store with one payment method they are usually enough. They tend to struggle when:

  • You have several storefronts or currencies
  • You sell wholesale on net terms alongside retail
  • Bundles or kits need inventory and cost of goods split across components
  • You use multiple payment processors with different settlement timing
  • Your accountant wants a specific chart-of-accounts mapping the app does not support

Signs it is worth fixing now

If month-end close takes more than a day because of e-commerce reconciliation, or you cannot say what your margin per product actually is, the gap between your store and your books is costing more than it looks. It is one of the most common e-commerce operations projects for exactly that reason.

Written by Ry, Evenbuilt · Los Angeles

All posts

[Keep reading]

More posts

All posts →

Automation2 min read

What your manual work is really costing you

A simple way to put a dollar figure on the copying, pasting and re-typing your team does every week, and how to decide what to automate first.

Integrations2 min read

Zapier vs a custom integration: when to switch

No-code automation is the right answer surprisingly often. Here are the specific signs that you have outgrown it, and what a custom integration actually changes.

Tell me what is slow.

A 30-minute call, no charge. You will leave with a clearer picture of the problem whether or not we work together.

Booking projects for Q4 2026