Skip to main content
PATCH
/
transactions
/
{id}
Update a single transaction
curl --request PATCH \
  --url https://api.breezing.io/v1/transactions/{id} \
  --header 'Content-Type: application/json' \
  --data '
{
  "account": "<string>",
  "assetAccount": "<string>",
  "feeAssetAccount": "<string>",
  "status": "notStarted",
  "type": "<string>",
  "note": "<string>",
  "accountingDescription": "<string>",
  "vat": "<string>",
  "isSpam": true,
  "extraLabel": "<string>"
}
'
{
  "success": true,
  "data": {
    "updated": 123
  }
}

Documentation Index

Fetch the complete documentation index at: https://learn.breezing.io/llms.txt

Use this file to discover all available pages before exploring further.

Path Parameters

id
string
required

Transaction ID

Example:

"12345"

Query Parameters

org_id
string
required

Organization ID. Use GET /v1/companies to discover available org/company pairs.

Example:

"1"

company_id
string
required

Company ID. Use GET /v1/companies to discover available companies and their access levels.

Example:

"1"

Body

application/json
account
string | null

Account code (numeric string). The contra (income/expense) account: what was this transaction for? (e.g. Sales, Legal Expense, Consulting Revenue). IMPORTANT: Always call company_get first to retrieve the chart of accounts, find the account by name, and use its "code" field. Never pass a free-text name like "sales".

assetAccount
string | null

Asset account code (numeric string). The balance-sheet account for the token in this transaction. Required in ALL balance sheet modes. If the current value is "(auto)", Breezing resolves it at sync time from token-level or rule-based mappings. You can leave it or override with a specific code. IMPORTANT: Always call company_get first to retrieve the chart of accounts and use the numeric code.

feeAssetAccount
string | null

Fee asset account code (numeric string). The balance-sheet account for the fee portion. Same rules as assetAccount: required in ALL balance sheet modes. If "(auto)", Breezing resolves it at sync time. IMPORTANT: Always call company_get first to retrieve the chart of accounts and use the numeric code.

status
enum<string>

Transaction status lifecycle: notStarted (new/uncategorized) → reviewRequired (flagged for client review; client sees these in the Client Review workflow) → reconciled (categorized and verified) → manuallyReconciled (manually confirmed) → paid (synced to accounting software). Set to reviewRequired when the accountant needs the client to clarify a transaction.

Available options:
notStarted,
reviewRequired,
reconciled,
manuallyReconciled,
paid
type
string | null

Transaction type as a freeform label, safe to overwrite. System may set values like "transaction" or "internal" during import, but these are just labels, not business logic. The isInternal boolean controls actual internal transfer logic. Set to any descriptive value: "Opening Balance", "Staking Reward", "Payment", etc.

note
string | null

User note. Internal only, not synced to accounting software. Use accountingDescription for text that should appear in journal entries.

accountingDescription
string | null

Description that syncs as the journal entry description in Xero/QuickBooks/Bexio. Use for invoice references, vendor names, or transaction context that should appear in the accounting software. Distinct from "note" which is internal only.

vat
string | null

VAT or sales tax code as a freeform string that syncs to journal entries. Must match a tax rate name configured in the user's Xero/QuickBooks/Bexio account (e.g. "Output 8.1% VAT", "Tax Exempt"). Default is "no-vat". No validation, so invalid codes may cause sync errors.

isSpam
boolean

Spam flag. Set true to hide airdrop/scam tokens from the main view and prevent syncing to accounting software. Breezing auto-detects many spam tokens; use this for any it missed.

extraLabel
string | null

Extra label: freeform text for custom tagging or grouping, visible in Breezing reports.

Response

Transaction updated successfully

success
enum<boolean>
required
Available options:
true
data
object
required
Last modified on April 12, 2026