Skip to main content
This guide is intended for developers. If you’re looking for a business-level overview of what Matcher does and how it helps your team, see What is Matcher?.
Get Matcher running in minutes. This guide walks you through the complete journey, from creating your first reconciliation context to reviewing matched transactions.

Before you begin


You need:
  • A running Matcher instance
  • A valid JWT token for authentication
  • Two transaction files to reconcile (CSV, JSON, or XML)
All examples use cURL. Replace $TOKEN with your JWT token and https://api.matcher.example.com with your Matcher URL.

Step 1: Create a reconciliation context


A context defines the scope of your reconciliation: what you are comparing and how.
API reference: Create context
cURL
The type field defines how transactions are paired: Save the id from the response. You will use it in every subsequent step.
The context starts in DRAFT status. It moves to ACTIVE when you are ready to run reconciliation.

Step 2: Add data sources


Every context needs at least two sources: the systems whose transactions you want to compare.
API reference: Create source

Create a bank source

cURL

Create a ledger source

cURL
Save both source id values.

Source types

Step 3: Map source fields


Your source files probably use different column names than Matcher expects. Field maps translate them into Matcher’s standard schema.
API reference: Create field map

Map the bank source

cURL

Map the ledger source

cURL

Required fields

Every transaction must have these fields after mapping: Optional but recommended: reference (external reference or description).

Step 4: Create match rules


Rules define how Matcher compares transactions. Start with an exact rule, which is the most precise.
API reference: Create match rule

Create an exact rule

cURL

Add a tolerance rule as fallback

Catch small differences like bank fees or rounding:
cURL
Matcher evaluates rules by priority (lowest number first). The exact rule runs first. Only unmatched transactions fall through to the tolerance rule.

Rule types

Step 5: Activate the context


Move the context from DRAFT to ACTIVE:
API reference: Update context
cURL

Step 6: Upload transaction files


Upload one file per source. Matcher accepts CSV, JSON, and XML formats via multipart form upload.

Upload bank transactions

cURL

Upload ledger transactions

cURL
Each upload creates an ingestion job. Check the job status:
cURL
Wait for both jobs to reach COMPLETED status before running the match.

Step 7: Run matching


Start with a dry run to preview results without persisting:
API reference: Run match
cURL
Both responses include a runId. Save it for Step 8. Review the dry run results. When satisfied, run with COMMIT to persist matches:
cURL

Step 8: Review results


View match groups

cURL
Each match group contains paired transactions and a confidence score (0-100):

Undo an incorrect match

Use the unmatch endpoint to reject a match group and return transactions to the unmatched pool:
cURL
Rejected transactions return to the unmatched pool for the next run.

Step 9: Handle exceptions


Exceptions are transactions that could not be matched automatically. Matcher classifies each exception by severity:
API reference: List exceptions

List exceptions

cURL
Resolve exceptions by force matching, creating adjustments, or dispatching to external systems like JIRA.

Next steps


Contexts and sources

Full guide to context and source configuration.

Match rules

All rule types and config options in detail.

Confidence scoring

How scores are calculated and what they mean.

Resolving exceptions

Handle unmatched transactions.