Converts from bank transactions exported as CSV to the format accepted by YNAB4.
Besides being much nicer to use than a simple spreadsheet, YNAB4 was great for two reasons:
The new, web-based YNAB follows a monthly subscription model. Paying $7 to make my monthly budget just does not make sense for me. Also, I don't want to be forced to store all my bank data on their servers.
Using Bank2YNAB4 is straightforward:
bank2ynab.py
to launch the application.ynabImport.csv
in the same directory as bank2ynab.pyw
.Banks are defined using TOML-configuration files found in the banks directory. These are used to tell Bank2YNAB how to interpret the columns in a CSV statement file. A template config is provided as a starting point for defining a new bank. Filling out the template should hopefully be clear from the comments. Nevertheless, a short description can be helpful:
name
and specify all delimiters and the date format used.ynab_mapping
table with the corresponding column names from the bank's CSV statement.Some keys in the template's ynab_mapping
table are optional.
However:
date
key must exist in the ynab_mapping
table.outflow
and inflow
keys.
outflow
and inflow
.outflow
if your bank, for example, has multiple outflows (such as an extra 'fee' column).The new bank is automatically included in the drop-down menu of available banks.