update_transaction
Update an existing transaction's details such as date, amount, payee, category, memo, or flag. Only provide fields to change; split transactions have restrictions.
Instructions
Update an existing transaction. Only provide the fields you want to change.
Future-dated transactions are not permitted. Split transaction amounts and dates cannot be changed. If an existing transaction is a split, category_id cannot be changed and updating subtransactions is not supported.
Args: plan_id: The plan ID (use list_plans to find available IDs) transaction_id: The transaction ID to update account_id: New account ID date: New date (YYYY-MM-DD, must not be in the future) amount: New amount in dollars (negative for outflow, positive for inflow) payee_id: New payee ID. For account transfers, use target account's transfer_payee_id. payee_name: New payee name (resolves to existing or creates a new payee) category_id: New category ID. Use null with subtransactions to create a split. memo: New memo (max 500 chars) cleared: 'cleared', 'uncleared', or 'reconciled' approved: Whether the transaction is approved flag_color: 'red', 'orange', 'yellow', 'green', 'blue', 'purple', or null subtransactions: For creating a new split, list of dicts with: amount, payee_id, payee_name, category_id, memo exclude_fields: Optional list of field names to exclude from the response. If omitted, the model's default exclude list is used (see FIELDS.md). Pass [] to return all fields. Pass a custom list to override the default.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| date | No | ||
| memo | No | ||
| amount | No | ||
| cleared | No | ||
| plan_id | Yes | ||
| approved | No | ||
| payee_id | No | ||
| account_id | No | ||
| flag_color | No | ||
| payee_name | No | ||
| category_id | No | ||
| exclude_fields | No | ||
| transaction_id | Yes | ||
| subtransactions | No |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |