Registry / payments / beancount

beancount

JSON →
library3.2.3pypypiunverified

Double-entry accounting from text files. Beancount is a command-line tool and Python library that reads a plain-text ledger file and produces financial reports. Version 3.2.2, release cadence is irregular (~1-2 major releases per year). Requires Python >=3.9.

pip install beancount
INSTALL
IMPORT
SIG · BEANCOUNT
B
beancount
paymentspythonv3.2.3
Install
2.6s avg
Import
Disk
25MB
Pass rate
5/ 10
Env Coverage5 / 10
glibc
3.93.13
musl
3.93.13
Install & Compatibility
Where this runs
tested against v3.2.3 · pip install
no network on importno background threads
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
musl
py 3.103.95 runs
build_error
glibc
py 3.103.95 runs
installs and imports cleanly · install 2.6s · import 0.000s · 27MB
25MB installed
● package 25MB
Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

load
from beancount import load
from beancount.loader import load

Load a Beancount ledger file and print the first five entries.

from beancount.loader import load from beancount.printer import format_entry # Load a ledger file (replace with actual path or use os.environ) import os ledger_path = os.environ.get('BEANCOUNT_LEDGER', 'example.bean') entries, errors, options_map = load(ledger_path) if errors: for e in errors: print(e) # Print first 5 transactions for entry in entries[:5]: print(format_entry(entry))
bean-count --version
Debug
Known issues
breakingBeancount 3 dropped Python 3.8 support; requires Python >=3.9.
fix
Update Python to 3.9 or newer.
affects: 3.0+
breakingIn Beancount 3, the old 'from beancount import *' patterns no longer work; explicit imports from submodules are required.
fix
Update imports to use specific submodules (e.g., from beancount.loader import load).
affects: 3.0+
gotchaBeancount's ledger format is whitespace-sensitive; tabs vs. spaces can cause parse errors.
fix
Use spaces (2 or 4) for indentation; avoid tab characters.
affects: all
deprecatedThe 'beancount.core.inventory' API is deprecated in favor of 'beancount.core.amount' and 'beancount.core.position'.
fix
Migrate to using Amount and Position objects from beancount.core.amount and beancount.core.position.
affects: 2.3+
Upgrade
Version history
3.2.3latest on PyPI · released May 5, 2026
Audit
Dependencies

No dependency data recorded yet.

Agent activity
55 hits · last 30 days
node
48
Perplexity
1
OpenAI (training)
1
Resources