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.