Skip to main content

A CLI tool that converts financial data to Beancount files

Project description

Beancount Multitool

Tests badge python version required static coverage badge

Beancount Multitool is a command-line-interface (CLI) tool that converts financial data from financial institutions to Beancount files.

The following institutions are supported:

What these scripts can do:

  • Read raw CSV files downloaded from each institution's website.
  • Label debit and credit transactions to respective account types.
    • Debit: Expenses:JP:Unknown:NameOfInstitution
    • Credit: Income:JP:Unknown:NameOfInstitution

What these scripts can not (yet) do:

  • Label transactions with different sub-accounts, e.g., Expenses:JP:Food:Grocery or Expenses:JP:Food:Restaurant.

Usage:

$ bean-mt --help
Usage: bean-mt [OPTIONS] NAME CONFIG DATA

  Read financial data and output a Beancount file.

  NAME is the name of the financial institution, e.g. RakutenBank.

  CONFIG is a .toml file with run-time configurations, e.g. config.toml.

  DATA is the raw financial data downloaded from NAME, e.g. input.csv.

Options:
  --output PATH  Resulting Beancount file
  --version      Show the version and exit.
  --help         Show this message and exit.

Example:

bean-mt rakuten_bank config.toml 2024-01.csv --output 2024-01.bean

Workflow:

  1. Download the raw CSV files from a financial institutions.
  2. Run bean-mt.
  3. Include the output.bean file in my ledger.
  4. Manually edit that Beancount file to my needs.

config.toml:

There is a default config.toml per financial institutions. Examples are in the test data folder.

Installation

pip install beancount-multitool

Requirements

  • Python 3.9 or higher.

More

License

MIT License

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

beancount_multitool-0.1.0.tar.gz (8.3 kB view hashes)

Uploaded Source

Built Distribution

beancount_multitool-0.1.0-py3-none-any.whl (12.5 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page