Transform and aggregate all kinds of bills into a unified, beautiful Excel Table.
- support different file formats (csv, xls)
- auto-detect file encodings (
utf-8
,utf-16
,gbk
,big5
...) - auto-detect datetime formats (
2023-02-11
,11 FEB 2023
,11/02/2023
,2/11/2023
...) - auto-detect number formats (
-$6,593.22
,-Eu6.593,22
,-6 593,22 грн.
,(HK$6,593.22)
...)
For a real-world example, see Examples.
Clone this repository:
git clone https://github.com/prajnamort/bill_aggregator.git
Install dependencies (you need have python3 and pip3 installed):
cd bill_aggregator/
pip3 install -r requirements.txt
Download all your bill files into a dedicated directory, like this:
<bills_directory>/
|- Bank_Account_1.csv
|- Bank_Account_2.csv
|- Bank_Account_3.csv
|- ...
Create a new config file (only for the first time):
cp config.example.yaml config.yaml
Edit the config file:
<editor> config.yaml
How to write the config?
- For well-known bank accounts, just copy from config_templates.
(If you don't find your bank here, you are welcome to share your config) - For a detailed documentation, see configuration.md.
Now run the program:
./main.py -c <config.yaml> -d <bills_directory>
The result file(s) has been put into <bills_directory>/results/
, Enjoy your bookkeeping!