Original practical walkthrough
Compare CSV exports by key, then review what changed.
A line-by-line text diff becomes noisy when export rows move. Match a record by its identity before comparing the fields you care about.
In this example, one order has two line items. order_id alone is not unique; the key is order_id + line_id. The candidate also renames its headers.
1. Declare identity and scope
Map the baseline’s order_id, line_id to the candidate’s order, line. Compare sku → product, quantity → count and unit_price → price. Keep SKU and identifiers as text; quantities/prices are plain decimals. Leave tolerance at zero for this run.
{
"keys": [{"left":"order_id","right":"order"},
{"left":"line_id","right":"line"}],
"fields": [{"left":"sku","right":"product","numeric":false},
{"left":"quantity","right":"count","numeric":true},
{"left":"unit_price","right":"price","numeric":true}],
"tolerance": "0"
}2. Run the synthetic comparison
The default example includes reordered records, a quantity change and an added order line. Click Compare exports.
| Expected result | Why |
|---|---|
| 2 matching keys | O-100 / 1 and O-101 / 1 keep their selected values. |
| 1 changed key | O-100 / 2 changes quantity from 1 to 2. |
| 1 only-candidate key | O-102 / 1 is a new line. |
| 0 duplicate, blank or invalid-numeric issues | The default example’s keys and selected numbers are valid. |
These counts describe grouped keys or issues. They are not a certification that every business record is correct.
3. Try the two failure-oriented examples
- Duplicate IDs: one repeated identifier is ambiguous. No row is silently selected. Investigate the export or choose a genuinely unique key.
- Decimal tolerance: a difference of exactly 0.01 matches when absolute tolerance is 0.01; a larger difference does not. Numeric comparison is opt-in and uses exact plain-decimal arithmetic. Do not apply it to IDs such as 007.
CSV quoting, duplicate identifiers and numeric tolerances are different concerns. A parser accepting a file does not mean its chosen key is unique or its values are fit for your decision.
4. Separate comparison from acceptance
- Confirm the chosen key represents your record identity.
- Review mapped fields and listed exclusions.
- Investigate changed/added/removed keys and all identifier/numeric issues.
- Keep the CSV report in approved storage.
- Record scope, evidence reference and the reviewer’s decision. The app defaults to Pending.
The record builder does not verify your evidence. Selected-field acceptance is blocked while duplicate/blank/invalid numeric issues remain, but a reviewer can still make a wrong decision about otherwise valid data.
5. Decide whether you need the complete toolkit
The free demo and three-case sample ZIP may be enough. The existing complete bundle adds a repeatable local CLI, acceptance playbook, evidence worksheets and review cards. See exactly what is included. Checkout remains closed.
Alternatives and boundaries
csv-diff and csvdiff are free command-line alternatives. Beyond Compare provides a mature desktop comparison workflow. Evaluate the tool that fits your inputs and review process; this walkthrough does not benchmark them.
This demo accepts UTF-8 CSV/TSV/semicolon text within its stated limits. It does not read XLSX, connect to databases, migrate records, validate totals or provide financial/accounting approval.
Written 7 October 2026. Examples and expected results are original synthetic exercises. No buying demand, search rank or customer outcomes are claimed.