Remove a YNAB scheduled transaction the moment you cancel in Notion
Cancelling a subscription is easy to do and even easier to forget in your budget. So YNAB keeps reserving money for a tool you no longer pay for. Drop a comment on the Notion page saying it is cancelled and Notis deletes the scheduled transaction in YNAB for you.
Trigger
New Comment
Triggers when a new comment is added to a specified Notion block or page.
Action
Delete Scheduled Transaction
Permanently deletes a scheduled transaction from a YNAB budget. Use this when a recurring transaction is no longer needed. This action cannot be undone. Obtain the scheduled_transaction_id from list_scheduled_transactions or get_scheduled_transaction_by_id before calling this.
Why this helps
Cancelled subscriptions keep living in YNAB as phantom scheduled transactions, quietly distorting how much money you think you have.
- Your YNAB budget stops reserving money for things you already cancelled.
- One comment in the tool you already have open does the cleanup for you.
- No more scrolling through scheduled transactions trying to remember what is still active.
- Available-to-budget numbers finally match your real commitments.
Setup
Build it in a few focused steps.
- 1Connect Notion and YNAB to Notis once from the portal.
- 2In Automations, create a New Automation named 'Cancelled in Notion, remove from YNAB'.
- 3Give Notis the instruction: 'When a comment marks a Notion subscription as cancelled, delete its scheduled transaction in YNAB.'
- 4Select the New Comment trigger and choose the channel for run confirmations.
- 5Comment 'cancelled' on a test subscription page and check that the YNAB scheduled transaction is gone.
Questions about this workflow
Could this delete the wrong transaction?
Notis reports every run to your chosen channel, so you see exactly which scheduled transaction was removed. You can phrase the instruction to only act on clearly worded cancellation comments.
Is a deleted scheduled transaction recoverable?
Deleting a scheduled transaction in YNAB is permanent, so this works best on subscriptions you are certain about. The run report gives you a paper trail either way.
Do I need a specific comment format?
No. You describe in plain language what counts as a cancellation, and Notis interprets your comments. There is no rigid syntax to memorize.
When this happens · Trigger
Do this · Action
Supported Triggers and Actions
Notis builds workflows that link Notion to Ynab. A trigger fires from one place; an action lands in another.
Notion triggers
Ynab actions
All Page Events
Triggers when any Notion page is created or updated across the workspace.
Create a new account in a budget
Tool to create a new account in a budget. Use when you need to add a manual (non-linked) account to a specific budget.
Comment Created
Triggers when a new comment is created in Notion. Optional `page_id` filter scopes to comments on a specific page. When omitted, fires for any new comment in the workspace the integration has access to. Requires the 'Read comments' capability on the Notion integration. If a connection was authorized before that capability was enabled, the user must re-authorize the connection for comment events to flow.
Create Scheduled Transaction
Creates a scheduled (recurring) transaction in a YNAB budget. Use this to set up bills, recurring expenses, or income that repeats on a schedule. Requires an account_id (from YNAB_LIST_ACCOUNTS), a date, frequency, and amount in milliunits.
New Comment
Triggers when a new comment is added to a specified Notion block or page.
Delete Scheduled Transaction
Permanently deletes a scheduled transaction from a YNAB budget. Use this when a recurring transaction is no longer needed. This action cannot be undone. Obtain the scheduled_transaction_id from list_scheduled_transactions or get_scheduled_transaction_by_id before calling this.
Database Created
Triggers when a new Notion database (the container) is created. A database is the post-2025-09-03 container that holds one or more data sources. This trigger fires for the container's creation event (`database.created`), distinct from `NOTION_DATASOURCE_CREATED` which fires when a new data source is added to an existing database. Most customers calling Notion's `POST /v1/databases` (the legacy API) or creating a database via the Notion UI will see this event. Adding a new data source to an existing database fires `data_source.created` instead — use `NOTION_DATASOURCE_CREATED` for that. Notion's payload puts `entity.type: "block"` (the container is a `child_database` block in the content tree) and `entity.id` is the database id.
Get Account by ID
Tool to retrieve a single account resource. Use when you need details of a specific account by its ID after determining the budget.
Data Source Created
Triggers when a new Notion data source is created. Fires workspace-wide. The payload's `data.parent` carries the data source's tree parent (typically the teamspace) for downstream filtering. A single template-based database creation can fire multiple `data_source.created` events at once — one per data source the template instantiates.
Get Budget By ID
Retrieve a complete budget export by ID, including all accounts, categories, payees, and transactions. Use this tool when you need comprehensive budget data. The response includes: - Budget metadata (name, date/currency formats) - All accounts with balances - Category groups and categories with budgeted amounts and balances - All payees - All transactions and scheduled transactions (optional, may be large) For incremental syncing, use last_knowledge_of_server to only fetch changes since your last request. Note: Currency amounts are in 'milliunits' format (divide by 1000 for standard units).
Data Source Schema Updated
Triggers when a Notion data source's schema is updated. Fires on column add / remove / rename. Payload includes `data.updated_properties: [{id, name, action}]` so consumers can discriminate the kind of change downstream. Optional `data_source_id` filter scopes to schema changes on a single data source. When omitted, fires for any schema change in the workspace the integration has access to. Note: adding a column also fires `page.properties_updated` once per existing row in the data source. Customers wanting a single structural-change signal should use this trigger.
Get Budget Month
Tool to retrieve a specific budget month. Use when you need detailed summary and category budgets for a given month after confirming the budget ID. Monetary amounts are returned in milliunits (divide by 1000 for standard currency). Response includes high-level aggregates and a nested category array within the month payload for per-category budget analysis.
New Page
Triggers when a new page is added to a Notion database.
Get Budget Settings
Tool to retrieve budget-level settings. Use when you need to fetch currency and date formatting preferences for a specific budget.
Page Added to Page
Fires when a new subpage (a `child_page` type block) is added under a specified parent Notion page.
Get Category by ID
Retrieve a single YNAB budget category by its ID. Use this to get detailed category information including budgeted amounts, activity, balance, and goal settings. Amounts are returned for the current budget month (UTC). Requires both budget_id and category_id - use 'last-used' or 'default' for budget_id if you don't have a specific budget ID.
Connect any two apps with Notis in the middle.
Not just Notion and Ynab. Any combination from 985+ integrations.
When this happens · Trigger
Do this · Action
Save your first hour today.
7 days free trial with 20$ free usage included.
No card. Works with personal or business Ynab.
