Accessing QuickBooks Desktop through Conductor

With Conductor, you can read, create, or update any QuickBooks Desktop object type. Every operation is available through a single, consistent interface vis conductor.qbd.*.

We recommend using Conductor’s amazing autocomplete to discover the available operations, parameters, and responses fields.

For example:

const invoices = await conductor.qbd.invoice.query("{{END_USER_ID}}", {
  IncludeLineItems: true,
});

Supported object types

Conductor supports the following QuickBooks Desktop object types and operations. Alternatively, see QuickBooks Desktop’s official API Reference to explore the operations available for each object type.

ObjectReadCreateUpdate
Account
AgingReport
Bill
BillPaymentCheck
BillPaymentCreditCard
BillingRate
BudgetSummaryReport
BuildAssembly
Charge
Check
Class
Company
CreditCardCharge
CreditCardCredit
CreditMemo
Currency
CustomDetailReport
CustomSummaryReport
Customer
CustomerType
DateDrivenTerms
Deposit
Employee
Estimate
GeneralDetailReport
GeneralSummaryReport
InventoryAdjustment
InventorySite
Invoice
ItemDiscount
ItemFixedAsset
ItemGroup
ItemInventory
ItemInventoryAssembly
ItemNonInventory
ItemOtherCharge
ItemPayment
ItemReceipt
ItemSalesTax
ItemSalesTaxGroup
ItemService
ItemSubtotal
JobReport
JobType
JournalEntry
Lead
OtherName
PayrollDetailReport
PayrollItemWage
PayrollSummaryReport
PriceLevel
PurchaseOrder
ReceivePayment
SalesOrder
SalesReceipt
SalesRep
SalesTaxCode
SalesTaxPaymentCheck
StandardTerms
TimeReport
TimeTracking
Transaction
Transfer
TransferInventory
TxnDeleted
Vehicle
VehicleMileage
Vendor
VendorCredit
VendorType
WorkersCompCode

TypeScript for QuickBooks Desktop

In the Conductor Node.js library, every request parameter and response attribute is fully-typed with inline documentation and will autocomplete in your editor. This makes it easy to explore the API and write code that works the first time.

If you ever need to access the raw QuickBooks Desktop types, you can import them from conductor-node like so:

import { QbdTypes } from "conductor-node";

const accountAddInput: QbdTypes.AccountAdd = {
  Name: "Test Account",
  AccountType: "Bank",
  OpenBalance: "100",
};