bus-payroll — validate payroll data and export postings

bus-payroll — validate payroll data and export postings

Synopsis

bus payroll [-C <dir>] [global flags] validate
bus payroll [-C <dir>] [global flags] export <payrun-id>

Description

Command names follow CLI command naming.

bus payroll validates payroll datasets and exports deterministic posting rows for a selected final payrun. Data is schema-validated and append-only for auditability. Use bus payroll validate --help and bus payroll export --help for the exact current syntax and examples.

Commands

validate checks payroll datasets and schemas in the workspace root. export validates first, then emits deterministic posting CSV for the selected final payrun. The module reads payroll datasets through the shared storage layer, so the same commands work when those tables are backed by ordinary CSV or PCSV-1.

Options

export takes <payrun-id> as a positional argument. Global flags are defined in Standard global flags. For command-specific help, run bus payroll --help.

Files

Payroll datasets and their beside-the-table schemas are read from the workspace root (for example employees.csv, payruns.csv, payments.csv, and posting_accounts.csv). Other tools that need these paths use the module API described in the Data path contract. The read path is storage-aware, so payroll workspaces may keep those tables as ordinary CSV or PCSV-1 resources.

Examples

bus payroll validate
bus payroll export PAYRUN-2026-01
bus payroll -C ./workspace export PAYRUN-2026-01 --format tsv --output ./out/payroll-postings-2026-01.tsv

Exit status

0 on success. Non-zero on errors, including invalid usage or schema violations.

Using from .bus files

Inside a .bus file, write this module target without the bus prefix.

# same as: bus payroll validate
payroll validate

# same as: bus payroll export PAYRUN-2026-02 --format tsv
payroll export PAYRUN-2026-02 --format tsv