API Reference
Reports
Generate trial balance, profit and loss, balance sheet, AR/AP aging, sales analytics, and customer activity reports for a workspace. All routes use POST with filters on the query string — there is no request body.
Last updated 2026-08-12
Overview
The Reports API generates accounting reports for the authenticated workspace. Each endpoint is POST with report filters passed as query parameters. No JSON body is accepted — this keeps report generation read-only and compatible with MCP tool annotations.
Account, tag, customer, vendor, product, and project filters accept comma-separated UUIDs from their respective list APIs. Do not pass internal numeric ids.
Key concepts
POST with query filters
Send POST with an empty body (or sign HMAC against `{}`). Put every filter on the query string — for example `?endDate=2026-03-31&transactionStatus=reviewed`.
Trial balance
Requires `endDate`. Optional `startDate` defaults to fiscal-year start. Filter by account UUIDs, tags, transaction status, and account type.
Profit and loss
Requires `startDate` and `endDate`. Revenue rows are positive; expense rows are negative; net profit is the algebraic sum.
Balance sheet
Requires `endDate` as the as-of date. Returns Assets, Liabilities, and Equity sections. Unposted manual entries may cause imbalance — surfaced in the response payload.
AR/AP aging
Aged receivables and aged payables compute open invoice/bill balances off the Accounts Receivable or Accounts Payable control account. Each response includes detail rows, counterparty summaries, bucket totals, and a reconciliation block against the control account GL balance.
Sales analytics
Sales-by-product/service and sales-by-customer summarize invoice line revenue and quantity over a date range. Customer activity is broader: it nets every journal entry linked to each customer (payments, tax, manual journals, expenses), not sales revenue alone.
Report response shapes
Each endpoint returns a generated report under `data`. Exact row shapes vary by report type.
Attributes
accounts / rowsarrayReport line items with account UUIDs and amounts.
totalsobjectSection or report-level totals.
currencystringReport currency (defaults to workspace currency).
startDatedateReport period start when applicable.
endDatedateReport period end or as-of date.
{
"trialBalance": [
{
"accountUuid": "c8d9e0f1-a2b3-4567-cdef-789012345678",
"accountName": "Business Checking",
"accountType": "Assets",
"debit": 12500,
"credit": 0,
"balance": 12500
}
],
"profitAndLoss": [
{
"accountUuid": "d4e5f6a7-b8c9-0123-defa-234567890123",
"accountName": "Consulting Revenue",
"accountType": "Income",
"amount": 45000
}
],
"balanceSheet": [
{
"name": "Assets",
"total": 85000,
"accounts": [
{
"accountUuid": "c8d9e0f1-a2b3-4567-cdef-789012345678",
"accountName": "Business Checking",
"balance": 12500
}
]
}
]
}Use accountUuids not numeric ids
Pass comma-separated account UUIDs from the Chart of Accounts API via `accountUuids` or report-specific category filters.transactionStatus filter
Supported values: all, reviewed, unreviewed, reconciled, unreconciled.Related
Recent changes
Complete Partner API reference
Documented all remaining API reference groups: Chart of Accounts, Vendors, Products & Services, Recurring Invoice Templates, Credit Memos, Bills, Journal Entries, Tags, People, Projects, Tasks, Time Entries, Expense Receipts, Reports, and Workspace Stats. Added missing invoice endpoints (audit log, attachments, credit application, remove transaction) and group overviews for Invoices and Transactions.
Endpoints
/partners/reports/trial-balanceGenerates a trial balance as of a date.
/partners/reports/pnlGenerates a profit and loss (income statement) for a date range.
/partners/reports/balance-sheetGenerates a balance sheet as of a date.
/partners/reports/aged-receivablesGenerates an AR aging report as of a date.
/partners/reports/aged-payablesGenerates an AP aging report as of a date.
/partners/reports/sales-by-product-serviceSummarizes invoice line revenue and quantity by product or service.
/partners/reports/sales-by-customerSummarizes invoice line revenue and quantity by customer.
/partners/reports/customer-reportReturns per-customer accounting activity with underlying journal entries.
