Skip to content


Folders and files

Last commit message
Last commit date

Latest commit



92 Commits

Repository files navigation



Goledger is yet-another-implementation of Plain Text Accounting.

After discovering ledger cli I've begun storing all my finances in text files. However, there was intense motivation for finding other alternatives:

  • Customising reports for getting the right information was difficult
  • Extending the core ledger CLI is tough (complex C++ code)
  • I wanted a better way!

The key difference you can find in goledger:

  • Smaller and more opinionated feature set. It does far less. It recognises a subset of plain text accounting ledger files.
  • Report configuration allows for regex on accounts (re-mapping accounts).
  • Configured by a config file. This is where you customise your default reports.


Main docs:

Additional Help Topics:


Note: Goledger is built using go 1.13.

go get -u


The first time you run it there will be a sample configuration file written into $HOME/.config/goledger/goledger.toml. You can move this to another location and specify it using GOLEGER_CONF environment variable.

This configuration file configures your experience using goledger, including default arguments (location of ledger, base currency), macros for making reports, import parsing definitions, registry accounts for inspection, and more.

It is recommended you use the shell integration as this will use your configuration file to generate the shell integration.

Generating Documentation

To re-generate the documentation from source run the following:

 LANG= GOLEDGER_CONF=  ./goledger docs -d ./docs -t markdown