YNAB icon

YNAB

Node for automating YNAB budget

Overview

This node operation updates an existing scheduled transaction in a YNAB (You Need A Budget) budget. Scheduled transactions are recurring or planned transactions that happen on a set frequency, such as monthly bills or regular income.

Use cases include:

  • Modifying the amount or account of a scheduled payment.
  • Changing the frequency of a recurring transaction.
  • Updating payee information or category assignments.
  • Adding or editing subtransactions within a scheduled transaction.

For example, you might update a scheduled rent payment to increase the amount or change the payment date, or adjust a subscription's frequency from monthly to yearly.

Properties

Name Meaning
Scheduled Transaction ID The unique identifier of the scheduled transaction to update.
Amount The new amount for the scheduled transaction. Must be a number with up to two decimal places.
Account ID The account identifier where the scheduled transaction will be posted.
Frequency How often the scheduled transaction occurs. Options: Never, Daily, Weekly, Every Other Week, Twice a Month, Every 4 Weeks, Monthly, Every Other Month, Every 3 Months, Every 4 Months, Twice a Year, Yearly, Every Other Year.
Additional Fields A collection of optional fields to further specify the scheduled transaction:
- Payee ID Identifier of the payee associated with the transaction.
- Payee Name Name of the payee. If Payee ID is not provided, this name will be used to find or create a payee.
- Category ID Identifier of the category for the transaction.
- Memo A note or memo attached to the transaction.
- Sub Transactions Multiple subtransactions can be specified. Each must have an amount (sum must equal the main amount), and optionally payee ID, payee name, category ID, and memo.

Output

The output JSON contains the updated scheduled transaction object returned by the YNAB API. This includes all details of the scheduled transaction after the update, such as:

  • id: Scheduled transaction identifier.
  • amount: Updated amount in milliunits (amount * 1000).
  • account_id: Account linked to the transaction.
  • frequency: Recurrence frequency.
  • date: Date of the scheduled transaction.
  • payee_id / payee_name: Payee details.
  • category_id: Category assigned.
  • memo: Any notes.
  • subtransactions: Array of subtransaction objects if provided.

No binary data output is involved.

Dependencies

  • Requires an active connection to the YNAB API via an API key credential configured in n8n.
  • The node uses the budget ID from credentials or configuration to build API request URLs.
  • Uses the Luxon library for date formatting.
  • Requires internet access to communicate with the YNAB REST API.

Troubleshooting

  • Invalid Scheduled Transaction ID: If the provided ID does not exist, the API will return an error. Verify the ID is correct.
  • Amount Precision: Amounts are converted to milliunits (multiplied by 1000). Ensure amounts are correctly formatted as numbers with up to two decimals.
  • Subtransaction Sum Mismatch: The sum of subtransaction amounts must equal the main amount; otherwise, subtransactions will be ignored.
  • Date Format: Dates must be ISO strings parseable by Luxon. Invalid dates will cause errors.
  • API Authentication Errors: Ensure the API key credential is valid and has permissions for the budget.
  • Frequency Required: Frequency is mandatory; omitting it may cause request failure.
  • Category Restrictions: Some categories (e.g., credit card payment categories) may be rejected if used in subtransactions.

Links and References

Discussion