Hi
I fell off the PTA wagon a few years back and I’m getting back into it. Started with ledger, right now I’m trying beancount (some “performance anxiety” but I like the documentation and emphasis on avoiding footguns).
One thing I always felt I should be doing, but largely wasn’t, was consistently reconciling statements with manually-recorded expectations of what should have ended up where, so I can catch any errors (really, large errors is what I have in mind!).
Looking through the beancount docs I saw this:
https://beancount.github.io/docs/getting_started_with_beancount.html
when I know I import just one side of these, I select the other account manually and I mark the posting I know will be imported later with a flag, which tells me I haven’t de-duped this transaction yet:
2014-06-10 * "AMEX EPAYMENT ACH PMT" Liabilities:US:Amex:Platinum 923.24 USD ! Assets:CA:BofA:Checking
Later on, when I import the checking account’s transactions and go fishing for the other side of this payment, I will find this and get a good feeling that the world is operating as it should.
Apparently these !
transactions legs create what are called “incomplete” transactions in beancount.
In the past, what I’ve done (sometimes!) is rather to have one’s manually recorded transactions move money into some “pending” account, and leave it to the auto-imported transactions to move the money out again. If money is left in the transfer account, you know something’s wrong. Like this example (here the author goes to the lengths of one account per transaction so the PTA system will even pinpoint the transaction id where things went wrong):
https://mumble.net/~campbell/2017/02/26/ledger/HOWTO-reconcile-cheques
Does anybody have comments re pros/cons of these two approaches? I’m actually not sure yet how one goes about getting beancount even to list the incomplete transactions. I guess the idea is you don’t, but rather your auto-import creates transactions with only one leg, and then you manually match those up and move them to their corresponding manually-entered !
incomplete transactions - or at least manually remove the !
s? Sounds labour-intensive?