The QuickBooks Desktop SDK supports most of the report types, report customizations, and many of the report filters currently found in QuickBooks. The SDK also supports the Custom Summary and Custom Transaction Detail reports, which can be used when no preset report type exists to fill a given need. This page lists the reports your applications can request through the SDK.
For efficiency and convenience, the SDK groups QuickBooks reports into a number of logical categories. Each category has a corresponding request and response message, as shown in the following table.
Category | Request name | Response name |
---|---|---|
Aging | AgingReportQueryRq | AgingReportQueryRs |
Budget Summary | BudgetSummaryReportQueryRq | BudgetSummaryReportQueryRs |
Custom Detail | CustomDetailReportQueryRq | CustomDetailReportQueryRs |
Custom Summary | CustomSummaryReportQueryRq | CustomSummaryReportQueryRs |
General Detail | GeneralDetailReportQueryRq | GeneralDetailReportQueryRs |
General Summary | GeneralSummaryReportQueryRq | GeneralSummaryReportQueryRs |
Job | JobReportQueryRq | Job ReportQueryRs |
Payroll Detail | PayrollDetailReportQueryRq | PayrollDetailReportQueryRs |
Payroll Summary | PayrollSummaryReportQueryRq | PayrollSummaryReportQueryRs |
Time | TimeReportQueryRq | TimeReportQueryRs |
All reports in a given category have similar customizable data. (The reports themselves, however, may differ widely from each other.)
The aging reports category includes summary and detail reports related to aging criteria.
AP Aging Detail |
AP Aging Summary |
AR Aging Detail |
AR Aging Summary |
Collections Report |
An “X” in the column indicates that this is a valid request option. Each table contains reports for a given report category.
Report | Include Columns | ReportAgingAsOf | IncludeAccounts |
---|---|---|---|
AP Aging Detail | Supports all | X | |
AP Aging Summary | (none) | X | |
AR Aging Detail | Supports all | X | |
AR Aging Summary | (none) | X | |
Collections Report | Supports all | X | X |
ReportAgingAsOf is an enum (Today, ReportEndDate); in this table an “X” indicates the SDK supports this report option. IncludeAccounts is also an enum (InUse or All);as in QuickBooks, this option is supported only in the Collections Report.
The budget summary reports category consists of all summary budget reports.
Balance Sheet Budget Overview |
Balance Sheet Budget vs. Actual |
Profit and Loss Budget Overview |
Profit and Loss Budget vs. Actual |
Profit and Loss Budget Performance |
The general detail reports category consists exclusively of transaction detail reports.
1099 Detail |
Audit Trail |
Balance Sheet Detail |
Check Detail |
Customer Balance Detail |
Deposit Detail |
Estimates by Job |
Expense by Vendor Detail |
General Ledger |
Income by Customer Detail |
Income Tax Detail |
Inventory Valuation Detail |
Job Progress Invoices vs. Estimates |
Journal |
Missing Checks |
Open Invoices |
Open POs |
Open POs by Job |
Open Sales Order By Customer |
Open Sales Order By Items |
Pending Sales |
Profit and Loss Detail |
Purchase by Item Detail |
Purchase by Vendor Detail |
Sales by Customer Detail |
Sales by Item Detail |
Sales by Rep Detail |
Transaction Detail by Account |
Transaction List by Customer |
Transaction List by Date |
Transaction List by Vendor |
Unbilled Costs by Job |
Unpaid Bills Detail |
Vendor Balance Detail |
Report name | Dates Allowed | Account Filter | Include- Accounts | Report- Balance- AsOf |
---|---|---|---|---|
1099Detail | X | InUse | Current | |
AuditTrail | X | None | None | |
BalanceSheetDetail | X | All | Current | |
CheckDetail | X | InUse | Current | |
CustomerBalanceDetail | X | InUse | Current | |
DepositDetail | X | InUse | Current | |
EstimatesByJob | X | InUse | Current | |
ExpenseByVendorDetail | X | InUse | Current | |
GeneralLedger | X | All | Current | |
IncomeByCustomerDetail | X | InUse | Current | |
IncomeTaxDetail | X | InUse | Current | |
InventoryValuationDetail | X | InUse | Current | |
JobProgressInvoicesVs- Estimates | ||||
Journal | X | InUse | Current | |
MissingChecks | X | Required | None | None |
OpenInvoices | X | InUse | Current | |
OpenPOs | X | InUse | Current | |
OpenPOsByJob | X | InUse | Current | |
OpenSalesOrderByCustomer | X | InUse | Current | |
OpenSalesOrderByItem | X | InUse | Current | |
PendingSales | X | InUse | Current | |
ProfitAndLossDetail | X | InUse | Current | |
PurchaseByItemDetail | X | InUse | Current | |
PurchaseByVendorDetail | X | InUse | Current | |
SalesByCustomerDetail | X | InUse | Current | |
SalesByItemDetail | X | InUse | Current | |
SalesByRepDetail | X | InUse | Current | |
TxnDetailByAccount | X | InUse | Current | |
TxnListByCustomer | X | InUse | Current | |
TxnListByDate | X | InUse | Current | |
TxnListByVendor | X | InUse | Current | |
UnbilledCostsByJob | X | InUse | Current | |
UnpaidBillsDetail | X | InUse | Current | |
VendorBalanceDetail | X | InUse | Current |
Values shown for IncludeAccount and ReportBalanceAsOf are the default values used by QuickBooks if not specified in the request. “None” means the report doesn’t use the setting.
The general summary reports category is the largest category for summary reports. In addition to common customizations, the reports within this category can be customized by the number of columns that are returned and by period comparisons for the data in the report.
Balance Sheet Previous Year Comparison |
Balance Sheet Standard |
Balance Sheet Summary |
Customer Balance Summary |
Expense by Vendor Summary |
Income by Customer Summary |
Income Tax Summary |
Inventory Stock Status by Item |
Inventory Stock Status by Vendor |
Inventory Valuation Summary |
Physical Inventory Worksheet |
Profit and Loss by Class |
Profit and Loss by Job |
Profit and Loss Previous Year Comparison |
Profit and Loss Standard |
Profit and Loss YTD Comparison |
Purchase by Item Summary |
Purchase by Vendor Summary |
Sales by Customer Summary |
Sales by Item Summary |
Sales by Rep Summary |
Sales Tax Liability |
Sales Tax Revenue Summary |
Trial Balance |
Vendor Balance Summary |
*All reports except PhysicalInventoryWorksheet also support macro/custom Dates
Dates includes TotalOnly, Day, Week, TwoWeek, FourWeek, HalfMonth, Month, Quarter, Year. Reports support either all dates or no dates.
All report types support the value “Total Only” for SummarizeColumnsBy.
Report | Payee | Rep | Class | ItemType | ItemDetail |
---|---|---|---|---|---|
BalanceSheetPrevYearComp | |||||
BalanceSheetStandard | |||||
BalanceSheetSummary | |||||
CustomerBalanceSummary | |||||
ExpenseByVendorSummary | |||||
IncomeByCustomerSummary | |||||
IncomeTaxSummary | |||||
InventoryStockStatusByItem | |||||
InventoryStockStatusByVendor | |||||
InventoryValuationSummary | |||||
PhysicalInventoryWorksheet | |||||
ProfitAndLossByClass | X | X | X | X | X |
ProfitAndLossByJob | X | X | X | X | X |
ProfitAndLossPrevYearComp | X | X | X | X | X |
ProfitAndLossStandard | X | X | X | X | X |
ProfitAndLossYTDComp | X | X | X | X | X |
PurchaseByItemSummary | X | X | X | ||
PurchaseByVendorSummary | X | X | X | X | |
SalesByCustomerSummary | X | X | X | X | |
SalesByItemSummary | X | X | X | ||
SalesByRepSummary | X | X | X | X | |
SalesTaxLiability | |||||
SalesTaxRevenueSummary | X | X | X | X | X |
TrialBalance | |||||
VendorBalanceSummary |
VendorBalanceSummary
Report | ShipMethod | Terms | Payment- Method | SalesTax- Code | Account |
---|---|---|---|---|---|
BalanceSheetPrevYearComp | |||||
BalanceSheetStandard | |||||
BalanceSheetSummary | |||||
CustomerBalanceSummary | |||||
ExpenseByVendorSummary | |||||
IncomeByCustomerSummary | |||||
IncomeTaxSummary | |||||
InventoryStockStatusByItem | |||||
InventoryStockStatusByVendor | |||||
InventoryValuationSummary | |||||
PhysicalInventoryWorksheet | |||||
ProfitAndLossByClass | X | X | X | X | |
ProfitAndLossByJob | X | X | X | X | |
ProfitAndLossPrevYearComp | X | X | X | X | |
ProfitAndLossStandard | X | X | X | X | |
ProfitAndLossYTDComp | X | X | X | X | |
PurchaseByItemSummary | X | X | X | X | |
PurchaseByVendorSummary | X | X | X | X | |
SalesByCustomerSummary | X | X | X | X | |
SalesByItemSummary | X | X | X | X | |
SalesByRepSummary | X | X | X | X | |
SalesTaxLiability | |||||
SalesTaxRevenueSummary | X | X | X | X | |
TrialBalance | |||||
VendorBalanceSummary |
Report name | ShipMethod | Terms | Payment-Method | SalesTax-Code | Account |
---|---|---|---|---|---|
Report | Subcolumns | Return Rows | Return Columns | Report Calendar | Report Basis |
BalanceSheetPrevYearComp | X | NonZero | ActiveOnly | FiscalYear | X |
BalanceSheetStandard | X | NonZero | ActiveOnly | FiscalYear | X |
BalanceSheetSummary | X | NonZero | ActiveOnly | FiscalYear | X |
CustomerBalanceSummary | X | NonZero | ActiveOnly | FiscalYear | no |
ExpenseByVendorSummary | X | ActiveOnly | ActiveOnly | FiscalYear | X |
IncomeByCustomerSummary | X | ActiveOnly | ActiveOnly | FiscalYear | X |
IncomeTaxSummary | no | ActiveOnly | ActiveOnly | TaxYear | X |
InventoryStockStatusByItem | no | no | no | no | no |
InventoryStockStatusByVendor | no | no | no | no | no |
InventoryValuationSummary | no | no | no | no | no |
PhysicalInventoryWorksheet | no | no | no | no | no |
ProfitAndLossByClass | X | ActiveOnly | ActiveOnly | FiscalYear | X |
ProfitAndLossByJob | X | ActiveOnly | ActiveOnly | FiscalYear | X |
ProfitAndLossPrevYearComp | X | ActiveOnly | ActiveOnly | FiscalYear | X |
ProfitAndLossStandard | X | ActiveOnly | ActiveOnly | FiscalYear | X |
ProfitAndLossYTDComp | X | ActiveOnly | ActiveOnly | FiscalYear | X |
PurchaseByItemSummary | X | NonZero | ActiveOnly | FiscalYear | X |
PurchaseByVendorSummary | X | ActiveOnly | ActiveOnly | FiscalYear | X |
SalesByCustomerSummary | X | ActiveOnly | ActiveOnly | FiscalYear | X |
SalesByItemSummary | X | ActiveOnly | ActiveOnly | FiscalYear | X |
SalesByRepSummary | X | ActiveOnly | ActiveOnly | FiscalYear | X |
SalesTaxLiability | no | ActiveOnly | ActiveOnly | Calendar- Year | X |
SalesTaxRevenueSummary | X | ActiveOnly | ActiveOnly | Calendar- Year | X |
TrialBalance | no | ActiveOnly | ActiveOnly | FiscalYear | X |
VendorBalanceSummary | X | NonZero | ActiveOnly | FiscalYear | X |
Subcolumns is a Boolean; either return subcolumns or do not return subcolumns. ReportCalendar can be FiscalYear, CalendarYear, or TaxYear.
The job reports category includes both summary and transaction detail reports. They can be customized only by date range, by column summarization, and by common filters. Some job reports require a customer:job reference in order to work.
Item Estimates vs. Actual |
Item Profitability |
Job Estimates vs. Actuals Details |
Job Estimates vs. Actuals Summary |
Job Profitability Detail |
Job Profitability Summary |
Report name | SummarizeColumnsBy | Subcolumns | Entity Filter |
---|---|---|---|
ItemEstimatesVsActuals | Dates and Class | X | |
ItemProfitability | Dates and Class | X | |
JobEstimatesVsActualsDetail | Dates and Class | X | Required |
JobEstimatesVsActualsSummary | Dates and Class | X | |
JobProfitabilityDetail | Dates and Class | X | Required |
JobProfitabilitySummary | Dates and Class | X |
Dates includes TotalOnly, Day, Week, TwoWeek, FourWeek, HalfMonth, Month, Quarter, Year. Reports support either all dates or no dates.
Payroll detail reports can be generated if your application is accessing a company file that is currently signed up for a subscription to a payroll service. (If your application is not signed up, it will receive an error when it attempts to generate a report in this category.)
The restrictions noted above about payroll reports requiring the use of the Intuit Payroll service do not apply to the QuickBooks sample companies. You can still test out these reports on the sample companies without subscribing to the payroll service. For all other companies, however, the company must be subscribed.
Employee State Taxes Detail |
Payroll Item Detail |
Payroll Review Detail |
Payroll Transaction Detail |
Payroll Transactions by Payee |
Payroll summary reports can be generated if your application is accessing a company file that is currently signed up for a subscription to a payroll service. (If your application is not signed up, it will receive an error when it attempts to generate a report in this category.)
The restrictions noted above about payroll reports requiring the use of the Intuit Payroll service do not apply to the QuickBooks sample companies. You can still test out these reports on the sample companies without subscribing to the payroll service. For all other companies, however, the company must be subscribed.
Employee Earnings Summary |
Payroll Liability Balances |
Payroll Summary |
The time reports category includes summary and detail reports related by time. Summarized columns can be customized in these reports.
Time by Item |
Time by Job Detail |
Time by Job Summary |
Time by Name |
Report name | SummarizeColumnsBy | Report Calendar | Return Rows | Return Columns |
---|---|---|---|---|
TimeByItem | Dates only | X | X | X |
TimeByJobDetail | no columns | |||
TimeByJobSummary | Dates only | X | X | X |
TimeByName | Dates only | X | X | X |
Time Reports do not support AccountFilter or TxnTypeFilter.
ColType | IncludeColumn | DataType |
---|---|---|
Account | X | STRTYPE |
Addr1 | STRTYPE | |
Addr2 | STRTYPE | |
Addr3 | STRTYPE | |
Addr4 | STRTYPE | |
Addr5 | STRTYPE | |
Aging | X | INTTYPE |
Amount | X | AMTTYPE |
AmountDifference | X | AMTTYPE |
AverageCost | X | AMTTYPE |
BilledDate | X | DATETYPE |
BillingStatus | X | ENUMTYPE |
Blank | STRTYPE | |
CalculatedAmount | X | AMTTYPE |
Class | X | STRTYPE |
ClearedStatus | X | ENUMTYPE |
CostPrice | X | AMTTYPE |
CreateDate | X | DATETYPE |
Credit | X | AMTTYPE |
CustomField | X | STRTYPE |
Date | X | DATETYPE |
Debit | X | AMTTYPE |
DeliveryDate | X | DATETYPE |
DueDate | X | DATETYPE |
Duration | X | TIMEINTERVAL- TYPE |
EarliestReceiptDate | DATETYPE | |
EstimateActive | X | ENUMTYPE |
FOB | X | STRTYPE |
IncomeSubjectToTax | X | AMTTYPE |
Invoiced | X | QUANTYPE |
IsAdjustment | BOOLTYPE | |
Item | X | STRTYPE |
ItemDesc | X | STRTYPE |
ItemVendor | STRTYPE | |
Label | STRTYPE | |
LastModifiedBy | X | STRTYPE |
Memo | X | STRTYPE |
ModifiedTime | X | STRTYPE |
Name | X | STRTYPE |
NameAccountNumber | X | STRTYPE |
NameAddress | X | STRTYPE |
NameCity | X | STRTYPE |
NameContact | X | STRTYPE |
NameEmail | X | STRTYPE |
NameFax | X | STRTYPE |
NamePhone | X | STRTYPE |
NameState | X | STRTYPE |
NameZip | X | STRTYPE |
OpenBalance | X | AMTTYPE |
OriginalAmount | X | AMTTYPE |
PaidAmount | X | AMTTYPE |
PaidStatus | X | STRTYPE |
PaidThroughDate | X | DATETYPE |
PaymentMethod | X | STRTYPE |
PayrollItem | X | STRTYPE |
Percent | PERCENTTYPE | |
PercentChange | PERCENTTYPE | |
PercentOfTotalRetail | PERCENTTYPE | |
PercentOfTotalValue | PERCENTTYPE | |
PhysicalCount | INTTYPE | |
PONumber | X | STRTYPE |
PrintStatus | X | STRTYPE |
ProgressAmount | X | AMTTYPE |
ProgressPercent | X | PERCENTTYPE |
Quantity | X | QUANTYPE |
QuantityAvailable | X | QUANTYPE |
QuantityOnHand | X | QUANTYPE |
QuantityOnOrder | QUANTYPE | |
QuantityOnSalesOrder | X | QUANTYPE |
ReceivedQuantity | X | QUANTYPE |
RefNumber | X | STRTYPE |
ReorderPoint | X | QUANTYPE |
RetailValueOnHand | AMTTYPE | |
RunningBalance | X | AMTTYPE |
SalesPerWeek | QUANTYPE | |
SalesRep | X | STRTYPE |
SalesTaxCode | X | STRTYPE |
ShipDate | X | DATETYPE |
ShipMethod | X | STRTYPE |
ShipToAddr1 | STRTYPE | |
ShipToAddr2 | STRTYPE | |
ShipToAddr3 | STRTYPE | |
ShipToAddr4 | STRTYPE | |
ShipToAddr5 | STRTYPE | |
SONumber | STRTYPE | |
SourceName | X | STRTYPE |
SplitAccount | X | STRTYPE |
SSNOrTaxID | X | STRTYPE |
SuggestedReorder | BOOLTYPE | |
TaxLine | X | STRTYPE |
TaxTableVersion | X | STRTYPE |
Terms | X | STRTYPE |
Total | AMTTYPE | |
TxnID (see Note below) | X | IDTYPE |
TxnNumber | X | INTTYPE |
TxnType | X | STRTYPE |
UnitPrice | X | AMTTYPE |
UserEdit | X | STRTYPE |
ValueOnHand | X | AMTTYPE |
WageBase | X | AMTTYPE |
WageBaseTips | X | AMTTYPE |
The Transaction ID does not appear in the QuickBooks user interface. This information can only be requested in a report by the SDK.