create_split_transaction
Create a new transaction split across multiple budget categories to track spending allocations for a single purchase or payment.
Instructions
Create a NEW split transaction with multiple category allocations.
This tool creates a brand new transaction that is split across multiple categories.
It CANNOT be used to add splits to an existing transaction - the YNAB API does not support that.
Args:
budget_id: The ID of the budget (use 'last-used' for default budget)
account_id: The account ID for this transaction
date: Transaction date in YYYY-MM-DD format
amount: Total transaction amount (positive for inflow, negative for outflow)
subtransactions: JSON string containing array of subtransactions. Each subtransaction should have:
- amount (required): The subtransaction amount
- category_id (optional): Category ID for this split
- payee_id (optional): Payee ID for this split
- memo (optional): Memo for this split
Example: '[{"amount": -50.00, "category_id": "cat1", "memo": "Groceries"}, {"amount": -30.00, "category_id": "cat2", "memo": "Gas"}]'
payee_name: Name of the payee for the main transaction (optional)
memo: Transaction memo (optional)
cleared: Cleared status - 'cleared', 'uncleared', or 'reconciled' (default: 'uncleared')
approved: Whether the transaction is approved (default: False)
Returns:
JSON string with the created split transaction
Important Notes:
- This creates a NEW transaction only - cannot modify existing transactions to add splits
- The sum of subtransaction amounts should equal the total transaction amount
- Once created, subtransactions cannot be modified via the API (YNAB limitation)
- To "split" an existing transaction, you must delete it and create a new split transaction
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| account_id | Yes | ||
| amount | Yes | ||
| approved | No | ||
| budget_id | Yes | ||
| cleared | No | uncleared | |
| date | Yes | ||
| memo | No | ||
| payee_name | No | ||
| subtransactions | Yes |
Input Schema (JSON Schema)
{
"properties": {
"account_id": {
"title": "Account Id",
"type": "string"
},
"amount": {
"title": "Amount",
"type": "number"
},
"approved": {
"default": false,
"title": "Approved",
"type": "boolean"
},
"budget_id": {
"title": "Budget Id",
"type": "string"
},
"cleared": {
"default": "uncleared",
"title": "Cleared",
"type": "string"
},
"date": {
"title": "Date",
"type": "string"
},
"memo": {
"default": null,
"title": "Memo",
"type": "string"
},
"payee_name": {
"default": null,
"title": "Payee Name",
"type": "string"
},
"subtransactions": {
"title": "Subtransactions",
"type": "string"
}
},
"required": [
"budget_id",
"account_id",
"date",
"amount",
"subtransactions"
],
"type": "object"
}