What is a reconciliation context?
A reconciliation context defines the operational boundaries of a reconciliation process. It specifies:
- Which data sources are compared
- Which matching rules apply
- How exceptions are handled
- The time window covered by reconciliation
- Bank Account 1234 vs General Ledger (daily bank reconciliation)
- Payment Gateway vs Revenue System (payment reconciliation)
- Intercompany Entity A vs Entity B (intercompany reconciliation)
Context types
Matcher lets you use different reconciliation cardinalities based on transaction structure.
One-to-one (1:1)
Each transaction is reconciled against a single counterpart. Typical use cases:- Bank statements
- Direct payment matching
One-to-many (1:n)
One transaction is reconciled against multiple counterparts. Typical use cases:- Split payments
- Batch deposits
- Consolidated invoices
Many-to-many (n:m)
Multiple transactions are reconciled across multiple counterparts. Typical use cases:- Netting arrangements
- Complex payment allocation
- Multi-leg financial flows
Creating a context
Basic context creation
Request
cURL
Response
Context settings
| Setting | Type | Default | Description |
|---|---|---|---|
date_tolerance_days | Integer | 3 | Maximum allowed date difference |
auto_confirm_threshold | Integer | 90 | Confidence score required for auto-confirmation |
review_threshold | Integer | 60 | Minimum score to propose a match |
allow_partial_match | Boolean | false | Allow partial amount matching |
require_currency_match | Boolean | true | Enforce currency consistency |
enable_many_to_many | Boolean | false | Enable N:M reconciliation |
Automatic match scheduling
Matcher can run matching jobs automatically at scheduled intervals. Once configured, the system will process all available transactions from your sources at the defined frequency.
Schedule configuration
Configure automatic scheduling when creating or updating a context:Schedule frequencies
| Frequency | Description | Typical Use Case |
|---|---|---|
hourly | Every hour at minute :00 | Real-time payment reconciliation |
daily | Once per day at specified time | Bank statement reconciliation |
weekly | Once per week on specified day | Weekly treasury reports |
monthly | First day of month at specified time | Month-end close reconciliation |
custom | Cron expression | Complex scheduling needs |
Custom schedules
For advanced scheduling, use cron expressions:0 6 * * *- Daily at 6:00 AM0 6,18 * * 1-5- Twice daily (6 AM, 6 PM) on weekdays0 0 1 * *- Monthly on the 1st at midnight0 */4 * * *- Every 4 hours
Match run behavior
When a scheduled match runs:- Ingestion check: Verifies all sources have recent data
- Transaction retrieval: Pulls unmatched transactions from all sources
- Rule application: Applies match rules in priority order
- Confidence scoring: Calculates confidence for each proposed match
- Auto-confirmation: Confirms matches above the auto-confirm threshold
- Exception creation: Creates exceptions for unmatched items
- Notification: Sends alerts based on notification settings
Viewing match run history
cURL
Response
Manual match runs
You can also trigger matching manually:cURL
dry_run: true to preview results without confirming matches.
Advanced context configuration
cURL
What is a source?
A source represents a system or data feed that supplies transactions to a reconciliation context. Each context requires at least two sources. Typical sources include:
- Bank statement feeds
- ERP general ledger exports
- Payment processor transaction streams
- Internal accounting systems
Adding sources to a context
Create a source
cURL
Add an internal source
cURL
Source types
| Type | Description | Typical direction |
|---|---|---|
BANK | Bank statements | External |
LEDGER | General ledger accounts | Internal |
PAYMENT_GATEWAY | Payment processor transactions | External |
ERP | Enterprise systems | Internal |
CUSTOM | Custom integrations | Varies |
Source direction
Source direction indicates data ownership and origin.
| Direction | Description | Examples |
|---|---|---|
INTERNAL | Originates from internal systems | Ledger, ERP |
EXTERNAL | Provided by third parties | Banks, gateways |
- Exception classification and routing
- Audit attribution
- Variance ownership analysis
Source configuration options
Basic settings
Amount sign conventions
| Convention | Description | Example |
|---|---|---|
NATURAL | Positive = credit, negative = debit | +100 / -50 |
ABSOLUTE_WITH_TYPE | Always positive, direction defined separately | 100 credit / 50 debit |
INVERTED | Positive = debit, negative = credit | Inverted signs |
Regulatory flags
- Elevate exceptions to critical severity
- Require justification for resolutions
- Enforce extended audit retention
Managing contexts
Update context settings
cURL
Deactivate a context
- Stops scheduled executions
- Preserves historical data
- Allows future reactivation
Context lifecycle
A reconciliation context follows a well-defined lifecycle that controls when matching can run and how data is preserved.
- A context is first created in Draft, where sources and settings are configured.
- Once all required sources are in place, the context becomes Active and is eligible for reconciliation runs.
- An active context can be temporarily Paused to stop execution without affecting configuration or historical data.
- When reconciliation for a period is complete, the context is Closed, preserving all results and audit records for future reference.

Best practices
Use descriptive names
Use descriptive names
Use explicit names that reflect accounts, systems, and purpose.
Start with conservative thresholds
Start with conservative thresholds
Favor accuracy over automation initially. Adjust thresholds based on observed results.
Separate concerns
Separate concerns
Use multiple contexts instead of a single broad reconciliation.
Flag regulatory sources
Flag regulatory sources
Always mark sources with compliance requirements.
Align timezones
Align timezones
Ensure source timezones reflect the original data feed.
Document sign conventions
Document sign conventions
Explicitly define debit and credit semantics for each source.

