The Transactions object

A transaction object represents a balanced double-entry journal. The header carries the date, description, status, and source metadata. Lines carry the account allocations, amounts, VAT treatment, and optional contact references.

The totals object on the detail endpoint confirms the transaction balances (debit equals credit). Amounts on lines follow the sign convention: positive = debit, negative = credit.

Attributes

idstring
Prefixed transaction ID (e.g. txn_42). Immutable after creation.
datestring
Transaction date (YYYY-MM-DD). Determines the accounting period.
descriptionstring
Transaction description. Required, max 500 characters.
referencestring
Optional external reference (e.g. bank reference, cheque number). Max 100 characters.
sourceTypestring
Origin of the transaction: manual, invoice, or bank_import. Determines deletion rules.
sourceIdstring
Prefixed ID of the source document (e.g. inv_42 for invoice-generated journals), or null for manual entries.
statusstring
Either draft (excluded from reports and balances) or posted (immutable, included in balances).
isReconciledstring
Whether the transaction has been matched against a bank statement. Only posted transactions can be reconciled.
reconciledAtstring
ISO 8601 timestamp when reconciled, or null.
periodIdstring
Accounting period identifier, if period-lock is enabled.
createdBystring
Prefixed user ID of the creator.
createdByNamestring
Display name of the creator.
metadatastring
Custom key-value pairs. Max 50 keys, values must be strings. Keys prefixed _sb_ are reserved.
totalDebitstring
Sum of positive line amounts in minor units (pence). List endpoint only.
totalCreditstring
Sum of absolute negative line amounts in minor units (pence). List endpoint only.
accountCodesstring
Comma-separated list of account codes involved. List endpoint only.
accountLabelsstring
Comma-separated list of account code + name labels. List endpoint only.
createdAtstring
ISO 8601 creation timestamp.
updatedAtstring
ISO 8601 last-updated timestamp.