Duplicate Shopify sales in QuickBooks Online: why they happen and how to clean them up

Short answer

Duplicate Shopify sales in QuickBooks usually come from two things posting the same order: two connectors running at once, a re-sync after reconnecting, a sale entered by hand as well as synced, or a bank-feed deposit added instead of matched. Export a month of sales, find repeated Shopify order numbers, void the extra copies, then make sure only one sync posts orders.

Where duplicates come from

Cause How it happens Tell-tale sign
Two syncs at once The old and new connector, or the connector plus another app, both post orders Every order appears twice, posted by different sources
A re-sync of an old date range Reconnecting the connector re-imports orders it already posted. Intuit’s migration guide warns against a start date that overlaps data you’ve already imported Duplicates cluster around the date you reconnected
Manual entry plus the sync Someone enters a sale by hand that the connector also posts Duplicates only for some orders, often phone or B2B orders
Bank feed added instead of matched A Shopify payout in the bank feed is added as new income Income is too high but the order count looks right

How to find every duplicate

Checking sales one by one doesn’t scale. Use an export instead:

  1. Export a month of sales. In QuickBooks Online, run the Transaction List by Date report for one month and filter it to sales receipts and invoices. Export it to a spreadsheet.
  2. Find repeated order numbers. The Shopify order number is usually in the reference number or memo. Sort by it and highlight any number that appears more than once.
  3. Compare the count with Shopify. The number of synced sales should equal the number of Shopify orders for the same month, apart from orders the connector doesn’t sync, such as unpaid orders.
  4. Check the bank side. Compare Shopify payouts with deposits. Two deposits for one payout means the bank feed added income instead of matching it.

How to clean them up safely

  1. Stop the cause first. Make sure only one sync posts orders, and pause manual entry of online orders. Otherwise new duplicates arrive while you’re cleaning.
  2. Keep the copy the connector expects. If the connector links each order to one transaction, remove the other copy, so a later re-sync doesn’t recreate it.
  3. Void rather than delete if you want an audit trail, especially for periods your accountant has seen.
  4. Re-check deposits. After removing duplicate sales, make sure payouts still match the remaining sales and fees.
  5. Leave filed periods alone. If a VAT or sales tax return already includes the duplicates, ask your accountant how to correct it.

How to stop it happening again

  • Run one sync for orders. Disconnect anything else that posts Shopify sales.
  • Don’t enter online orders by hand.
  • In the bank feed, match Shopify payouts to existing transactions instead of adding them.
  • Do the monthly totals check from our main guide on the 2026 connector change until two months in a row come out clean.

In our analysis of 155 merchant complaints about the Shopify–QuickBooks sync, 10 described duplicate sales or items. Many more described totals that didn’t match, and duplicates are one of the first things to rule out.

Questions people also ask

Should I delete or void the duplicates?

Voiding keeps the transaction on record with a zero amount, which leaves an audit trail. Deleting removes it. If you're unsure, or the period has been reported, void and ask your accountant.

What if I've already filed a VAT or sales tax return with the duplicates in it?

Don't change the filed period on your own. Ask your accountant how to correct it, which is usually an adjustment in the next return.

Why did duplicates appear right after the 2026 connector change?

During the migration some stores had both the old and the new connector post the same orders, or re-synced a date range that was already in QuickBooks.

Can the bank feed create duplicates?

Yes. If a Shopify payout is added as a new deposit or sale instead of being matched to what the connector already posted, the income appears twice.

Sources