Beancount logo

Beancount

Double-entry bookkeeping in plain text, with reports and a web interface

Open Source Alternative to
Repository activity
  • Stars5.7k
  • Forks440
  • Open Issues230
License

GPL-2.0

Languages
  • Python
  • HTML
  • C
Beancount screenshot

About Beancount

Beancount is a double-entry bookkeeping language for recording financial transactions in plain text files. It reads those records into memory and generates a variety of reports, so your accounting data stays in a format you can inspect, version, and manage directly rather than locked in a closed app.

Transactions are written in a defined grammar with accounts, postings, and prices. The tool checks the books balance and produces reports from the data. A web interface is included for browsing the results.

Version 3 has been the stable release since June 2024 and is trimmed down from version 2, which is now frozen. Martin Blais started the project around 2007 and continues to maintain it.

Key features

  • Double-entry bookkeeping in plain text files
  • Defined grammar for accounts, postings, and prices
  • Generates a variety of financial reports
  • Built-in web interface for browsing results
  • Balance checking across the books

Details

First released
2007 (around)
Language
Python · C
License
GNU GPLv2 only
Author
Martin Blais
Storage
Plain text files
Current version
3 (since June 2024)