CLI reference

rachuba void

rachuba void --pay-date YYYY-MM-DD [--json]

The inverse of rachuba run --commit: removes the run paid on --pay-date from the ledger. Only the last recorded run can be voided, because every later run was computed against its year-to-date totals; an earlier mistake is fixed by recording a correction run dated today.

Voided the <kind> run on <date> (<gross> gross); <ledger> no longer records it.

With --json: voided (the whole run as the ledger held it) and ledger.

Refusals

Exit 1, nothing written:

the ledger records no run

no recorded run with pay date <date>

the run on <date> is not the last one (<date> is); later runs were computed against its year-to-date totals, so record a correction instead

the run on <date> has its taxes deposited on <date>; retract the deposit first

the run on <date> has its deferral remitted on <date>; retract the remittance first

The last two mean money already moved for the run. If the record is a mistake, rachuba retract takes it back first. A missing --pay-date exits 2. And the ledger refusals on configuration.