QB sync technical aspects

Modified on Tue, Jun 9 at 11:31 AM

Technical reference for setup teams

Short summary for implementers. 

Where settings live

ItemPurpose
appsettings.jsonSyncSettings
Which flows run, connector credentials, per-object flags
sync.State.json
Last successful sync time per object; set Overwrite to force full refresh
Logs
Desktop: qbDesktop.log and messages folder; QBO: application/Seq logging

SyncFlows and dependencies

  • List enabled flows in SyncSettings.SyncFlows.
  • RunFlowDependencies: if true, the session also runs prerequisite flows automatically in dependency order; if false, only listed flows run (order in the list matters). Sample configs in the repo use false for both Desktop and QBO — teams must list flows explicitly.
  • Flow dependency order is defined in code (FlowDescription attributes), not by the QBSyncItems constant.

QBSyncItems constant (FCX)

  • Controls which employee fields sync from QB and which become non-editable in FCX.
  • Does not control sync run order.

Common per-object flags (Desktop & QBO)

SettingEffect
UseCustomerJobForInvoices / Invoices.UseCustomerJobs
Put customer job on invoice lines
UseCustomerJobForBills / Bills.UseCustomerJobs
Put customer job on bill lines
UseCustomerJobsForTimeSheets
Job on timesheet lines (Desktop)
UseServiceItemsForTimeSheets
Service item on timesheet lines (Desktop)
UseClassForCustomerJobs
Sync class to QB customer jobs (Desktop)
AccountReceivableId / AccountPayableId
Default GL for invoice/bill allocation
EmployeeFieldForPhone / EmployeeFieldForEmail
Which QB contact field maps to FCX
EmployeesFullSyncIntervalHours
Periodic full employee refresh (Desktop)

Desktop-only technical notes

  • Independent objects sync first; dependent objects (service items, customers, jobs, invoices, vendors, bills) rely on links and prior flows.
  • Bills/invoices often process one document at a time in some directions.
  • Credit card charges and checks are separate flows from standard bills.

QBO-only technical notes

  • Authentication via OAuth token file (Connection.TokenFilePath).
  • SystemCode is typically QBO in Conterra external links.
  • Extra flows: ProjectsToQbo, ProjectLinksFromQbo, Purchases, TaxCodes, BillsToQbo / InvoicesToQbo (directional).
  • No PayrollItems, CostRates, or TimeSheets flows in the QBO integration assembly.

Was this article helpful?

That’s Great!

Thank you for your feedback

Sorry! We couldn't be helpful

Thank you for your feedback

Let us know how can we improve this article!

Select at least one of the reasons
CAPTCHA verification is required.

Feedback sent

We appreciate your effort and will try to fix the article