Skip to main content
The five core concepts in Matcher: contexts, sources, field maps, rules, and matches. Understand these and you’ll understand how the entire system works.

Context


A context defines what you’re reconciling. It’s the container that holds your sources, rules, and results.
A context answers: what am I matching against what?

Context types

Example

A context named “Chase Bank vs ERP System” would:
  • Define Chase Bank as one reconciliation source
  • Define your ERP system as another source
  • Specify the rules used to reconcile transactions between them

Source


A source is where transactions come from. Every context needs at least two sources—that’s what you’re reconciling.

Source types

  • LEDGER: Internal ledger systems (including Midaz)
  • BANK: Bank statement feeds
  • GATEWAY: Payment gateway settlements (Stripe, Adyen, PayPal)
  • CUSTOM: Bespoke, user-defined feeds
  • FETCHER: Sources pulled automatically by the discovery engine (aggregator connections)

Source setup

Each source requires:
  • Name: Label it (e.g., “Chase Checking”)
  • Type: Category (LEDGER, BANK, GATEWAY, CUSTOM, or FETCHER)
  • Side: Which matching side it feeds (LEFT or RIGHT)
  • Config: Source-specific connection and parsing settings
Field maps translate each source’s fields into Matcher’s standard schema.

Field map


A field map translates external field names into Matcher’s standard schema. Every system calls things differently—field maps normalize that.

Standard fields

The canonical vocabulary is closed — a field map that declares any other key is rejected.

Example mapping

A bank statement exposing TXN_ID, VALUE, CCY, and POST_DATE would be mapped as:

Match rule


A match rule tells Matcher how to compare transactions. Rules run in priority order—first match wins.

Rule types

  • EXACT: Fields must match exactly (amount, date, reference)
  • TOLERANCE: Allow small differences (0.5% variance, $10 absolute)
  • DATE_LAG: Match within a date window (±3 days). Like FUZZY, DATE_LAG matches never auto-confirm — they always go to manual review.
  • FUZZY: Graded similarity on references/descriptions (normalized, substring, or similarity-scored). FUZZY only proposes—it never auto-confirms, so a human reviews every fuzzy link.

Priority order

Lower numbers run first. Matcher stops at the first matching rule.

Rule parameters

Match


A match is when transactions from different sources are reconciled together. It’s the end goal.

Match status

Match patterns

1:1 match

One transaction from each source is reconciled.

1:N match

One transaction is reconciled against multiple transactions.

N:1 match

Multiple transactions are reconciled against a single transaction.

Match items

Each match group contains match items, which record transaction participation and allocation. This enables partial reconciliation in split and aggregation scenarios.

Exception


An exception is a transaction that didn’t match. It needs manual review.

Exception status

Severity

Matcher auto-classifies exceptions so you know what to prioritize.

Resolution types

  • Force match: Manually reconcile transactions
  • Adjustment: Record a compensating adjustment
  • Write-off: Close the exception with justification

Confidence score


A confidence score indicates the reliability of an automated match on a 0–100 scale. Higher scores represent stronger alignment between transactions.

Score calculation

Confidence tiers

Confidence weights and tier thresholds are fixed by the engine and are not configurable.

Audit log


An audit log is an immutable record of all system actions. It provides full traceability for operational review, audits, and regulatory compliance.

Logged events

Audit entries are created for:
  • Context, source, and rule changes
  • File ingestion and processing
  • Match confirmations and rejections
  • Exception resolution and overrides

Audit entry contents

Audit logs are append-only. Entries cannot be modified or removed.

Next steps


Architecture

See how these concepts are implemented across bounded contexts.

Quick start

Apply these concepts in a guided, hands-on flow.