Join GitHub today
I use emacs to edit and reconcile my corporate ledger.
First, I download my bank transactions (from Bank of America) and
use a trivial python script
to convert them to ledger format.
I open two emacs windows (M-x new-frame/C-x52) so I can edit the
bank statement and my ledger side by side.
This is a great setup even if you just want to use ledger-reconcile. However,
I’m particularly picky about keeping the effective dates filled in, so as I work
through the bank statement, I just update my ledger by hand, and mark each
entry as cleared (with a * ) as I go.
To check my work, I keep a terminal window open that constantly monitors the
watch ledger --cleared bal asset:checking
This constant feedback seems to prevent data entry errors on my part, and
the two-window mode lets me move fairly quickly.
Converting the bank data to ledger format turns out to be MUCH nicer than
using a paper statement or even working directly from online banking, because
if you’re missing a transaction, you can just cut and paste.
I’ve got a similar (Haskell) script for CSV-data, along with some tips on fetching the data via HBCI (online API provided by most German banks):
Andrew Cantino has a csv import script that learns what your accounts are:
https://github.com/rcaputo/vim-ledger_x is an interactive posting reconciler for Vim.
- Potential offsets are highlighted.
- Unbalanced reconciliations are prohibited.
- Offsetting postings are tagged so they can be found, reported on, or undone together later.