Package Information
Available Nodes
Documentation
n8n-nodes-ynab
Custom n8n node for YNAB (You Need A Budget) API integration. This node allows you to interact with your YNAB budgets, accounts, transactions, categories, and payees directly from n8n workflows.
Features
Supported Resources
- Budgets: Get all budgets, get single budget, get budget settings
- Accounts: Get all accounts, get single account, create account
- Transactions: Get all, get single, create, update, delete transactions
- Categories: Get all categories, get single category
- Payees: Get all payees, get single payee
- User: Get authenticated user information
Authentication
Uses YNAB Personal Access Token for authentication.
Installation
For n8n Cloud or Self-Hosted
Option 1: Install via npm (Recommended)
Once published to npm, you can install this node directly in n8n:
- Go to Settings > Community Nodes
- Click Install
- Enter
n8n-nodes-ynab-npab19 - Click Install
Option 2: Manual Installation
For self-hosted n8n instances:
# Navigate to your n8n custom nodes directory
cd ~/.n8n/custom
# Clone this repository
git clone https://github.com/YOUR_USERNAME/n8n-nodes-ynab.git
# Install dependencies and build
cd n8n-nodes-ynab
npm install
npm run build
# Restart n8n
For Development
Clone this repository:
git clone https://github.com/YOUR_USERNAME/n8n-nodes-ynab.git cd n8n-nodes-ynabInstall dependencies:
npm installBuild the node:
npm run buildLink for local n8n development:
npm link cd ~/.n8n/custom npm link n8n-nodes-ynabStart your local n8n instance and test the node
Usage
Setting up Credentials
Getting Your YNAB API Token
- Go to YNAB Account Settings
- Click on New Token
- Give it a name (e.g., "n8n Integration")
- Copy the generated token (you won't be able to see it again!)
Configuring in n8n
- In n8n, create new credentials of type "YNAB API"
- Paste your YNAB Personal Access Token
- Click Test to verify the connection
- Click Save
Example Workflow: Get All Budgets
- Add a "Manual Trigger" node
- Add a "YNAB" node
- Configure the YNAB node:
- Resource: Budget
- Operation: Get All
- Include Accounts: true (optional)
- Connect the credentials
- Execute the workflow
Example Workflow: Create Transaction
- Add a trigger node
- Add a "YNAB" node
- Configure the YNAB node:
- Resource: Transaction
- Operation: Create
- Budget ID: Your budget ID
- Account ID: Your account ID
- Date: Transaction date (YYYY-MM-DD)
- Amount: Amount in milliunits (e.g., 10000 = $10.00)
- Payee Name: Payee name
- Memo: Optional memo
- Cleared: uncleared/cleared/reconciled
Common Use Cases
Budget Monitoring
- Get all budgets and their balances
- Monitor spending across categories
- Track account balances
- Generate budget reports
Transaction Management
- Create transactions automatically from external sources
- Update transaction categories and memos
- Reconcile transactions programmatically
- Import transactions from other services
AI-Powered Budgeting
- Use with n8n's AI Agent for intelligent budget analysis
- Get spending recommendations based on patterns
- Automate categorization with AI
- Generate natural language budget summaries
Automation Examples
- Auto-categorize recurring transactions
- Send notifications when budgets are exceeded
- Sync transactions between multiple budgets
- Generate monthly spending reports
API Reference
This node implements the YNAB API v1. For more information about YNAB API:
Development
File Structure
.
├── credentials/
│ └── YnabApi.credentials.ts # YNAB API credentials definition
├── nodes/
│ └── Ynab/
│ ├── Ynab.node.ts # Main node implementation
│ ├── Ynab.node.json # Node codex metadata
│ └── ynab.svg # Node icon
├── dist/ # Compiled JavaScript (generated)
├── .development/ # Development test files
├── package.json # Node package configuration
└── tsconfig.json # TypeScript configuration
Building
npm run build
Linting
npm run lint
npm run lintfix # Auto-fix issues
Compatibility
- n8n version: 1.110.1+
- Node.js: 18.17.0+
- YNAB API: v1
License
MIT
Support
For issues and questions:
- YNAB API: https://api.ynab.com
- n8n Documentation: https://docs.n8n.io
AI Agent Compatibility
This node is fully compatible with n8n's AI Agent (LangChain) and can be used as a tool by AI agents.
Using with AI Agents
Enable Community Package Tool Usage (required for self-hosted n8n):
export N8N_COMMUNITY_PACKAGES_ALLOW_TOOL_USAGE=trueOr add to your n8n environment configuration.
Add as a Tool to AI Agent:
- Add an AI Agent node (Tools Agent type)
- Connect the YNAB node to the AI Agent's tools input
- The AI will automatically use YNAB operations when needed
Example AI Agent Use Cases:
- "What's my total budget balance across all accounts?"
- "Create a transaction for $50 at Starbucks in my coffee category"
- "Show me all transactions from last week"
- "What categories am I overspending in?"
- "Add a $100 payment to my credit card account"
The AI agent can intelligently select the appropriate YNAB operations (get budgets, create transactions, etc.) based on natural language requests.
AI Agent Workflow Example
Manual Trigger → AI Agent (Tools Agent) → [Connected Tools]
├─ YNAB Node
└─ Other Tools
The node uses usableAsTool: true to enable AI agent integration, allowing the AI to understand and utilize all available YNAB operations dynamically.