BuildOps can sync Departments to Classes on QuickBooks Online invoices, but the mapping must be configured first. This article walks through the full setup.
Prerequisites
You have a QuickBooks Online integration active in BuildOps.
QBO Classes have already been created in QuickBooks Online and imported into BuildOps.
Setup Steps
Step 1: Enable Class Tracking in QuickBooks Online
In QuickBooks Online, go to the Gear icon > Account and Settings > Advanced, then enable Class Tracking.
Important: Make sure QBO Class Tracking is set to "One to each row in transaction" (not "One to entire transaction"). Using "One to entire transaction" while BuildOps exports line-level classes can cause sync issues.
Step 2: Map Each Department to a QBO Class in BuildOps
In BuildOps, go to Company Settings.
Open the Departments section.
Click the three-dot menu next to a department and select Edit.
In the department edit screen, select the matching QBO Class from the Class field.
Save the department.
Repeat for each department that should map to a QBO Class.
Step 3: Verify Invoice Lines Use the Correct Department
On each invoice, ensure every line item has the correct BuildOps Department selected. When a line is assigned a department that has a Class mapped to it, the exported invoice line will show that Class in QuickBooks Online.
Step 4: Test the Export
Export a test invoice and verify that the Class field is populated correctly on the invoice lines in QuickBooks Online.
Best Practice
Each BuildOps Department should map to exactly one QBO Class. If one department needs to represent multiple reporting classes in QBO, split it into separate departments — one per class.
If Classes Are Not Populating After Setup
Check the following:
The Department → Class mapping is missing or not saved in BuildOps (Company Settings > Departments > Edit).
The mapped QBO Class is inactive or deleted in QuickBooks Online.
QBO Class Tracking is configured as "One to entire transaction" instead of "One to each row in transaction".

