Jobber and QuickBooks Online Sync Problems: Tax Mismatches, Missing Invoices, and the Chart of Accounts Nobody Set Up
Danilo Mališić
Founder, Adeocode · Aug 16, 2026
Your Jobber invoices and your QuickBooks books disagree, and you need it fixed today. Here is the direct answer.
A broken Jobber to QuickBooks Online sync falls into 1 of 3 failure classes. Tax settings that were never set up to match in both systems. A chart of accounts with nowhere to put field-service money. Migration damage carried in from a previous system. Each class is diagnosable in under an hour. Each one is fixable.
We build integrations for Jobber shops, which means we usually get called after the sync has been fighting the bookkeeper for months. We are independent builders and not affiliated with Jobber or Intuit. One hedge before the checks: sync behavior changes as Jobber and Intuit ship updates. Everything below describes the setups we see. The current word on any specific setting is Jobber’s help center. The help-center articles document one setting at a time, so this post starts one level up: which class you are in.
Here is the shape this takes in real life. A hiring post we read this week, from an HVAC and refrigeration shop under $1M a year that moved onto Jobber from an invoicing app, describes all three classes in one paragraph: invoices that never arrived in QuickBooks or arrived missing line items, sales tax that disagrees between the two systems because it was never fully set up in either one, and no chart of accounts built to receive field-service money. That shop is shopping for all three fixes at once. Most shops have one class. The checks below sort you.
Start here: compare one invoice on both sides
Before touching any setting, pick one recent invoice in Jobber. A taxed one, with at least two line items. Find the same invoice in QuickBooks Online and put them side by side. Compare five things:
- Does it exist in QuickBooks at all?
- Line item count. Same number of lines, same descriptions?
- Subtotal and total. To the penny.
- Tax amount. And, if you can see it, the rate and agency it was booked under.
- Where the money landed. Ask your bookkeeper which income account each line hit.
Now route yourself:
- Missing entirely, or clean after some date and broken before it: migration damage. Class three.
- Present, but the tax disagrees: tax setup. Class one.
- Present, totals match, but revenue sits in one generic account: mapping. Class two.
- Present and matching: your sync works today. The problem is historical, which is still class two or three, just bounded.
Failure class 1: tax was never set up to match
The symptoms: small dollar differences that appear only on taxed invoices. Jobber says you collected one tax number for the month and the QuickBooks liability report says another. Filing time arrives and nobody trusts either figure.
The cause is structural. Jobber calculates tax on the invoice. QuickBooks records tax as a liability owed to a named agency. For the two to agree, the rates and agencies have to correspond. In the setups we see, the history is short. Someone created a tax rate in Jobber on day one, typed a percentage, and moved on. Nobody built the matching agency and rate in QuickBooks, or QuickBooks was left computing its own tax and the two calculations drift.
Three checks, about twenty minutes:
- List every tax rate Jobber has, then every rate and agency QuickBooks has. Match them by hand, name and percentage. An orphan on either side is a leak.
- Pull last month’s sales tax liability report in QuickBooks and compare it to Jobber’s number for the same month. A gap means taxed invoices are syncing without their tax, or not syncing at all.
- Check your sync settings for how tax is handled. We are deliberately not naming toggles here, because they change. What you are verifying: the sync sends tax as tax, and QuickBooks knows which agency owns it. Jobber’s help center documents the current behavior.
The fix direction: pick one system as the authority on rates and make the other match it exactly. Then run the one-invoice test again on a fresh invoice and confirm the tax line agrees to the penny.
Failure class 2: a chart of accounts with nowhere to put the data
The symptoms: the books balance, and they are useless. Run last month’s P&L and all your revenue is one row. Or an account with a name like uncategorized income, or a generic services default, is quietly absorbing transactions.
That default account is the tell. A sync needs a destination account for every line item it sends. When nobody maps products and services to income accounts, everything falls into the catch-all, and every invoice that syncs lands in one undivided pile. The books close, the bank reconciles, and the owner still cannot see service revenue apart from install revenue apart from materials.
Three checks:
- Run last month’s P&L in QuickBooks. If one income row holds nearly everything, mapping was never done.
- Look for the suspense or uncategorized account. In the setups we see, that account is where unmapped items land. Its transaction list is a to-do list of the skipped mappings.
- Open the products and services list in QuickBooks. Read what income account each item points to. If they all point at one, that is the whole story.
The fix direction: this is a bookkeeping design job. Build the accounts a field-service shop needs first: the short list is two sections down. Map each item to its account, and the sync has somewhere to put things. Until the accounts exist, no setting will save you.
Failure class 3: migration damage from the system you left
The symptoms cluster around one date: your cutover. Invoices from before it are missing in QuickBooks or arrived thin, with line items gone. Customers exist twice. The month you switched is the month the numbers stopped tying out.
The cause: migrations import records without the full structure a sync needs. An invoice imported from an invoice-first app can arrive without the item and tax detail that Jobber-native invoices carry. In the setups we see, records like that sync incompletely, or fail without an error anyone notices. Shops in this class tend to blame the sync for weeks while the damage actually came in with the import.
Three checks:
- Pick three invoices from before the cutover and three from after. Run the one-invoice comparison on all six. If the after set is clean, your sync works and the damage is bounded to the import window.
- Count invoices per month in each system for the past year. The months where the counts disagree are the months to reconcile. This goes faster with the data out of both systems. Our guide to exporting data from Jobber covers every route.
- Search QuickBooks customers for near-duplicate names. Imports create twins. A payment applied to the wrong twin is why a customer shows a balance they already paid.
The good news about this class: it is bounded. The cause was a one-time event, so once the import window is reconciled, it stays fixed.
What fixing it costs: the three-rung ladder
Three tiers exist, and we sell the top one, so read our placement of it knowing that. Most sync problems never need it.
| Fix | When it is enough | What it costs | What it cannot fix |
|---|---|---|---|
| DIY with the checks above | One failure class, caught early, weeks of damage rather than months | Your time. An afternoon to a weekend | It will not rebuild a chart of accounts or reconcile a year of half-synced invoices |
| Bookkeeper cleanup engagement | Mixed classes, months of transactions to reconcile, tax filings to correct | Freelance-marketplace listings we have seen price these around $450 fixed. Last verified 2026-08-16. | The sync re-breaks if the business shape does not fit it. Cleanup corrects the past, and it cannot change what the sync moves |
| Rebuilt integration (custom bridge) | The native sync’s shape does not fit the shop: deposits, divisions, job costing | Project work, priced in the thousands. See what we build | It does not clean historical books. If your books are wrong today, cleanup comes first no matter what you build after |
The middle rung is where most shops land, and it is money well spent when the damage spans months. Hand the bookkeeper this post, the one-invoice test results, and the export CSVs, and the engagement gets shorter.
The chart of accounts a field-service shop actually needs
Prevention is a design question, and the design principles are short. Your accountant picks the names. The structure is what matters:
- Revenue split by service line. Service calls, installs, and maintenance agreements as separate income accounts. This is what makes the P&L answer questions.
- Materials COGS as its own account, separate from labor. Parts margin and labor margin move for different reasons, and one blended number hides both.
- Subcontractor COGS as its own account. The month you sub out overflow work should show in the books. It is the month your margin structure changed.
- Few enough accounts that people use them. A forty-account revenue tree gets ignored by week three. Ignored accounts recreate the catch-all you just cleaned.
With that structure mapped, gross margin by service line becomes a P&L read instead of a spreadsheet project. Margin by individual job is a harder problem, because it needs operational data the sync does not carry. Which brings us to the last question.
When the native sync is the wrong tool
For a shop with simple tax, invoicing whole jobs, the native sync set up correctly is the answer. If that is you, stop at the second rung of the ladder and keep your money. We mean that.
The structural misfit signals are different from broken settings. No amount of remapping fixes them:
- Deposits and progress billing that your accountant needs recorded differently than the sync records them in your setup.
- Multiple divisions or entities that need revenue routed by rules a flat item-to-account mapping cannot express.
- Job costing that needs data the sync does not move. Visits, timesheets, and crew assignments stay behind, so per-job margin cannot be assembled on the QuickBooks side. We wrote up the full job-costing problem separately.
- You have rebuilt the mapping twice and it broke again. That is the sync telling you the business shape and the sync shape disagree.
“We had a bunch of different tools that technically worked, but nothing really talked to each other. Danilo and his team came in, figured out how everything worked, and built the missing pieces.”
Owner, HVAC and plumbing company. Client name shared on a call.
A custom bridge reads from Jobber’s API and writes to your books under your rules. It is real work with real constraints. The API is gated to Jobber’s top plan, and our Jobber pricing guide covers the tiers. The API also meters everything you pull, and we measured the meter in production in our Jobber API rate limits post. For the full menu of what connects to what, start with the honest guide to Jobber integrations.
Where to start
Run the one-invoice test today. It costs nothing and takes twenty minutes with your bookkeeper on the phone. It converts “the sync is broken” into a named problem: tax setup, mapping, or migration damage. Most shops fix it at the first or second rung of the ladder.
If your test points at the third rung, the shape problem, that is our lane. Our integrations page covers the bridges we build between Jobber, QuickBooks, and the rest of a shop’s stack. Or book a discovery call and bring your six-invoice comparison. If a bookkeeper can fix it for a few hundred dollars, we will say exactly that.

Talk to the founder
Bring us the workflow that doesn't fit
Every discovery call is with Dan, who wrote this and builds these systems. He stays your contact through the whole engagement: no sales team, no handoffs. If the tools you already pay for cover it, he'll tell you that too, and the call costs nothing.
Three causes cover it. Sales tax that was never set up to correspond between the two systems. Line items landing in a default or catch-all income account because no mapping was done. Or damage from a migration out of a previous system. Compare one recent invoice side by side in both systems, field by field. The field that disagrees first names your class.
Two systems, two tax setups. Jobber calculates tax on the invoice, while QuickBooks records tax as a liability owed to a named agency. For the numbers to agree, the rates and agencies have to correspond. In the shops we see with tax drift, one side was never fully set up. List every tax rate in each system, then compare a month of QuickBooks tax liability against what Jobber collected. Match them by hand, name and percentage.
Treat a reconnect as a last resort. Disconnecting and reconnecting is possible in the setups we see, but a fresh sync does not clean bad data. It can create duplicate customers and invoices on top of the mess you already have. Fix the tax setup and account mapping first, and export both systems as a backup. Check Jobber's current docs for what a reconnect re-sends.
Three tiers. The diagnostic checks are free and take an afternoon. A bookkeeper cleanup engagement covers months of reconciling. Listings we have seen on freelance marketplaces price this around $450 fixed as of August 2026. A rebuilt integration, for shops whose shape does not fit the native sync, is project work priced in the thousands. Most shops stop at tier two.
Match the fixer to the failure class. Tax setup, account mapping, and migration cleanup are bookkeeping work. A bookkeeper who knows QuickBooks Online can close all three. A developer earns their fee only when the sync is the wrong shape for the business. That means deposits recorded wrong, multiple divisions, or job costing that needs data the sync does not carry. Start with the bookkeeper.
Financial records, in the setups we see: customers, invoices, and payments. That covers revenue and receivables. The operational side stays behind: visits, schedules, crew assignments, and timesheets. So questions like revenue per crew or margin per job cannot be answered from QuickBooks alone. The sync is accounting plumbing. Check Jobber's current docs for the exact list your setup moves.
You may like these

Job Costing in Jobber: Getting Per-Job Gross Margin When Jobber Has the Jobs and QuickBooks Has the Costs
Aug 16, 2026
Five systems, one margin number. Jobber has the jobs. QuickBooks has the costs. The margin the owner trusts lives in a spreadsheet only the owner maintains. Three real ways to close the gap, compared for accuracy, weekly effort, and what breaks each one.
Read more
How to Export Data From Jobber (And What You Can't)
Aug 14, 2026
Jobber exports data one CSV report at a time. There is no bulk export and no reporting API, which is why so many shops run a weekly spreadsheet ritual to stitch reports together. The three real ways to get your data out: manual CSV, middleware, and a custom API pull, with the honest limits of each.
Read more
Jobber Integrations: The Honest Guide to What Connects and What's Gated
Aug 1, 2026
Jobber integrations come in three tiers: native marketplace apps (QuickBooks, Gusto, Zapier, available on mid plans), Zapier automations (good for notifications, weak for live two-way data), and custom API integrations, which require the Plus plan at $399 to $529 per month billed annually. Most owners hit the ceiling at tier two without knowing tier three has a paywall. Pricing verified August 1, 2026.
Read more
Jobber Pricing (2026): What It Really Costs Your Business
Jul 25, 2026
Jobber costs $21 to $371 per month billed annually, or $49 to $699 month-to-month, across four plans that are now priced by team size: Core (1 user), Connect (1-15 users), Grow (1-15 users), and Plus (5-15 users). Every extra user is $29/mo on any plan, and API access for custom integrations is gated to the Plus plan. Add-ons like the Marketing Suite ($79/mo) and card processing at 2.9% + 30¢ sit on top of the subscription. For crews under 15 people it's one of the cheapest full-featured field service platforms. The real costs show up in the add-on stack and the integration gate, not the sticker.
Read more