ledgerai

Script to transform CSV files into beancount accounting files.

Usage

To transform CSV data into Beancount run toldg via python-poetry.

poetry -P ${LEDGER_DATA_ROOT} run toldg

To visualize the data with fava install all dependencies via python-poetry, enable the venv and run fava from there.

poetry install
eval "$(poetry env activate)"
fava your_ledger.beancount

Architecture

The script takes a directory in which it recursively searches for CSV and LDG files. From these files, it generates a single ledger accounting file that includes all transactions.

Ledger files are appended to the output file without modifications.

However, the transaction for the CSV files are extended with their account2 information, i.e, the category of the transaction. Optionally, these transactions can also get a more meaningful description and tags.

The mapping information are stored in a file mappings.json. It maps a unique identifier for each transaction (based on the filename and full CSV row) to a respective account2.

Description
Transform finance data from CSV into LDG assisted by AI.
Readme 345 KiB
Languages
Python 100%