Files
ynabmunger/README.md
T
2026-05-03 14:38:49 +02:00

1.9 KiB

ynabmunger

A CLI tool for importing bank exports into YNAB.

Installation

You can download binaries from the Releases page.

To build locally, you need Rust installed and you can either:

cargo install --git https://git.shee.sh/james/ynabmunger

or clone the repo locally and run:

cargo install --path .

Usage

All commands that interact with YNAB require your API token, available from YNAB developer settings. Set it via the --token flag or the YNAB_API_TOKEN environment variable.

Commands

plans

List available YNAB budgets:

ynabmunger plans --token YOUR_TOKEN

accounts

List accounts in a budget:

ynabmunger accounts --token YOUR_TOKEN --plan "My Budget"

You can reference a budget by name (--plan) or ID (--plan-id).

transactions

List recent transactions (last 30 days):

ynabmunger transactions --token YOUR_TOKEN --plan "My Budget"

Filter by account with --account or --account-id.

convert

Convert a bank export to YNAB-compatible CSV for manual import:

ynabmunger convert --format bulder bank_export.csv > ynab_import.csv

Reads from stdin if no input files are given:

cat bank_export.csv | ynabmunger convert --format bulder > ynab_import.csv

import

Import a bank export directly into a YNAB account:

ynabmunger import --token YOUR_TOKEN \
    --plan "My Budget" \
    --account "Checking" \
    --format bulder \
    bank_export.csv

Bank Formats

Currently supported formats:

Format Description
bulder Bulder bank semicolon-delimited export

Adding New Formats

Add a new variant to the BankFormat enum in src/csv.rs and implement the reader and transform methods.