/bank-csv-rs

Handle CSV files from a few German banks and PayPal

Primary LanguageRust

bank-csv

Handle CSV files from a few German banks and PayPal.

Supported CSV files

Bank Where to get the CSV
N26 Downloads
PayPal Activity report
DKB DKB Konto Umsätze

PayPal CSV columns can be configured on download and the default columns can change.

This project uses polars to read CSV files directly by column names. It's a heavier dependency, but it's easier to support different CSV formats without being super strict about column order and presence.

Installation

From Command
crates.io cargo install bank-csv
GitHub cargo install --git https://github.com/andreoliwa/bank-csv-rs

Usage

Merge CSV files from a few German banks and PayPal into a single CSV file.

bank-csv merge /path/to/import-*.csv

EUR transactions are filtered by default. You can choose a different currency with the --currency option.

bank-csv merge -c USD /path/to/import-*.csv

This will generate bank-csv-transactions*.csv files in the download directory of the computer, with transactions sorted by date and grouped by month.

Type bank-csv --help for more details.

❯ bank-csv --help
Handle CSV files from a few German banks and PayPal

Usage: bank-csv <COMMAND>

Commands:
  merge  Merge one or more bank CSV files and split them into multiple files, one for each month
  help   Print this message or the help of the given subcommand(s)

Options:
  -h, --help     Print help
  -V, --version  Print version

Roadmap (TODO)

  • Generate OFX (or QIF) files to be imported into GnuCash