Create a YNAB scheduled transaction from every new Notion bill
You already log bills in Notion because that is where your brain lives. The problem is remembering to also enter them in YNAB. Notis closes that gap: the moment a new row lands in your Notion bills database, it creates the matching recurring transaction in YNAB for you.
Trigger
New Page
Triggers when a new page is added to a Notion database.
Action
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.
Why this helps
Bills get captured in Notion but never make it into the budget, so YNAB is always slightly wrong and you stop trusting it.
- Every bill you log in Notion becomes a real recurring line in YNAB, so your budget reflects reality.
- No more double entry between the tool you plan in and the tool you fund in.
- Fewer surprise charges because upcoming bills are always scheduled ahead of time.
- Your budget stays trustworthy, which means you actually keep using it.
Setup
Build it in a few focused steps.
- 1Connect Notion and YNAB to Notis once from the portal (ask Notis 'Send me my portal link' if you need it).
- 2Open Automations, choose New Automation, and give it a name like 'Notion bills to YNAB'.
- 3Write the plain-language instruction: 'When a new row is added to my Notion bills database, create the matching scheduled transaction in YNAB.'
- 4Pick the New Page trigger for your bills database and choose the channel where Notis should report each run.
- 5Add one test bill in Notion and confirm the scheduled transaction shows up in YNAB.
Questions about this workflow
Do I have to enter amounts a special way?
No. You describe the outcome in plain language and Notis reads the amount and cadence from your Notion row. You never touch milliunits or field mappings.
What if a bill is a one-time charge, not recurring?
You can say so in the instruction. Notis will only create scheduled transactions for the recurring rows and leave the rest alone.
Will it work with my existing bills database?
Yes. Point the trigger at whichever Notion database you already use for bills. Nothing needs to be rebuilt.
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.
