HubSpot QuickBooks Integration: Setup, Data Sync and Limitations

Author : Automation Strategy Group
hubspot-quickbooks-integration

Table of Contents

An integration between HubSpot and QuickBooks online can significantly simplify the workflow of finance and sales teams. You won’t need to copy customer information to QuickBooks, create invoices from CRM data, or verify payments in QuickBooks anymore. A HubSpot QuickBooks integration ensures that only selected information transfers automatically between both systems.

However, the connection requires much more than simply installing the QuickBooks Online application.

The two have different approaches to using customer data. While HubSpot is mainly about contacts, companies, deals, sales activities, and relationships with clients, QuickBooks includes customers, products and services, invoices, payments, and accounting information. It is important to determine how these records relate to each other as well as which system is responsible for the respective data.

In this blog post, we’ll explain the HubSpot QuickBooks integration process, what information can be synchronized, and how you can keep the limitations in mind while executing.

Key Highlights

  • HubSpot Contacts sync with QuickBooks Customers, while HubSpot Companies play an indirect role through contact associations.
  • Products can sync with QuickBooks Products & Services, and HubSpot recommends using SKUs for matching.
  • Invoices can sync in either direction, although edit behavior depends on where the invoice originated.
  • HubSpot normally detects changes going to QuickBooks within a few minutes and checks QuickBooks for incoming changes every 30 minutes.
  • Eligible US HubSpot customers can use workflows to create QuickBooks invoices, estimates, sales receipts, expenses, and refund receipts.
  • Billing contacts, sync filters, product matching, invoice ownership, and conflict resolution should be planned before the integration goes live.

Does HubSpot Integrate With QuickBooks Online?

HubSpot provides a native QuickBooks Online integration that uses HubSpot Data Sync to connect supported CRM and accounting records.

Once connected, the two platforms can keep selected customer, product, invoice, credit memo, and payment information aligned. The exact behavior depends on which object you configure, which direction you allow it to sync, and which filters and mappings you apply.

Connecting the app does not mean HubSpot should automatically send every contact, product, and invoice into QuickBooks.

Imagine a B2B company with 40,000 HubSpot contacts but only 1,200 paying customers. Finance probably does not want 40,000 customer records appearing in QuickBooks. In that case, the integration needs a rule for identifying which contacts have reached the point where QuickBooks actually needs them.

This is why HubSpot applies recommended sync filters during setup. Those filters are designed to reduce over-syncing, particularly when records move from HubSpot into QuickBooks. You can review and change most of those filters based on how your business handles customers and billing.

QuickBooks Online and QuickBooks Desktop are different integration projects

The native HubSpot integration discussed throughout this article is built around QuickBooks Online.

If your finance team still runs QuickBooks Desktop, you should treat the project differently rather than assuming the same setup applies. You may need middleware, an alternative connector, or a custom integration depending on the Desktop version, hosting model, and data you need to move.

So, before planning the integration, confirm which QuickBooks product your accounting team actually uses. It sounds basic, but it is one of the first things we should verify in an integration discovery session.

What Data Can Sync Between HubSpot and QuickBooks?

The current QuickBooks Online setup provides you with four main configurable object syncs.

HubSpot QuickBooks Online Configurable Sync
Contact Customer One-way or two-way
Product Products & Services One-way or two-way
Invoice Invoice One-way or two-way
Credit Memo Credit Memo One-way or two-way

Payment information is also supported, although HubSpot applies separate rules and limitations to payment synchronization. On paper, the table looks simple. In practice, each row needs a little more thought.

Contacts sync with QuickBooks Customers

This is probably the most important mapping to understand for a B2B setup. HubSpot uses contacts as the configurable CRM object. QuickBooks uses customers.

Now imagine one HubSpot company with a CFO, CEO, accounts-payable manager, sales contact, technical contact, and operations manager associated with it. HubSpot has a perfectly valid reason to keep all six people because sales and customer success may interact with each of them.

QuickBooks may not need six separate customer records.

By default, when a HubSpot contact syncs into QuickBooks, HubSpot can use the contact’s associated company name as the QuickBooks Display Name. The problem is that QuickBooks requires Display Names to be unique. Once one contact from that company has already created the customer name, another contact attempting to use the same Display Name can fail to sync. HubSpot therefore recommends using one contact at the company as the billing contact for invoices and payments.

You need to decide which HubSpot contact represents the QuickBooks customer relationship and how that contact will be identified. In some businesses, that is Accounts Payable. In others, it is the deal’s primary contact. For smaller companies, it may simply be the owner or founder who signed the agreement.

Products sync with QuickBooks Products & Services

Products look easier until the sales and accounting teams use different product catalogs. Perhaps sales calls a product “Enterprise Implementation,” while finance calls it “Professional Services – Implementation.” Or maybe HubSpot contains a dozen sales-facing package names while QuickBooks uses a smaller set of accounting codes.

Before turning on invoice automation, decide whether those records should remain separate or be standardized. HubSpot recommends syncing QuickBooks Products & Services into HubSpot and using the resulting products for quotes, invoices, and payment links. Product matching uses the SKU property, and by default HubSpot limits product synchronization to products with SKUs to help reduce duplicates.

If two teams create products independently and the identifiers do not match, you can end up with duplicate products or line items that HubSpot cannot map cleanly back to QuickBooks.

When HubSpot cannot match an invoice line item to a QuickBooks product, the integration can use a QuickBooks item called Custom Line Item, tied to an income account you define during setup. That can be useful as a fallback, but it should not become the normal route for every invoice.

Invoices can sync in both directions

HubSpot now lets you configure invoice sync in either direction, which is an important change from older QuickBooks integration guidance. However, “two-way invoice sync” does not mean an invoice can always be changed freely from either system.

For invoices created in HubSpot and synchronized to QuickBooks, mapped property updates can sync back to QuickBooks. But HubSpot also restricts certain QuickBooks-side edits to HubSpot-originated invoices. For example, adding or removing line items, changing pricing, removing payments, or adding certain tax information directly in QuickBooks can cause the invoice to fail to synchronize.

So, you need an invoice ownership rule.

If sales creates the invoice in HubSpot, your finance team needs to know which fields should still be changed in HubSpot. If finance creates invoices in QuickBooks, your HubSpot users need to understand that those records have a different source.

Without that agreement, the technical integration may work exactly as designed while the teams still create sync failures through normal day-to-day edits.

Payments can provide better billing visibility for HubSpot users

One of the main reasons companies connect HubSpot and QuickBooks is so commercial teams can see what has happened after a deal closes. Sales should not need QuickBooks credentials simply to answer, “Has this customer paid?”

HubSpot can bring payment information into the CRM and make it available alongside associated deal and invoice records. However, payment sync has some important restrictions.

For example, QuickBooks allows one payment to be applied across several invoices. HubSpot cannot currently split that single payment across multiple invoices, so those multi-invoice payment records will not synchronize into HubSpot in the same way. Only payments created after you connect the app sync into HubSpot will sync, which also means you should not expect the integration to backfill your entire QuickBooks payment history automatically.

This matters if you are building dashboards around payment status or historical collections. So you need to understand which payment data will exist before promising finance or sales a complete historical view.

Credit memos can sync as well

Credit memo synchronization is another area where the current integration goes further than some older guides suggest. HubSpot now supports one-way or bidirectional credit memo synchronization. The sync can include line items, discounts, automated sales tax, credit memo applications to invoices, and certain related payment records.

However, there is still a boundary around allocation. If a single QuickBooks payment applies the same credit memo across multiple invoices, HubSpot cannot reproduce that allocation correctly. HubSpot recommends applying the credit memo separately to each invoice when you need the credit applications to synchronize back into the CRM.

Again, the technical feature exists, but accounting process design determines whether it works cleanly for your team.

How to Set Up the HubSpot QuickBooks Integration

Before clicking Connect, decide how data should move. Here is the integration process for HubSpot and QuickBooks, which includes:

Step 1: Decide which platform owns each type of information

Start with a simple question for every major data point: If HubSpot and QuickBooks disagree, which one should be correct? 

Customer information may belong primarily to HubSpot because sales creates and maintains the relationship there. Product information may belong to QuickBooks because finance controls pricing, income accounts, and accounting classifications. Invoices could go either way. 

Some companies want sales or operations to generate them from HubSpot. Others want finance to remain the only team creating financial documents inside QuickBooks.

There is no universal answer. However, there should be an answer before you configure sync directions.

HubSpot lets you select Use HubSpot data or Use QuickBooks Online data when resolving conflicts between mapped properties. That setting can quietly determine which system overwrites the other, so treat it as a business rule rather than a technical preference.

Step 2: Clean the records the integration will depend on

Once you know the ownership rules, look at the source data. For contacts, check email addresses, company associations, billing contacts, and duplicate records. For products, review SKUs and make sure the products finance expects to invoice actually exist in QuickBooks. For customers, look at QuickBooks Display Names because those values must remain unique.

At the accounting level, HubSpot recommends turning off QuickBooks’ Custom transaction number setting to reduce invoice-number conflicts and locking closed accounting periods so synchronization cannot unexpectedly change a period the finance team has already closed.

Step 3: Install QuickBooks Online in HubSpot

Once the data and rules are ready, connect the app. A HubSpot user needs either Super Admin access or the relevant App Marketplace permissions. From the HubSpot Marketplace, search for QuickBooks Online, install the app, and authenticate the QuickBooks account you want to connect.

One detail is worth noting if your team normally tests integrations in sandboxes: HubSpot currently states that you cannot connect a QuickBooks sandbox account to the integration. That means your production testing process needs tighter controls.

Instead of assuming you can build freely against a finance sandbox, start with a small set of known records and make sure the people responsible for QuickBooks know exactly what you are testing.

Step 4: Configure the objects one at a time

Once QuickBooks is connected, go into the CRM sync settings and decide which objects you want to synchronize. Do not switch everything on simply because the option is there.

Perhaps your sales team already has a clean HubSpot customer database, but QuickBooks owns the product catalog. In that case, contacts may need to move from HubSpot toward QuickBooks while products move primarily in the opposite direction.

Invoices may need bidirectional visibility without giving both teams equal editing responsibility. Configure each object based on the actual process. This is how integrations tend to work better when the company thinks in terms of data flow, rather than trying to make both platforms mirror each other.

Step 5: Set conflict resolution

Next, choose which system should win when mapped properties contain different values. For example, suppose the billing email in HubSpot is billing@client.com, while QuickBooks still contains an old employee address.

If you choose QuickBooks as the preferred source for that mapped field, the old accounting value could overwrite the newer CRM value. If HubSpot wins, the accounting record could be updated instead.

Neither is automatically correct. You need to know which team owns that field. For customer contact information, sales or customer success may be more current. For accounting terms, tax-related details, or product classifications, finance may have stronger ownership.

Step 6: Review your field mappings

HubSpot includes predefined field mappings for the QuickBooks connection. For simpler integrations, those mappings may be enough.

However, companies often store additional customer or invoice data that needs to move between the systems. HubSpot allows accounts with Data Hub Starter, Professional, or Enterprise to add additional field mappings. QuickBooks custom invoice fields also have specific requirements, and only the first three custom invoice fields created in QuickBooks are currently exposed through the API for this purpose.

This is a good point to resist unnecessary mapping. Just because two systems contain similar fields does not mean every property needs to synchronize. The more mappings you add, the more rules you need to maintain when one system changes.

Step 7: Set filters before you turn the sync on

Filters determine which records actually qualify for synchronization. This is especially important for HubSpot contacts.

A large CRM can contain prospects, newsletter subscribers, partners, former customers, vendors, job candidates, event registrants, and other people finance has no reason to see in QuickBooks.

HubSpot automatically applies recommended filters during setup to help reduce over-syncing. You can then adjust most of those filters according to your business process.

For a B2B company, a sensible outbound contact filter might depend on the contact becoming a billing contact, being associated with a closed-won deal, or meeting another clearly defined customer condition. The exact rule depends on your process.

The important part is that a prospect should not become a QuickBooks customer simply because someone installed the integration.

Step 8: Test the business process, not only the connector

Once the sync is enabled, avoid declaring success because both apps show “Connected.” Create a controlled test that follows the process your teams actually use.

Start with a known customer. Make sure the HubSpot contact becomes or matches the expected QuickBooks customer. Then test the product. Confirm that the correct SKU and QuickBooks Product or Service match.

From there, create or sync an invoice and check the customer, line items, amount, dates, and associations. Then test payment behavior.

Finally, create an exception deliberately. Use a duplicate customer Display Name, a product without the expected match, or a billing contact that fails the filter. You want to know what failure looks like before your sales team discovers it on a live customer.

How HubSpot QuickBooks Data Sync Works

Once the integration is live, HubSpot Data Sync handles the ongoing movement of supported records. However, your HubSpot administrators should understand these behaviors:

One-way and two-way sync are configured by object

The integration does not force one sync model across the entire connection. You may decide to synchronize products from QuickBooks into HubSpot because finance owns the product catalog. At the same time, contacts may need two-way synchronization because customer information changes in both systems.

Invoices could use another direction entirely. That flexibility is useful, but it also means the integration needs documentation. Six months from now, someone troubleshooting an invoice problem should be able to see which platform owns the invoice and which fields are allowed to update from the other side.

QuickBooks-to-HubSpot updates are not immediate

After the first synchronization completes, HubSpot detects HubSpot-to-QuickBooks changes within a few minutes. Changes originating in QuickBooks are checked every 30 minutes. Administrators can also use Sync now when they need to pull the latest updates manually.

So, if finance updates something in QuickBooks and sales refreshes HubSpot five seconds later, the CRM may not have the change yet. That is normal behavior, not necessarily a broken integration.

Customer matching needs a clear billing contact

For B2B companies, this is worth repeating because it causes so many avoidable problems. QuickBooks needs a customer. HubSpot is syncing a contact. If several contacts from the same HubSpot company all qualify for QuickBooks synchronization and use the associated company as their QuickBooks Display Name, QuickBooks can reject the later records because the Display Name already exists.

That is why a single billing-contact rule makes the integration much easier to manage. You can still send invoices, quotes, or payment links to other people. But the customer record being used for formal QuickBooks synchronization should remain predictable.

Product matching depends heavily on SKU

When products sync, HubSpot uses SKU as a primary matching mechanism. That makes sense from an integration perspective because names change. Sales may shorten a product name. Marketing may rewrite one for presentation. Finance may use a slightly different label.

A stable SKU gives both systems a shared identifier. If your product catalogs have grown separately for several years, normalize those SKUs before using automated invoice workflows.

QuickBooks invoices associate back to HubSpot Companies through the contact

HubSpot does not list Company as its own QuickBooks CRM sync object. Instead, when a QuickBooks invoice syncs into HubSpot, HubSpot looks at the contact on the invoice and associates the invoice with that contact’s primary company.

If the contact belongs to several companies, the primary company wins. If the contact has no associated company, HubSpot does not automatically add a company association to the invoice. That is another reason company associations deserve attention before integration setup.

If your sales team has never maintained primary company relationships consistently, that data-quality issue can suddenly become a finance-reporting issue once QuickBooks enters the picture.

How to Automate QuickBooks With HubSpot Workflows

Eligible Marketing Hub, Sales Hub, Service Hub, Data Hub, and Revenue Hub Professional or Enterprise customers can use QuickBooks actions directly inside HubSpot workflows. HubSpot currently supports actions for creating QuickBooks invoices, estimates, sales receipts, expenses, and refund receipts. 

Here are the ways you can automation QuickBooks with HubSpot workflows, which include:

1. Create a QuickBooks invoice when the deal reaches the right stage

Suppose sales moves a deal to Closed Won. Instead of someone emailing finance with the customer’s details and agreed products, a HubSpot workflow can create the QuickBooks invoice.  However, there are two important dependencies.

First, the associated contact must qualify under your QuickBooks contact-sync rules. If the customer does not meet the Data Sync filters, the QuickBooks workflow action will fail.

Second, HubSpot needs to match the deal or quote line items to products in QuickBooks. If it cannot find an appropriate product match, invoice creation can fail as well. HubSpot therefore recommends enabling product synchronization before relying on these workflow actions.

This is why invoice automation should come after customer and product synchronization is working, not before.

2. Create estimates before the deal closes

Some businesses need accounting estimates earlier in the sales process. A workflow could create a QuickBooks estimate when a deal enters a specific commercial stage, provided the associated customer and products meet the required synchronization rules.

This can work well when finance needs visibility before invoicing, but sales still owns the opportunity process in HubSpot.

3. Create sales receipts for immediate-payment transactions

For businesses using HubSpot payments or other workflows where payment happens at the time of purchase, QuickBooks sales receipts can help reflect the transaction without asking finance to recreate it manually. Again, the product and customer records need to match correctly.

Automation does not remove the underlying data requirements. It simply makes those requirements more important because a person is no longer checking every record before it reaches QuickBooks.

4. Account for HubSpot payment fees

HubSpot also provides a workflow action for creating a QuickBooks expense to reflect a HubSpot payment fee.

This matters because processing fees on HubSpot-paid invoices do not automatically become accounting expenses in QuickBooks through standard invoice sync. HubSpot also recommends reporting on processing and platform fee properties when finance needs to reconcile those amounts.

5. Handle refunds

For full refunds processed through HubSpot payments, workflows can create QuickBooks refund receipts as well. This can reduce the amount of repeated finance administration, but test the refund flow before using it broadly.

Refunds, credits, payments, and invoices all affect accounting records, so this is not the place to turn on a workflow and “see what happens.”

Read More: HubSpot Implementation vs. Migration vs. Configuration

Common HubSpot QuickBooks Sync Errors and How to Troubleshoot Them

Here are the most common sync errors when you integrate QuickBooks with HubSpot and how you can fix them:

1. An invoice should have an associated customer

This error usually appears when HubSpot cannot find the invoice contact as a corresponding QuickBooks customer. HubSpot says the most common cause is an email mismatch between the invoice contact in HubSpot and the customer in QuickBooks. Once the invoice uses the HubSpot contact that matches the QuickBooks customer’s email, the invoice can synchronize.

So, if this error appears repeatedly, do not keep fixing individual invoices. Review how your billing contact is chosen and whether customer emails stay aligned across both platforms.

2. The display name is a duplicate

This one is especially common in B2B environments. QuickBooks requires unique Customer Display Names. If HubSpot uses the associated company name for the first contact and then another contact at that company tries to synchronize with the same name, QuickBooks can reject it as a duplicate.

The longer-term fix is usually a cleaner billing-contact policy or a different Display Name mapping, rather than repeatedly editing QuickBooks records.

3. Revenue recognition asks for a service date

If QuickBooks has revenue recognition enabled, it may require Service Dates on the invoice line items. HubSpot currently cannot add the required Service Date to HubSpot line items in the way this QuickBooks feature expects. HubSpot’s troubleshooting guidance therefore recommends handling revenue-recognition reporting separately when this issue applies.

This is one of those cases where the limitation belongs in the accounting-process discussion before the integration is deployed.

4. A HubSpot invoice was modified in QuickBooks

If someone changes financial details on a HubSpot-created invoice directly in QuickBooks, the record can fail to synchronize. HubSpot’s current guidance is to reverse those QuickBooks changes and make the financial adjustment in HubSpot instead, then allow the change to synchronize back into QuickBooks.

If the error keeps returning, the issue is probably user process rather than integration configuration. Ensure finance knows which invoices originate in HubSpot and where they are supposed to be maintained.

5. Duplicate invoice numbers appear

QuickBooks can also reject an invoice if its number is already in use. HubSpot notes that this frequently happens when the QuickBooks Custom Transaction Number setting is enabled. The recommendation is to correct the conflicting document number and turn that setting off so HubSpot and QuickBooks don’t generate conflicts.

How The Automation Strategy Group Can Help

The Automation Strategy Group helps B2B companies integrating HubSpot with QuickBooks and other finance, CRM, sales, and operational systems. Before configuring the connection, we map which system owns each record, how contacts and companies relate to QuickBooks customers, which properties need to sync, how updates should flow, how duplicate records should be handled, and which HubSpot workflows depend on the integration. 

From there, the team can configure the native QuickBooks Online integration, HubSpot Data Sync, middleware, or a custom API connection based on what the business process requires.

We also handle the work around the connector itself, including field mapping, CRM data preparation, sync filters, workflow automation, record matching, testing, failed-record handling, documentation, and ongoing optimization. 

The Automation Strategy Group is a US-based, senior-only consulting team, has been a HubSpot Solutions Partner since 2016, and holds HubSpot accreditations including Solutions Architecture Design and Custom Integration.

Need help connecting HubSpot and QuickBooks? Schedule a free consultation with one of our HubSpot integration experts.

Frequently Asked Questions

Does HubSpot integrate with QuickBooks?

HubSpot integrates directly with QuickBooks Online through its HubSpot-built Data Sync connection. The current integration can synchronize supported customer, product, invoice, credit memo, and payment information between the platforms. The exact records that move depend on the sync directions, mappings, and filters you configure.

Is the HubSpot QuickBooks integration two-way?

The HubSpot QuickBooks integration supports one-way or two-way synchronization for Contacts and Customers, Products and Services, Invoices, and Credit Memos. However, two-way sync does not mean every field or action can always be changed from either system. For example, certain financial changes to HubSpot-created invoices must still be made in HubSpot.

What data syncs between HubSpot and QuickBooks?

HubSpot QuickBooks data sync supports Contacts with Customers, Products with Products & Services, Invoices with Invoices, and Credit Memos with Credit Memos. Payment information can also move between the platforms under separate synchronization rules. The exact fields depend on the default mappings and any eligible custom mappings you configure.

Does HubSpot sync Companies to QuickBooks?

HubSpot Companies do not appear as a standalone configurable QuickBooks sync object in the current native integration. Instead, HubSpot synchronizes Contacts with QuickBooks Customers and can use the associated HubSpot Company name as the QuickBooks customer’s Display Name. QuickBooks invoices coming into HubSpot can also associate with the invoice contact’s primary company.

How often does HubSpot sync with QuickBooks Online?

HubSpot normally detects HubSpot-to-QuickBooks changes within a few minutes after the initial synchronization has completed. QuickBooks-to-HubSpot changes are detected every 30 minutes. Administrators can also use the Sync now option when they need to request the latest records manually.

Can HubSpot automatically create QuickBooks invoices?

HubSpot can automatically create QuickBooks invoices through workflows for eligible US-based Professional and Enterprise customers. The associated contact needs to meet the QuickBooks Data Sync rules, and HubSpot needs to match the relevant line items with QuickBooks products. HubSpot can also create estimates and sales receipts through supported workflow actions.

Can QuickBooks payments sync back to HubSpot?

QuickBooks payment information can sync into HubSpot, but there are limitations. A single QuickBooks payment applied across multiple invoices does not synchronize into HubSpot because HubSpot cannot split one payment across several invoices. In addition, only payments created after the QuickBooks app is connected synchronize into HubSpot.

Does HubSpot integrate with QuickBooks Desktop?

HubSpot’s native integration covered in this guide is designed for QuickBooks Online. Companies using QuickBooks Desktop will need to evaluate another integration method, which could involve middleware or a custom connection depending on the Desktop environment and required data flow.

Do I need Data Hub for the QuickBooks integration?

You do not need Data Hub simply to connect the standard QuickBooks Online integration and use its predefined mappings. However, HubSpot currently requires Data Hub Starter, Professional, or Enterprise when you want to add additional custom field mappings through Data Sync. QuickBooks custom invoice fields also have separate restrictions on which fields HubSpot can access.

When do I need a custom HubSpot QuickBooks integration?

A custom HubSpot QuickBooks integration becomes useful when the native object structure or sync rules do not support the way your business bills customers. That can include custom HubSpot objects, complicated company and billing relationships, specialized invoice logic, additional accounting systems, or data transformations the standard connector cannot handle. In those cases, a custom API or middleware workflow can extend the native setup instead of forcing the business process to fit the connector.

Your CRM Should Drive Revenue, Not Guesswork

The Blueprint 360 Audit gives you a clear, actionable roadmap across systems, automation, and reporting.

Get Your Blueprint 360 Audit

Ready to Strengthen Your Marketing Automation & CRM Strategy?

If your systems feel disconnected or underperforming, let’s fix that. Book a free strategy session and get practical guidance tailored to your business.