1 unstable release
0.1.0 | Jan 29, 2024 |
---|
#276 in Finance
25KB
568 lines
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 has (as I found so far) 2 different CSV file formats.
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
Install directly from GitHub:
cargo install --git https://github.com/andreoliwa/bank-csv-rs
This package is not yet published on crates.io.
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
Dependencies
~24–35MB
~662K SLoC