Plain Text Accounting Formats

Tree-sitter grammars with ABNF round-trip conversion

Plain text accounting is a way to describe machine- and human-readable accounting journals. Each format below has a tree-sitter grammar that is converted to ABNF and back via tree-sitter2abnf, verifying the grammar round-trips correctly.

For background see Journal entries as plain text and ABNF and Plain Text Accounting.

Beancount

Double-entry bookkeeping language with account directives, multi-currency support, and validation.

Goluca

Movement-based format using arrow notation to show flows between accounts.

PTA

General-purpose plain text accounting grammar covering transactions, balance checks, and metadata.