If you use the HomeBank accounting software, you'll probably want to import transaction data from your bank into HomeBank. I made a tool to convert Dutch ING Bank, ASN Bank and Triodos Bank comma-separated (CSV) downloads to a CSV file that HomeBank will understand.
This software is available as Python script and as standalone executables for Windows and MacOS.
Latest version: 22 may 2019, added Triodos Bank NL, fixed ING debit/credit bug.
Known bugs/imperfections:
- if you open the file select dialog on Windows and press cancel, you'll receive a warning message as soon as you quit the program; feel free to ignore that warning;
- it's not yet possible to drag-and-drop files to the program.
Check back here if you ever need updates, contact me (bottom of this page) if you're having any trouble. I don't want to add an automatic check for updates; to avoid causing any concerns over your privacy this app would better not phone home.
Download HomeBankCSV.app.zip and unzip. Run the HomeBankCSV.app. To install, drag it to your Applications folder.
Installing Python is not necessary: the required files are included in the app.
Download HomeBankCSVInstaller.exe and run this installer. It will unpack the required files to a directory you choose, and if you want it will also create a start menu shortcut. Uninstall any old versions before installing this one.
If you don't want to install, download HomeBankCSV.exe.
Grab HomeBankCSV.py and run it, just make sure you have Python 3.6+ installed.
chmod +x HomeBankCSV.py
./HomeBankCSV.py <input file> <output file>
- Input file: ING/ASN CSV
- Output file: CSV for HomeBank Import, for CLI this will overwrite any existing file with the same name
chmod +x HomeBankCSV.py
HomeBankCSV.py
Start without arguments to launch the GUI.
Full specification: http://homebank.free.fr/help/misc-csvformat.html
Column list:
date; payment mode; info; payee; memo; amount; category; tags
date => transation date, default format seems to be MM/DD/YYYY, but this can be changed in the settings under 'import/export'
payment mode => 0 = None; 1 = Credit Card; 2 = Check; 3 = Cash; 4 = Transfer; (5 = Internal Transfer, cannot be imported); 6 = Debit Card; 7 = Standing Order; 8 = Electronic Payment; 9 = Deposit; 10 = Financial Institutions fee (transaction fees etc.); 11 = Direct Debit
info => a string
payee => a payee name
memo => a string
amount => a number with a '.' or ',' as decimal separator, eg: -24.12 or 36,75
category => a full category name (category, or category:subcategory) eg: insurance:healthcare or groceries
tags => tags separated by space (mandatory since HomeBank v4.5)
Separator is ';' by default but can be changed in the settings under 'import/export'. A header row is allowed but seems to be ignored. The columns need to be in this exact order, and additional columns will prevent the file from being imported.
The exports Homebank makes follow a different format, see the full specification.
15-02-04;0;;;ATM cash withdrawal;-40,00;Bill:Withdrawal of cash;tag1
15-02-04;1;;;Internet DSL;-45,00;Inline service/Internet;tag2
...
Feel free to mail me: caspar@verhey.net. Ik spreek ook Nederlands ;)