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

# What is Matcher?

> Discover how Lerian's source-available reconciliation engine automates transaction matching, exception handling, and audit trails.

export const GWebhook = ({children}) => <Tooltip headline="Webhook" tip="An automated notification sent from one system to another when a specific event occurs — for example, alerting your team when a reconciliation exception is found." cta="See glossary" href="/en/glossary">
    {children}
  </Tooltip>;

export const GSOX = ({children}) => <Tooltip headline="SOX" tip="Sarbanes-Oxley Act — a U.S. law mandating strict financial record-keeping and auditing standards, requiring immutable audit trails and accurate reporting." cta="See glossary" href="/en/glossary">
    {children}
  </Tooltip>;

export const GERP = ({children}) => <Tooltip headline="ERP" tip="Enterprise Resource Planning — business management software (SAP, Oracle, NetSuite) that integrates accounting, procurement, and inventory processes." cta="See glossary" href="/en/glossary">
    {children}
  </Tooltip>;

export const GAuditTrail = ({children}) => <Tooltip headline="Audit trail" tip="A chronological, immutable record of every action and transaction in the system — essential for regulatory compliance and dispute resolution." cta="See glossary" href="/en/glossary">
    {children}
  </Tooltip>;

export const GLedger = ({children}) => <Tooltip headline="Ledger" tip="The core financial book that records all transactions, balances, and operations for an organization — the single source of truth for a business unit's finances." cta="See glossary" href="/en/glossary">
    {children}
  </Tooltip>;

export const GSourceAvailable = ({children}) => <Tooltip headline="Source-available" tip="A licensing model where the source code is publicly accessible for inspection, modification, and self-hosting, while certain commercial uses may require a license." cta="See glossary" href="/en/glossary">
    {children}
  </Tooltip>;

export const GReconciliation = ({children}) => <Tooltip headline="Reconciliation" tip="The process of comparing two sets of records — for example, your internal ledger against bank statements — to verify they match and flag discrepancies." cta="See glossary" href="/en/glossary">
    {children}
  </Tooltip>;

**Matcher** is Lerian's <GSourceAvailable>source-available</GSourceAvailable> <GReconciliation>reconciliation</GReconciliation> engine that automates transaction reconciliation between any data sources—internal systems, banks, payment processors, <GERP>ERPs</GERP>, or payment gateways. The source code is publicly available on [GitHub](https://github.com/LerianStudio/matcher).

You configure matching rules once. Matcher handles the repetitive work—matching transactions, flagging discrepancies, and maintaining audit trails for compliance.

## Why use Matcher

***

Every financial institution reconciles transactions — comparing internal records against bank statements, payment processors, and ERPs. Most do it manually in spreadsheets. This does not scale: matching takes hours, errors go unnoticed, and month-end close becomes stressful.

Matcher solves this:

* **Automate matching**: Configure rules once, let the system handle routine matches
* **Know what's reliable**: Confidence scores tell you which matches are solid and which need review
* **Route exceptions**: Send unmatched items to JIRA, ServiceNow, or your own tools via <GWebhook>webhooks</GWebhook>
* **Stay compliant**: Every match and resolution is logged immutably for audits

## What Matcher does

***

* **Match automatically**: Apply exact or tolerance-based rules. Get confidence scores (0-100) for every match
* **Handle multiple sources**: Reconcile between banks, ERPs, payment processors, ledgers—all at once if needed
* **Manage exceptions**: Unmatched items get classified, routed to your team, and tracked until resolved
* **Audit everything**: Immutable logs and <GSOX>SOX</GSOX>-ready reports for compliance — a complete <GAuditTrail>audit trail</GAuditTrail>

### Matching features

* **Exact matching**: Match transactions by ID, amount, date, and custom attributes
* **Tolerance matching**: Allow controlled variance in amounts, defined as absolute values or percentages
* **Date range matching**: Handle timing differences using configurable date windows
* **Multi-currency support**: Reconcile transactions across currencies with FX rate handling
* **Split and aggregate matching**: Support 1:N, N:1, and N:M transaction relationships
* **Confidence scoring**: Assign a 0–100 score indicating match reliability
* **Dry run mode**: Preview matching results before committing changes

### Data ingestion

* Import data in **CSV**, **JSON**, or **XML** formats
* Automatic validation and duplicate detection
* Flexible field mapping for heterogeneous data sources
* Optional: Native access to Midaz Ledger transactions

### Workflow integration

* Route exceptions to **JIRA** or **ServiceNow**
* Emit events through **webhooks** for custom integrations
* Receive resolution callbacks from external systems
* Track SLAs and automatically escalate breaches

## Common use cases

***

<AccordionGroup>
  <Accordion title="Bank reconciliation">
    Match your internal records against daily bank statements. Upload CSVs, map fields, run matching. Review exceptions where the bank and your systems don't align.
  </Accordion>

  <Accordion title="Payment processors">
    Reconcile Stripe or Adyen settlements against your ledger or ERP. Handle splits (one payment, many invoices) and aggregates (many payments, one deposit) automatically.
  </Accordion>

  <Accordion title="Card networks">
    Match Visa, Mastercard, or Elo settlement files against your transaction records. Tolerance rules handle fee variances and timing differences between authorization and settlement.
  </Accordion>

  <Accordion title="Acquiring reconciliation (Interchange Plus)">
    Reconcile acquiring transactions with complex rate structures. Handle MCC-based rates, transaction type variations, and Interchange Plus models where rates vary by card type, merchant segment, and transaction method.
  </Accordion>

  <Accordion title="ERP sync">
    Verify SAP, Oracle, or NetSuite transactions against your other systems. Catch discrepancies before month-end close or audits.
  </Accordion>
</AccordionGroup>

## How Matcher works

***

<Steps>
  <Step title="Configure">
    Define what you're reconciling (contexts), where data comes from (sources), and how to match (rules).
  </Step>

  <Step title="Ingest">
    Upload files or pull data automatically. Matcher validates, normalizes, and deduplicates everything.
  </Step>

  <Step title="Match">
    Run a matching job. Matcher applies your rules and assigns confidence scores to each proposed match.
  </Step>

  <Step title="Review">
    High-confidence matches (>90%) get auto-approved. Lower scores and unmatched items go to your review queue.
  </Step>

  <Step title="Resolve">
    Handle exceptions: force a match, create an adjustment, split transactions, or route to JIRA/ServiceNow.
  </Step>

  <Step title="Report">
    Export reconciliation reports. Every action is logged immutably for audits.
  </Step>
</Steps>

## Integrations with the lerian ecosystem

***

Matcher is a stand-alone product that can optionally integrate with other components of the Lerian ecosystem.

| Product                                   | Integration                                                                          |
| ----------------------------------------- | ------------------------------------------------------------------------------------ |
| [Midaz](/en/midaz/about-midaz)            | Optional: Direct access to <GLedger>Ledger</GLedger> transactions for reconciliation |
| [Reporter](/en/reporter/what-is-reporter) | Optional: Reconciliation reports and audit summaries                                 |
| [Flowker](/en/flowker/what-is-flowker)    | Optional: Event-driven reconciliation workflows                                      |

<Note>
  Matcher works independently or as part of the Lerian Studio ecosystem. Use it alone or connect it to Midaz and other financial components as needed.
</Note>

<Note>
  All Matcher write endpoints (POST, PUT, PATCH) include built-in idempotency through the `X-Idempotency-Key` request header. For details, see [Retries and idempotency](/en/reference/retries-idempotency).
</Note>

## Next steps

***

<CardGroup cols={2}>
  <Card title="Core concepts" icon="book" href="/en/matcher/matcher-concepts">
    Understand the key concepts: contexts, sources, rules, matches, and exceptions.
  </Card>

  <Card title="Architecture" icon="sitemap" href="/en/matcher/matcher-architecture">
    Explore Matcher's architecture and data flow.
  </Card>

  <Card title="Quick start" icon="rocket" href="/en/matcher/getting-started/matcher-quick-start">
    Run your first reconciliation, then review matches and exceptions with confidence.
  </Card>

  <Card title="Match rules" icon="scale-balanced" href="/en/matcher/configuration/matcher-match-rules">
    Learn how to configure exact, tolerance, and date-based matching rules.
  </Card>
</CardGroup>

<Tip>
  [Explore the Matcher API](/en/reference/matcher/list-contexts). Browse endpoints for reconciliation contexts, sources, and matching rules.
</Tip>
