Files
ledgerai/README.md

39 lines
1.2 KiB
Markdown

# ledgerai
Script to transform CSV files into [beancount](https://beancount.github.io/docs/beancount_language_syntax.html) accounting files.
## Usage
To transform CSV data into Beancount first install the package via
`poetry install`.
You can then run `toldg` from the directory where your configuration
file and your ledger data is located.
```bash
poetry -P ledgerai run toldg
```
To visualize the data with [fava](https://beancount.github.io/fava/), enable the venv and run `fava` from there.
```bash
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*.