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.