Welcome to Ledger
Ledger is a powerful, double-entry accounting system that is accessed from the UNIX command-line. This may put off some users, as there is no flashy UI, but for those who want unparalleled reporting access to their data, there really is no alternative.
Here are some of the features of Ledger which set it apart from other accounting systems:
Ledger never creates or modifies your data. Your entries are kept in a text file that you maintain, and you can rest assured, no automated tool will ever change that data.
Ledger is 100% currency-agnostic. You can store multiple currencies in any account, convert between them, or even pay in one currency and receive change in another.
Ledger is international. UTF8 is accepted anywhere in data files, Ledger uses ISO format dates, attaches no meaning to the naming of accounts, and can accept data in either US or European decimal formats. It will report currencies back to you following the manner of your own entries.
Ledger uses a simple set of base commands which can be extended in countless ways. You can create monthly reports, average reports, check account balances, reconcile accounts, keep track of capital gains on stocks, etc.
To get started with Ledger, add entries to a text file in Ledger’s own textual format. Here’s what an entry might look like:
2006/10/15 Exxon Expenses:Auto:Gas $10.00 Liabilities:MasterCard
The amount of data required by Ledger is minimal. It figures out from
looking at your data what you mean by it and how you want it reported
back to you. Accounts are created as they appear; currencies are created
as they’re referenced. Anywhere that a value can be calculated, you can
leave it out — such as the balancing
$-10.00 in the above entry.
Here is a little more about Terminology.
Ledger is a double-entry accounting tool, meaning that all entries must balance. If an entry does not balance, it will cause an error and the report will not be generated. Ledger is always checking the accuracies of your entries at every run; you won’t ever run into problems with “unaccounted” sums in an account.
You use the
ledger command line program to see the balance of your
accounts, or the history of a particular account
ledger -f your-file.dat balance ledger -f your-file.dat register Expenses
The ledger-cli mail list is for the discussion of issues pertaining to Ledger. Please join and contribute! Google Groups also supports RSS, if you prefer that. Or, if you’d rather read your messages over NNTP using a newsreader like Gnus, use the gmane.comp.finance.ledger.general gmane newsgroup.
Usually the fastest way to get your questions answered is to visit us on IRC, where I can usually be found most days. We are on the #ledger channel on irc.freenode.net . My nick is “johnw”.
Please report bugs on Ledger’s Bugzilla.
The Ledger source is available on github.
Several people in the Open Source community have spent time creating Ledger binaries for specific platforms, listed below; if you discover others, please let me know. If you would like to have a binary hosted, please send an e-mail.
Platform Download link
Mac OS X (Snow Leopard) ftp://ftp.newartisans.com/pub/ledger/ledger-current.dmg.zip Windows http://www.assembla.com/spaces/Goldcoast/documents GNU/Linux: Debian http://qa.debian.org/developer.php?packages=ledger Ubuntu PPA (development snapshots) https://launchpad.net/~mbudde/+archive/ledger Gentoo http://tstotts.net/linux/ebuilds.html Homebrew http://github.com/mxcl/homebrew/blob/master/Library/Formula/ledger.rb CentOS 5 (64-bit) See below
For CentOS 5 users (64-bit only right now), create the file
/etc/yum.repos.d/newartisans.repo with these contents:
[newartisans] name=New Artisans LLC $releasever - $basearch baseurl=http://ftp.newartisans.com/yum/rhel/$releasever/$basearch enabled=1 gpgcheck=0
Once this is done, run
yum install ledger.