Rachuba documentation

CLI reference

rachuba [--config PATH] [--ledger PATH] [--json] <command>

Options every command takes

  • -c, --config PATH: the configuration file, default rachuba.toml.
  • -l, --ledger PATH: the payroll ledger, default ledger.toml.
  • --json, anywhere on the line: the same figures as one JSON document instead of text. Every amount is a string such as "1234.56", so no float rounds a dollar.
  • RACHUBA_TABLES: the tables folder, when it is not tables beside the configuration file.

Exit status

  • 0: the command did what it says.
  • 1: a refusal, printed as Error: <sentence>; or, for owed and check, a passed due date or a breached limit, reported after the full output.
  • 2: a wrong invocation, such as an unknown option or a missing argument.

The refusals every command shares (configuration, ledger, tables, state) are on configuration.

Commands

CommandWhat it doesWrites
initWrites a starting configuration file and an empty ledger.both files
explainPrints Worksheet 1A line by line for a prospective run.nothing
runComputes a payroll run; records it with --commit.the ledger, with --commit
stubPrints the pay stub of a recorded run.nothing
voidTakes the last committed run back out, before any of its money moved.the ledger
ytdYear-to-date totals.nothing
owedMoney that has to move, and by when.nothing
depositedRecords that a run's Form 941 taxes were deposited.the ledger
remittedRecords that a run's deferral reached the plan.the ledger
retractTakes back a deposit or remittance recorded by mistake.the ledger
calendarFiling and deposit due dates for a year.nothing
checkChecks the year against the statutory limits.nothing
form 941 | 940 | w2Line values for a federal return.nothing
returnProjects the employee's own federal return.nothing