> ## Documentation Index
> Fetch the complete documentation index at: https://docs.reconifyhq.com/llms.txt
> Use this file to discover all available pages before exploring further.

> ## Agent Instructions
> Reconify's API reference is read-only for customer data. Do not invent endpoints or authentication behavior beyond the OpenAPI contract.
> The public OpenAPI document contains only the documented external /v2 contract.

# Quickstart

> Two files, three commands, one results file.

To start the reconciliation process, you usually need a left file and a right file that share some identifier: an invoice number, a payment ID, a reference string.

## 1. Infer a config

```bash theme={"theme":{"light":"github-light","dark":"github-dark"}}
reconify config infer --left path/to/left-file.csv --right path/to/right-file.csv --out reconify.yaml
```

This writes a `reconify.yaml` mapping both files' date, amount, and reference columns:

```yaml theme={"theme":{"light":"github-light","dark":"github-dark"}}
version: 1
timezone: "UTC"

sources:
  left_source:
    file_pattern: "path/to/left-file.csv"
    parser:
      type: csv
      date_col: "Date"
      date_layout: "2006-01-02"
      amount_col: "Amount"
      multiplier: 100
      currency_col: "Currency"
      ref_col: "Reference"
      name_col: "Details"

  right_source:
    file_pattern: "path/to/right-file.csv"
    parser:
      type: csv
      date_col: "created"
      date_layout: "2006-01-02"
      amount_col: "amount"
      multiplier: 1
      currency_col: "currency"
      ref_col: "id"
      name_col: "description"

pairs:
  left_source_vs_right_source:
    left: left_source
    right: right_source
    date_window: "1d"
    amount_tolerance_minor: 0
```

`config infer` only writes this file when it is confident in the date, amount, and reference mappings. If it isn't, it exits with code `2` and writes nothing.

See [Create a config](/cli/guides/create-config) for the hand-written and wizard paths, and [Run it with an agent](/cli/agents) for what "confident" means.

## 2. Check the mapping

```bash theme={"theme":{"light":"github-light","dark":"github-dark"}}
reconify parse --config reconify.yaml --source left_source --file path/to/left-file.csv --format table
```

Before you reconcile anything, look at three things in the output: the date hasn't shifted by a day, the amount is in minor units (`150000`, not `1500.00`), and the reference column is populated.

## 3. Reconcile

```bash theme={"theme":{"light":"github-light","dark":"github-dark"}}
reconify reconcile --config reconify.yaml --pair left_source_vs_right_source --out results.json
```

For a large file, stream NDJSON instead of buffering JSON. See [Handle large files](/cli/guides/large-data).

## 4. Read the summary

Open `results.json` and start with `summary`:

```json theme={"theme":{"light":"github-light","dark":"github-dark"}}
{
  "currency": "NGN",
  "total_left": 842,
  "total_right": 851,
  "matched": 810,
  "unmatched_left": 12,
  "unmatched_right": 18,
  "amount_diff_count": 6,
  "timing_diff_count": 4,
  "duplicate_count": 2,
  "match_rate_pct": 96.2,
  "reconciled_rate_pct": 97.6
}
```

Every monetary field Reconify emits is in minor units: `150000` is `1,500.00`. A healthy run looks like high `matched`, low everything else. Read [Read the results](/cli/guides/read-results) for what to check first when it doesn't.
