ReconifyDocumentation

CLI Reference

Implemented Reconify commands and flags.

Global flags

reconify --config reconify.yaml --verbose
FlagDefaultDescription
--config, -creconify.yamlPath to configuration file.
--verbose, -vfalseEnable verbose output.
--versionPrint version and build time.

If --config is not set, Reconify also checks RECONIFY_CONFIG.

reconify config init

reconify config init --out reconify.yaml

Interactively creates a reconify.yaml configuration from sample input files. The wizard reads source headers, asks you to map transaction fields, and writes a validated Reconify configuration file.

FlagDefaultDescription
--outreconify.yamlDestination config file.
--forcefalseOverwrite destination if it exists.

The wizard prompts for:

  • Output path and timezone.
  • Left and right source names, plus a sample file path for each. Parser type is inferred from the file extension: .csvcsv, .json/.ndjsonjson, .xlsx/.xlsmxlsx, otherwise auto.
  • Column mapping for date, amount, currency, name, and reference per source, with defaults auto-guessed from header names (for example, a header containing "date", "amount", "reference").
  • Pair name (defaults to <left>_vs_<right>), date window (default 1d), amount tolerance in minor units (default 0), and name matching mode (tokens or none).

Reconify validates the generated config before writing it and asks for confirmation. On success it prints [OK] wrote <path> and [OK] <path> is valid to stderr. Cancelling at any prompt prints Config init cancelled. and exits cleanly.

reconify config validate

reconify config validate --config reconify.yaml

Validates configuration structure, parser fields, pair references, index settings, timezones, date windows, and tolerances.

reconify config check-source

reconify config check-source \
  --config reconify.yaml \
  --source bank \
  --file data/bank.csv
FlagRequiredDescription
--sourceyesSource name to check.
--fileyesInput file to validate against the source parser.

reconify parse

reconify parse \
  --config reconify.yaml \
  --source bank \
  --file data/bank.csv \
  --format ndjson
FlagRequiredDefaultDescription
--sourceyesSource parser to use.
--fileyesInput file path.
--formatnondjsonndjson, csv, table, or json.

reconify reconcile

reconify reconcile \
  --config reconify.yaml \
  --pair bank_vs_stripe \
  --out results.json
FlagRequiredDefaultDescription
--pairyesPair name to reconcile.
--out, -ono-Output file path; - writes stdout.
--left-filenoExplicit left input file.
--right-filenoExplicit right input file.
--formatnojsonjson, json-stream, ndjson, csv, or table.
--max-token-bufferno100000Advisory row limit for token-mode unmatched buffer; 0 means unlimited.
--auditnofalseAdd run provenance to structured output.
--audit-fixed-timestampnoRFC3339/RFC3339Nano timestamp for byte-identical audit reruns.
--deterministicnofalseSort JSON output sections for stable diffs.
--progressnofalseLog progress to stderr.
--progress-everyno1000000Row interval for progress logs.

Not implemented yet

The changelog mentions standalone reconify validate and validation flags such as --skip-validation and --fail-on-warning. Those are planned/unreleased until present in the CLI code.

On this page