Reconciliation

Balances in Ledgr are computed from the journal, the permanent record of postings. Reconciliation is how you confirm that what you read as a balance still matches what the journal says it should be. It recomputes each account's balance directly from its postings and compares the two. In a healthy ledger they always agree, and a difference is a signal worth looking into.

Reconciliation endpoints require the program_id header.

The two checks

Running the check recomputes balances from the journal and reports any account whose balance no longer matches. It also confirms a property that must hold for the whole program: across every account, the posted debits and credits sum to zero. If money were ever lost or created, this is where it would show.

If a difference is found, rebuilding recomputes every balance from the journal and replaces the stored values. Because the journal is the record of truth, this is always safe to run and simply restores agreement. A good habit is to run the check on a schedule and only rebuild if it reports a difference.

Operations

Method and path What it does
GET /reconciliation Recompute balances from the journal and report any that no longer match.
POST /reconciliation/rebuild Recompute and replace every stored balance from the journal.

The API reference documents the parameters and responses for each of these.

Reconciliation - Ledgr | Padle