bus-payroll — validate payroll data and export postings

bus-payroll — validate payroll data and export postings

Synopsis

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

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 the owned 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). Path resolution is owned by this module; other tools obtain paths via this module’s API (see Data path contract). The read path is storage-aware, so payroll workspaces may keep those owned 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