I have tried a couple of times to get into ledger-cli, and what generally happens is that get really frustrated with "post-date ambiguity". In other words: do I enter a credit card transaction or check as the day I wrote it or the day it cleared? If I do it the day I wrote it, my balances are impossible to reconcile. If I do it for the day it clears, my balance view is ignoring things I know are about to happen. It is even worse when for self transfers, where there is an origination date, a "change visible in originating account" date, and a "change visible in the target account" date.
I guess I could get around it by having "in flight" accounts that deduct the money from the originating account, but at that point it is basically quadruple entry accounting, which seems like an excellent way to make a complete mess of it.
This isn't as big a problem as you think. There are several ways you can handle it, including:
- use your dates. Most people don't need to reconcile every day, and you can pick a day where there are no pending transactions, or few enough to be easily understood.
- use the bank dates. This happens automatically if you import converted bank data.
- use both dates. Eg, your date as the main transaction date, and (when helpful), the bank's date on the bank posting(s) only.
- there's also a primary/auxiliary date feature, but I think it's unnecessary
This is where marking a transaction as cleared or not comes into play. Your balances can be shown with both cleared and uncleared transactions accounted for.
I guess I could get around it by having "in flight" accounts that deduct the money from the originating account, but at that point it is basically quadruple entry accounting, which seems like an excellent way to make a complete mess of it.