HubSpot sync with QuickBooks: fix duplicate customers safely

HubSpot’s QuickBooks Online sync matches a HubSpot contact to a QuickBooks customer by email. When the emails differ, the sync creates a second record for a client the other app already has. Turn off the contact sync, merge each pair in QuickBooks and then in HubSpot, give both kept records the same email, and turn the sync back on.

Field guide · B2b service companies · HubSpot · Published · Get the PDF

Long exposure of an office after hours at night: two folds of light joined by one straight line that ends in a blue period

Why does the HubSpot QuickBooks sync create duplicate customers?

HubSpot’s data sync matches on “the email for contacts,” and “If there isn’t a match, the record will go through the sync engine on its own.”

  • Different emails for the same client. HubSpot has the owner’s email and QuickBooks has the accounts payable address, so nothing matches.
  • A contact with no company. The new QuickBooks customer is named with the contact’s first and last name, next to the company-named customer you already had.
  • Two QuickBooks customers share one email. For example, two locations billed separately. HubSpot says “the first record returned by the app’s API will be syncable; the next one will be considered a duplicate.”
  • A QuickBooks customer with no email. It can’t match, so a HubSpot contact for the same client creates a second customer.

How do you stop new duplicates while you clean up?

Turning off the contact sync stops records moving in both directions.

  1. Open the sync. Click the settings icon, go to Integrations > Connected apps > QuickBooks Online, and open the CRM syncs tab.
  2. Save what was syncing. Click the number in the In Sync column, then More > Export, choose a file format and click Export. Repeat for Failing and Excluded. HubSpot sends the download link by email and to the notification center.
  3. Turn it off. Hover over the contact sync, click More, select Turn off sync, and confirm.

Leave the product and invoice syncs alone unless they are part of the problem.

How do you merge the duplicates in both apps?

Merge in QuickBooks first, since it holds the invoices and payments. Intuit says “This action is permanent and can’t be undone.”

1. Export the QuickBooks customer list. Go to Reports, then Standard reports. In Find report by name, choose Customer Contact List, then Export/Print > Export to Excel.

2. Export HubSpot contacts. Go to CRM > Contacts, open the All contacts view and click Export at the top right of the table. The free HubSpot duplicate contact finder groups that file into likely pairs.

3. Write the merge list. One row per client, with the email both kept records will share.

ExampleQuickBooks: keepQuickBooks: removeHubSpot: keepShared email
Client AHarbor Dental GroupThe office manager’s first and last nameBilling contact at Harbor Dental Groupbilling@harbordental.example
Client BPine Street LegalPine Street Legal LLCBilling contact at Pine Street Legalap@pinestreetlegal.example

Keep the customer with the correct company name and the most invoice history. Skip pairs that are separately billed locations.

4. Note both balances. Write down each QuickBooks customer’s open balance before you merge.

5. Merge in QuickBooks Online. Intuit’s steps:

  1. Go to All apps, then Customer Hub, then Customers & leads, and select the Customers tab.
  2. Open the customer you don’t want to keep.
  3. Select the dropdown next to Edit, then Merge contacts.
  4. Change the Display name to exactly match the customer you keep. Intuit says “The names must be identical.”
  5. Select Save, then Yes.

Check first that neither customer has sub-customers, which include projects. The removed customer becomes inactive and its transactions move to the one you keep.

6. Put the shared email on the kept QuickBooks customer.

7. Merge in HubSpot. Go to CRM > Contacts and open the contact you keep. In the left panel, open Actions, select Merge, choose the other contact, pick the values to keep, and click Merge. The kept contact’s email stays primary, so it must be the shared email. You need Merge or Super Admin permissions.

How do you turn the sync back on without bringing them back?

HubSpot says “Saving the sync will restart the initial sync,” so finish the merge list first.

  1. Associate each billing contact with its company. The new QuickBooks customer is then named after the company.
  2. Pick one billing contact per company. HubSpot recommends this “to avoid sync errors.” Other contacts at that company will fail to sync.
  3. Leave “Display Name ← Associated Company Name” on in the contact sync’s Mapped fields if you bill companies.
  4. Keep the HubSpot-to-QuickBooks filter. HubSpot sets “Create date is after [today’s date]” “to prevent unnecessary contacts from syncing from HubSpot to QuickBooks Online.”
  5. Choose the data conflict setting. In Data conflict resolution, pick Use QuickBooks Online if your bookkeeper owns customer details, or Use HubSpot data if sales does.
  6. Turn it on. On the CRM syncs tab, click More > Turn on sync, then Sync now.

HubSpot invoices for existing clients should use the contact that came from QuickBooks. HubSpot says an invoice fails when “the contact on the invoice doesn’t share the email address of the customer in QuickBooks.”

What are your options?

OptionGood forWatch for
Two-way contact sync, one billing contact per companyService firms that bill companiesExtra contacts at a company show as failing
One-way sync, QuickBooks to HubSpotA bookkeeper who sets up every customerInvoices from HubSpot fail until the customer exists in QuickBooks
Bring in an outside team (Fixes & connections)Hundreds of pairs, or duplicates that keep coming backNeeds admin access to both apps and time with your bookkeeper

How do you check it worked?

  • Balances. Each kept QuickBooks customer shows the sum of the two balances you noted.
  • Sync status. HubSpot sends changes within a few minutes and checks QuickBooks every 30 minutes. After that, Failing on the CRM syncs tab should hold only the extra company contacts you expect.
  • Invoices. The next HubSpot invoice for an existing client syncs to the kept QuickBooks customer.
  • No new pairs. A week later, export the Customer Contact List again and sort by email. A repeated email means a cause is still active.

Merging changes customer reports for past periods, so ask your accountant first if those periods are closed. For a wider check of the books, run the free QuickBooks Online cleanup checker. If store sales also post to QuickBooks, see why Shopify orders stop syncing to QuickBooks Online.

FAQ

Does the HubSpot QuickBooks sync match customers by name? For contacts, HubSpot’s data sync matches on email by default. Name or domain matching applies to companies.

Can I undo a merge in QuickBooks Online or HubSpot? No. Intuit says the customer merge “can’t be undone,” and HubSpot says unmerging is not possible.

Why do some contacts say the display name is a duplicate? HubSpot says “Display Name fields must be unique in QuickBooks Online,” and it names each new customer after the contact’s company. The second contact from that company fails.

Sources

Have one problem in mind?

Walk us through it on a free 30-minute call. Within two business days you get a one-page note on what we’d fix first, yours to keep.

Walk us through one problem