Connector Details
Name | Value |
---|---|
Platform | QuickBooks Desktop |
Auth Type | On-Premise |
Direction | Bidirectional |
Tap Metrics | Usage: |
Target Metrics | Usage: |
Unified Schema |
Overview
Quickbooks Desktop is on-premise accounting software. It is a distinct product from Quickbooks Online. The hotglue Quickbooks Desktop connector is an installed program (.exe) that is run on the same machine that manages the Quickbooks company file. While running, the connector allows you to read and write data like you would with a normal cloud connector.Enable and set up your connector in hotglue
Set up your flow
To utilize the Quickbooks Desktop connector, you first need to add Quickbooks Desktop to a flow. You only need to do this once.- Click
Add Flow
on the left-side toolbar. - Give your flow a name and description, and choose
Source Flow
. - After creating your flow, go to the
Sources
tab and click on Quickbooks Desktop.
- Click
Add Flow
on the left-side toolbar. - Give your flow a name and description, and choose
Target Flow
. - After creating your flow, go to the
Targets
tab and click on Quickbooks Desktop.
Set up your tenant
Unlike cloud connectors, which offload authentication to the user, Quickbooks Desktop authentication requires you to make two API requests per tenant.1
Link the tenant
The first request is a POST to /linkedSources with a config object. This request “links” the tenant to your read flow, and creates the tenant if it doesn’t already exist.
cURL
2
Generate the connector password
The next request will return the “connector password” for your configured user. Your tenant will use the connector password to authenticate their connector on their machine.Once your connector password is generated, you are ready to run the connector and start running jobs!
If you haven’t generated a signing key before, this request will error with:
No signing key has been created for this environment. To resolve, go to
Settings
> API Keys
, and click Generate Signing Key
. 3
Optional: Enable additional Quickbooks company files
After you generate a config and password for one company, you can add additional company files for the connector to sync. This is done by utilizing subtenants.Every time the connector runs on its cycle (usually every 60 seconds), it checks if the connected tenant has subtenants. If subtenants exist, it iterates through processing for each subtenant.Once enabled in Settings > Widget, you can create subtenants via the syntax:The default subtenant delimeter in all hotglue environments is then the URL of a subtenant creation request should look like:
_
. That means if your initial POST /linkedSources
looks like:NOTE: Do not generate connector passwords for subtenants. Subtenants are created via new linkedSource entries (Step 1) ONLY.
End-user instructions
Requirements
1. The Quickbooks Desktop Connector and Password 2. QuickBooks Desktop application Only Windows versions are supported. You can obtain a 30-day free trial via Intuit’s website. 3. QuickBooks SDK This must be downloaded on the same machine as the connector. You can install the latest from Intuit’s Website.Run the connector
The Quickbooks Desktop connector is packaged as a .exe file. It is signed with an Extended Validation Code Signing Certificate issued by Sectigo, meaning it is verified and cannot be tampered with.
1
Download the connector launcher file.
2
(Optional) Move the connector launcher to your startup folder
This ensures that the connector runs automatically when you restart your machine. To configure this:
- Right click the windows icon on the bottom left
- Select
run
, then typeshell:startup
> OK - This will open your startup folder. Drag the launcher from your downloads folder to here.
3
Run the connector launcher
Right-click >
Run as administrator
4
Enter the connector password
After the connector boots up, you will see a dialog requesting the connector password. Enter the password.
Connector Capabilities
The QuickBooks Desktop connector supports both read and write. Learn more below.Read
To read data from QuickBooks Desktop, you simply configure thetables
section in the config. A list of supported objects for read is provided below.
Supported Objects
- profit_and_loss
- balance_sheet_detail
- transaction_list
- balance_sheet_summary
- profit_and_loss_budget
- bill
- class
- customer
- vendor
- account
- check
- item
- invoice
- journal_entry
- sales_receipt
- purchase_order
- credit_memo
- sale_order
- price_level
- unit_of_measure_set
- sales_tax_code
- item_sales_tax
Write
The QuickBooks Desktop connector also supports writing objects, using JSON files that follow the qbXML raw schema. When writing data to QuickBooks Desktop, ensure that the
.json
files are written to the etl-output
folder in your jobs. Otherwise the connector will not process them. File Formatting
Currently the connector supports onlyJSON
files, and must follow the following criteria:
- Files must be named following the convention
<object>(-<suffix>).json
, where:<object>
is the lowercase name of the connector object (e.g.,customer
,invoice
)-<suffix>
is optional and can be any descriptive string (e.g.,-may
,-20250715
)
✅ Valid File Names | ❌ Invalid File Names |
---|---|
customer.json | Customer.json |
customer-may.json | CustomerAddRq.json |
customer-20250715.json |
- All keys in the JSON file must appear in exactly the same order as shown in the official qbXML documentation. For example:
Supported Objects
Below is a list of the hotglue QBD connector object name, and the corresponding qbXML request that it uses.Connector Object Name | qbXML Request |
---|---|
customer | CustomerAddRq |
invoice | InvoiceAddRq |
bill | BillAddRq |
sales_order | SalesOrderAddRq |
credit_memo | CreditMemoAddRq |
vendor | VendorAddRq |
vendor_credit | VendorCreditAddRq |
item_inventory | ItemInventoryAddRq |
item_noninventory | ItemNonInventoryAddRq |
sales_receipt | SalesReceiptAddRq |
journal_entry | JournalEntryAddRq |
item_sales_tax | ItemSalesTaxAddRq |