Check a Source
Validate that a source parser definition matches an actual input file before running a full reconciliation.
Before running a full reconciliation, it pays to confirm that Reconify can find the columns it needs in your input file. A missing or misspelled column name fails silently until you run, and when you're dealing with thousands of rows, that's the wrong moment to discover a typo in date_col. config check-source catches that in seconds.
What you'll learn
By the end of this guide, you know:
- how to validate a parser definition against a real file,
- what the command checks and what it doesn't,
- and how to diagnose and fix common column-mapping failures.
How it works
config check-source reads the headers from your input file and checks that every column referenced in the source's parser block exists. It does not parse or normalize any rows. It only verifies that the columns are present. See Ingestion for how columns map to the normalized transaction model once parsing begins.
Command
reconify config check-source \
--config reconify.yaml \
--source bank \
--file data/bank/january.csvSteps
Run the check against a sample file
Point --source at the source name in your config, and --file at one representative input file:
reconify config check-source \
--config reconify.yaml \
--source bank \
--file data/bank/january.csvThe command validates the following columns if they are configured:
date_col(required)amount_col(required)currency_col(optional)name_col(optional)ref_col(optional)
Fix required column failures
If date_col or amount_col is not found, either:
- Update
date_coloramount_colin your config to match the actual header (column lookup is case-insensitive and trims whitespace, soDateanddateboth matchdate). - Fix the export headers if you control the source system.
Fix optional column failures
If an optional column (currency_col, name_col, or ref_col) is not found:
- Update the column name in your config.
- Or remove the field from the parser config entirely — Reconify will parse without it.
Missing ref_col means all rows have empty references, which disables reference matching. Missing
name_col disables name-token matching.
Verify it worked
A passing run prints a confirmation for each checked column. If all columns are found, proceed to
parse a file with reconify parse to confirm row-level normalization
looks correct before running a full reconciliation.
If a column passes check-source but rows still look wrong after parsing, use
reconify parse to inspect how individual rows are normalized — the
issue is likely in date_layout, multiplier, or separator settings rather than the column name.