ServiceTitan + QuickBooks Desktop

ServiceTitan and QuickBooks Desktop, Connected Properly

ServiceTitan does not talk to QuickBooks Desktop over a live cloud API. It hands a batch to the QuickBooks Web Connector, a small Intuit program sitting on the machine that holds your company file, and that program is the only thing standing between your revenue and your books. We set the connection up, map the accounts, size the batches so they do not time out, and keep it running.

Desktop, Specifically

This page is about QuickBooks Desktop, not QuickBooks Online

If you run QuickBooks Desktop, Premier, or Enterprise on a machine in your office or on a hosted server, your ServiceTitan connection has an extra moving part that QuickBooks Online users never see: the QuickBooks Web Connector. It is a free Intuit application that runs on the same machine as your company file, polls ServiceTitan on a timer, and pulls the queued export batch into QuickBooks. Nothing reaches your books without it. When it stops, the failure is quiet, and you usually find out at month end when a week of revenue is missing.

The broad picture of how the two systems fit together, covering sales tax by jurisdiction, membership deferred revenue, technician labor allocation, and multi-location class tracking, lives on our QuickBooks and ServiceTitan integration page. This page stays narrow. It is about the Desktop path: the Web Connector, the batch export, the mapping rules that Desktop enforces more strictly than Online does, and the handful of failure modes that account for almost every broken Desktop connection we have opened up.

Everything else we have written for ServiceTitan shops, from undeposited funds that never clear to membership deferred revenue, sits on the ServiceTitan resource hub. If the books are already wrong and you need them straightened out rather than reconnected, start with ServiceTitan and QuickBooks cleanup.

How It Actually Works

Batch export, then the Web Connector

ServiceTitan does not stream transactions into QuickBooks as they happen. Someone in your office builds an export batch, reviews it, and releases it. That is by design, and it is the right design, because it keeps a human between the field and your general ledger. It also means the accuracy of your books is a function of a routine somebody has to actually run.

What is inside a batch

A ServiceTitan export batch carries four kinds of record into QuickBooks:

  • Invoices, at their full gross value, coded to the GL accounts your pricebook items are mapped to.
  • Payments, applied to those invoices, landing in Undeposited Funds unless you have told ServiceTitan otherwise.
  • Adjustment invoices, meaning credits, refunds, and corrections.
  • Bills and purchase order receipts from your vendors, which is how material cost gets into the file.

The Web Connector is the only pipe

Because QuickBooks Desktop is local software with no public cloud endpoint, ServiceTitan cannot push to it. Instead, ServiceTitan gives you a .QWC configuration file, you load that file into the QuickBooks Web Connector on the machine holding your company file, and the Web Connector polls ServiceTitan on an interval you set. When it finds a released batch, it opens the company file and writes the records in. If the Web Connector is closed, unchecked, not running, or on the wrong machine, the batch simply waits and nothing tells you.

Order matters more than people expect

Bills should be exported before the invoices that consumed the parts on them. Export the invoice first and ServiceTitan can cost the material against a stale or zero average cost, which quietly understates cost of goods sold on that job and permanently distorts the weighted average cost of the SKU. We cover this in more detail in how to sync ServiceTitan to QuickBooks.

Trusted by 25+ Contracting Businesses
The Engagement

How we set up your Desktop connection

A defined piece of work with a start and a finish. You end with a Web Connector that stays online, a chart of accounts ServiceTitan can actually hit, and a batch routine your office manager can run without calling anyone.

01

Audit both sides first

We start with a free Books Audit. We look at your ServiceTitan GL account mapping, your business units, your pricebook item mapping, your QuickBooks chart of accounts, and the current state of the Web Connector, then list every mismatch before we change anything.

02

Fix the chart of accounts

ServiceTitan can only post to accounts that exist in QuickBooks with matching names. We rebuild the mapping so income, cost of goods sold, Undeposited Funds, A/R, A/P, and Sales Tax Payable each have exactly one job, which is what prevents the 3140 error class.

03

Install the Web Connector correctly

On the machine that actually holds the company file. If you are on a hosted desktop such as Right Networks, that means the hosted server, not the laptop you use to log into it. We load the .QWC file, store the credentials, set the polling interval, and confirm the clock is synced.

04

Map business units and payment types

Business units become QuickBooks classes so you can read a P&L by trade or by location. Payment types get pointed at a merchant clearing account rather than straight at the bank, which is what makes the deposits reconcile once processor fees are taken out.

05

Run a controlled test batch

We export a small batch into a copy of your company file first, trace every record to where it landed, and confirm invoices, payments, adjustments, and bills all hit the accounts we intended. Only then do we go live on the real file.

06

Document it and hand it over

You get a written map of every account, item, business unit, and payment type, plus the batch routine and the reconciliation steps. If you would rather not own it at all, we run the export and the books for you every month.

Know Which One You Have

QuickBooks Desktop versus QuickBooks Online with ServiceTitan

The two editions reach ServiceTitan differently, and the difference decides what can break. Knowing which one you run tells you which setup you need.

QuickBooks DesktopQuickBooks Online
How ServiceTitan reaches itBatch export pulled in by the QuickBooks Web ConnectorBatch export delivered over a cloud connection
Where the company file livesA local machine or a hosted server you rentIn Intuit's cloud
Needs a program running on a machine you ownYes, the Web Connector must be running and checkedNo
Fails when the server clock driftsYes, this is a real and common failureNo
Large batches can time out mid-postYes, and they can leave a batch half postedLess common, but big batches still fail
Account and list name matchingStrict. A renamed or duplicated list name throws error 3100 or 3140Strict, with slightly friendlier error text
Long-term Intuit directionNarrowing. Migration is a decision you will faceWhere Intuit is investing
Covered on this pageYesSee the integration overview
The Desktop Rules

What a working Desktop connection actually requires

Concrete conditions. Miss one and the connection either stops or, worse, keeps running while it posts bad data.

The QuickBooks Web Connector is installed on the machine that holds the company file, is running, and the ServiceTitan application is left checked in its list. Unchecking it is the single most common reason a sync "stops for no reason".
That machine's clock is synced to real time. The Web Connector authenticates with a time-sensitive token, so a drifting clock will take the connection offline.
If you run hosted QuickBooks (Right Networks and similar), the Web Connector lives on the hosted server, not on the laptop you remote in from.
Every GL account ServiceTitan is mapped to exists in QuickBooks with the exact same name, and none of them are inactive.
Undeposited Funds, A/R, A/P and Sales Tax Payable are not also assigned to pricebook items. When they are, QuickBooks throws error 3140 and the batch fails.
Every pricebook item that can appear on an invoice has a QuickBooks item mapping. An unmapped item stops the whole batch, not just its own line.
Business units are mapped to classes, or you lose the ability to read profitability by trade, crew, or location.
Payments are routed through a merchant clearing account so processor fees can be booked, which is what stops deposits from disagreeing with the bank.
Batches are small and frequent. Daily beats weekly, and weekly beats a month-end batch that will time out.
Trusted by 25+ Contracting Businesses
Where It Breaks

The four ways a Desktop connection fails

Almost every broken ServiceTitan to QuickBooks Desktop setup we have opened up failed in one of four places. None of them are a reason to abandon the connection. They are setup problems, which means they are fixable.

The clock drifts and the Web Connector goes offline

This one catches everybody. The Web Connector signs its requests with a time-sensitive token. If the clock on the machine or hosted server holding your company file drifts away from actual time, the token no longer validates, the Web Connector marks the ServiceTitan application as offline, and it stops pulling. There is no alert, no email, and no queue backing up where you would see it. Batches just sit in ServiceTitan marked as exported to nowhere. The fix is unglamorous: turn on automatic time synchronization on that machine, confirm the time zone, and check the Web Connector is still checked in its list. We monitor this so you do not have to.

The batch is too big and it times out

The Web Connector processes a batch inside a request window. Push a month of invoices in one go, and on a busy shop that can be thousands of records, and the request will run past the window and fail. The ugly version of this is a batch that posts halfway: some invoices are in QuickBooks, some are not, and ServiceTitan believes the whole batch is done. Now you have a revenue gap that will not show up until you compare totals, which is exactly the mess described in why your ServiceTitan revenue does not match QuickBooks. Export daily. It is boring, and it works.

The mapping violates a QuickBooks rule

QuickBooks Desktop is unforgiving about list elements. Error 3140 is usually a mapping problem where a control account, most often Sales Tax Payable, Undeposited Funds, Accounts Receivable, or Accounts Payable, has been mapped to a GL account that is also assigned to an invoice item. QuickBooks refuses to let a posting account do two jobs. Error 3100 is a name collision, where the customer, vendor, or item ServiceTitan is trying to create already exists in QuickBooks, often as an inactive record you forgot about. Both are structural, both are fixable in an afternoon once you know which list element is at fault, and both stop the entire batch until they are resolved. We walk through the whole error family on ServiceTitan QuickBooks sync not working.

The connection works and the numbers are still wrong

This is the expensive one, because nothing errors. The batch exports cleanly, the Web Connector is green, and the books are still wrong, because ServiceTitan exported the full gross invoice while the bank received the amount net of processing fees. Sell a $10,000 system on a card and the bank may deposit $9,700. If that $300 is never booked, the account will not reconcile, ever. Same story with memberships recognized in full on the first of two annual visits, and with financing payouts from GreenSky or Wisetack batched in with regular card payments. A green Web Connector is not the same thing as correct books, and that is the gap our ServiceTitan bookkeeping services close.

The Question Behind The Question

Intuit is narrowing QuickBooks Desktop, and you will have to decide

We are not going to fearmonger and we are not going to quote you a shutdown date, because the dates keep moving and anyone who states one with confidence is guessing. Here is the honest picture. Intuit has been steadily narrowing the QuickBooks Desktop line. It has stopped selling several Desktop products to new United States subscribers, has retired older versions on its usual support cycle, and has put its investment squarely behind QuickBooks Online and Enterprise. The direction of travel is not ambiguous.

What that means for a shop running ServiceTitan on Desktop is simple and it is not urgent. Nobody is going to switch your company file off next Tuesday. But at some point in the next few years you are going to make a migration decision, and there are only three sensible destinations: QuickBooks Online, QuickBooks Enterprise, or, if you have grown past what QuickBooks can carry, Sage Intacct. The worst version of that decision is the one made in a hurry, in the middle of a busy season, with three years of unreconciled Undeposited Funds still sitting in the file.

The right time to migrate is when the books are clean

A migration copies your problems forward. If your Desktop file has a bloated Undeposited Funds balance, negative accounts receivable, membership revenue recognized in the wrong period, and inventory carrying a corrupted weighted average cost, all of that follows you into whatever you migrate to, and it is significantly harder to unwind in a system you do not know yet. Clean first, migrate second. That order saves real money.

So the practical advice is this: keep the Desktop connection running properly now, get the file into a state you would be happy to hand to someone else, and treat the migration as a project you plan on your own timeline rather than a fire you fight on Intuit's. We do all three. We keep the Web Connector honest today, we run the cleanup that makes the file portable, and when you are ready we run the migration and rebuild the ServiceTitan mapping on the other side so nothing is lost in the move.

Start with a free Books Audit

Tell us which QuickBooks Desktop edition you run, whether it is hosted, and where the ServiceTitan export falls apart. We will look at your actual GL mapping, your item mapping, your Web Connector configuration, and your last few batches, then show you exactly what is broken and what a clean Desktop connection looks like for your shop. No cost and no obligation.

FinTruction is based in Coppell, Texas, and works with HVAC, plumbing, electrical, roofing, and multi-trade home service companies across the United States, entirely remotely. Call us at +1-945-382-5060 or start below.

Get a Free Integration Audit
Answers

Frequently Asked Questions

Does ServiceTitan integrate with QuickBooks Desktop?

Yes. ServiceTitan supports QuickBooks Desktop, including Premier and Enterprise, through a batch export delivered by the QuickBooks Web Connector. You build a batch of invoices, payments, adjustments, and bills in ServiceTitan and release it, and the Web Connector, running on the machine that holds your company file, pulls the batch in and writes the records to QuickBooks. It is a real, supported connection, but it is a batch export rather than a live two-way sync, and it has to be set up and mapped correctly to work.

What is the QuickBooks Web Connector and why do I need it?

QuickBooks Desktop is local software with no public cloud endpoint, so ServiceTitan cannot push data to it directly. The QuickBooks Web Connector is a free Intuit application that runs on the same computer as your company file. ServiceTitan gives you a .QWC configuration file, you load it into the Web Connector, and the Web Connector polls ServiceTitan on an interval. When it finds a released batch it opens the company file and writes the records in. If the Web Connector is not running, is unchecked in its list, or is on the wrong machine, nothing moves and nothing warns you.

Why does my ServiceTitan Web Connector keep going offline?

The most common cause is clock drift. The Web Connector authenticates with a time-sensitive token, so if the clock on the machine or hosted server holding your company file drifts away from actual time, the token fails to validate and the Web Connector marks the ServiceTitan application as offline. Turn on automatic time synchronization on that machine and confirm the time zone. The second most common cause is simply that someone unchecked the ServiceTitan application in the Web Connector list, or the machine rebooted and the Web Connector never restarted.

Why does my ServiceTitan batch export time out?

The Web Connector processes each batch inside a request window. A large batch, such as a month of invoices at a busy shop, can run past that window and fail. The dangerous version is a batch that posts halfway: some invoices land in QuickBooks, some do not, and ServiceTitan considers the batch exported. That produces a revenue gap you will not notice until you compare totals. The fix is to export small batches frequently, ideally daily, rather than one large batch at month end.

What causes QuickBooks error 3140 during a ServiceTitan export?

Error 3140 is usually a mapping conflict. A control account, most often Sales Tax Payable, Undeposited Funds, Accounts Receivable, or Accounts Payable, has been mapped to a GL account that is also assigned to a pricebook item on an invoice. QuickBooks will not let a posting account serve both roles, so it rejects the transaction and the batch stops. The fix is to separate the accounts so each one has a single job, then re-export.

What causes QuickBooks error 3100 during a ServiceTitan export?

Error 3100 is a list name collision. ServiceTitan is trying to create a customer, vendor, or item that already exists in QuickBooks under the same name, very often as an inactive record nobody remembered. QuickBooks list names must be unique across active and inactive entries. Find the existing record, reactivate it or rename it, correct the mapping, and the batch will clear.

Do I run QuickBooks Desktop on a hosted server? Where does the Web Connector go?

On the hosted server itself, not on the laptop you remote in from. If you use a hosting provider such as Right Networks, the company file lives on their machine, so the Web Connector must be installed and running there. Installing it on the local machine you log in from is a common and confusing misconfiguration: it appears to be set up, and nothing ever syncs.

Is Intuit discontinuing QuickBooks Desktop, and should I migrate?

Intuit has been narrowing the QuickBooks Desktop line for some time. It has stopped selling several Desktop products to new United States subscribers, retires older versions on its usual support cycle, and is putting its investment behind QuickBooks Online and Enterprise. We will not quote you a shutdown date, because those dates keep changing. What is fair to say is that most shops on Desktop will face a migration decision in the next few years. The important part is the order of operations: clean the file first, then migrate. A migration copies your Undeposited Funds mess, your negative A/R, and your inventory cost problems forward into a system you do not know yet.

The export runs with no errors and my books are still wrong. Why?

A successful export is not the same thing as correct books. ServiceTitan exports the gross invoice value, but the bank receives the amount net of merchant processing fees, so a $10,000 card sale may deposit as $9,700. If that $300 is never booked, the account will never reconcile. The same applies to membership revenue recognized in the wrong period and to financing payouts batched in with ordinary card payments. Those are accounting configuration problems, not connection problems, and the Web Connector will report green the entire time. FinTruction is based in Coppell, Texas, and fixes this remotely for home service companies across the United States.

Proof

What Contracting Owners Say

Real results from contractors we have helped untangle their books and systems.

Rated 5.0 on Google

Trusted by 25+ construction businesses nationwide

Procore Listed on theProcore Network

They didn’t just record transactions and call it a day. They built a custom chart of accounts around how a remodeling company actually runs, did a full catch-up on years of bookkeeping inside QuickBooks Online, and now stay on top of my monthly bookkeeping and payroll. Every step, they broke it down in simple terms instead of burying me in accountant talk.

Oniel Campbell, Founder of Moonz Contracting
Oniel Campbell
Moonz Contracting Founder

FinTruction rebuilt the whole thing from the ground up, with real job costing, work in progress, and retainage. They didn’t just hand me reports and disappear; they walked me through my numbers until I understood them.

Carl Moore, Owner of Hearth & Haus
Carl Moore
Hearth & Haus Owner
Dalton Mayberry, Owner of ProperCoat Painting
Sahil and his team handle the bookkeeping and job costing for my painting business. They cleaned up my books and set up integrations that give me accurate, timely job costing with solid weekly data. Reliable, detailed, and genuinely invested in getting the numbers right.
Dalton Mayberry
ProperCoat Painting
Owner

FinTruction is the only bookkeeping team we’ve found that truly understands construction accounting and WIP reporting. They aligned our income and costs across 21 jobs and gave us full, monthly transparency. Fast, accurate, and an indispensable partner.

John Wesley Sebastian, President of B&B Concrete
John Wesley Sebastian
B&B Concrete President

When I came to FinTruction I had no financial structure. No job costing, no WIP tracking, books behind. They did a full cleanup and rebuilt job costing and WIP tracking in QuickBooks. Now I know what’s billed, what’s owed, and where every job stands.

Clay Pearson, Owner of C. Pearson Contracting Corp
Clay Pearson
C. Pearson Contracting Corp Owner
Client testimonial

Hear it straight from a contractor we work with

A couple of minutes from a contractor we support, sharing what working with FinTruction has been like and what changed once their numbers finally made sense.

  • An owner sharing their honest experience
  • From guessing to numbers they actually trust
  • Why they recommend us to other contractors
Read more reviews

Get your Web Connector honest and your Desktop books tied out

We install and configure the connection, map the GL and the pricebook, size the batches so they post cleanly, and reconcile the result. Start with a free Books Audit.

Trusted by 25+ contracting companies Response within 24 hours Free Audit, no obligation
Start here

Get your ServiceTitan books audited, free

Tell us what is broken between ServiceTitan and your books. We will look at your actual data and show you exactly where the numbers diverge, at no cost.

Add your name so we know who we are talking to.
Add your company name.
Add a valid email so we can send your report.
Add a number we can reach you on.
Pick the option that fits your business.
Tell us what is going wrong so we know where to look.

We read every submission and reach out if your books are a good fit for the Audit.