API Reference
Transactions
Transactions are the individual money movements on a workspace account. Amounts are signed: negative for money out (expense) and positive for money in (income). All references (account, category, vendor, customer, tags) use UUIDs.
Last updated 2026-07-28
Overview
The Transactions API lets your integration list, create, update, categorize, and delete money movements on workspace accounts. Transactions are signed amounts — negative for money out (expenses) and positive for money in (income).
Partner responses expose UUIDs as `id` for the transaction and for linked account, category, vendor, customer, and tag records. Use bulk create to import many transactions in one call (up to 100 per request). Bulk exclude and bulk change-category support up to 100 existing rows with per-row failure reporting.
Key concepts
Categorization
Use change-category to assign or reassign a transaction to a chart-of-accounts category. Category changes may return `_partnerWarnings` when the update is partially applied.
Payment assignment
Assign an expense transaction to bills or an income transaction to invoices with assign-to-bills-invoices. Use `matchingType` of `bill` or `invoice` and pass target UUIDs in `records`.
Bulk import
POST /partners/transactions/bulk accepts up to 100 transactions per call. Each object uses the same shape as create transaction.
Bill and invoice picker filters
To mirror the COUNT UI when listing transactions to assign to a bill, filter server-side: `transactionTypes=Expense`, `reviewed=false`, `pending=false`, `excluded=false`, `currency={billCurrency}`, and optionally `status=notAttachedBill` plus `status=notAttachedInvoice`. For vendor memos use `transactionTypes=Income`. Do not rely on client-side null checks alone — use these query params and the read-only `billId` / `invoiceId` fields on each row.
The transaction object
Core fields returned on transaction records.
Attributes
iduuidTransaction identifier (UUID).
typeenumTransaction type.
One of: EXPENSE, INCOME, TRANSFER
descriptionstringShort description of the transaction.
amountnumberSigned amount. Negative for money out, positive for money in.
currencystringISO 4217 currency code.
postedDatedateDate the transaction posted (ISO).
authorizedDatedateAuthorization date when available.
accountIduuidUUID of the account this transaction belongs to.
categoryAccountIduuidUUID of the category account, when categorized.
vendorIduuidUUID of the linked vendor, for expenses.
customerIduuidUUID of the linked customer, when applicable.
billIduuidUUID of the linked bill when this transaction is assigned as a bill payment; null when unassigned.
invoiceIduuidUUID of the linked invoice when this transaction is assigned as an invoice payment; null when unassigned.
reviewedbooleanWhether the transaction has been reviewed.
tagsarrayTags attached to the transaction.
createdAtdatetimeISO 8601 creation timestamp.
updatedAtdatetimeISO 8601 last update timestamp.
{
"id": "b7c8d9e0-f1a2-3456-bcde-678901234567",
"type": "EXPENSE",
"description": "Office supplies from Amazon",
"amount": -150,
"currency": "USD",
"postedDate": "2026-03-01",
"authorizedDate": "2026-03-01",
"notes": "Q1 office supplies",
"paymentChannel": "online",
"reviewed": false,
"excluded": false,
"pending": false,
"split": false,
"accountId": "c8d9e0f1-a2b3-4567-cdef-789012345678",
"categoryAccountId": "c3d4e5f6-a7b8-9012-cdef-123456789012",
"vendorId": "d4e5f6a7-b8c9-0123-defa-234567890123",
"customerId": null,
"billId": null,
"invoiceId": null,
"tags": [
{
"id": "e5f6a7b8-c9d0-1234-efab-345678901234",
"name": "Office"
}
],
"createdAt": "2026-03-13T08:30:00.000Z",
"updatedAt": "2026-03-13T08:30:00.000Z"
}Pay bills and invoices via transactions
Bill and invoice payment is transaction-centric — assign a bank transaction rather than calling a bill-specific pay route. See the Bills API for payment rules.Related
Recent changes
Connections, reconciliations, opening balance, workspace cutover, and transaction bulk ops
Documented Partner API groups for bank Connections (including Plaid Hosted Link connect/complete/reconnect), Reconciliations (create draft + complete), Opening Balance (get/set conversion balance), and Workspace (PATCH cutoverDate). Added PATCH /partners/transactions/change-category-bulk and exclude-bulk. Removed non-existent POST /partners/bills/bulk and /partners/invoices/bulk from the reference. Extended the MCP tool catalog with the matching COUNT_* tools plus remote-only COUNT_get_bulk_task_status and COUNT_remember/recall/forget.
Transaction split, COA balance, and bill-picker filters
Added PUT /partners/transactions/{uuid}/split for explicit transaction splits. Chart of accounts list now returns systemBalance when includeBalances=true. Documented bill-assignment list filters (reviewed, pending, excluded, currency, status) and exposed read-only billId/invoiceId UUIDs on transaction responses.
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/transactionsReturns a paginated list of transactions, newest first.
/partners/transactions/{uuid}Retrieves a single transaction by its UUID.
/partners/transactionsRecords a new transaction on an account.
/partners/transactions/bulkCreates many transactions in a single request.
/partners/transactions/{uuid}Updates fields on an existing transaction.
/partners/transactions/{uuid}/change-categoryRe-categorizes a transaction to a different chart-of-accounts category.
/partners/transactions/change-category-bulkCategorizes or uncategorizes up to 100 existing transactions in one call.
/partners/transactions/exclude-bulkExcludes or un-excludes transactions by UUID list or postedDate range.
/partners/transactions/{uuid}/assign-to-bills-invoicesApplies a transaction as payment against one or more bills or invoices.
/partners/transactions/{uuid}/splitSplits a transaction into a parent row and child rows before bill or invoice assignment.
/partners/transactions/{uuid}Deletes a transaction from the workspace.
