Skip to main content
Confidence scores indicate the reliability of an automated match on a scale of 0-100. Higher scores mean greater certainty that two transactions represent the same financial event.

Overview


When Matcher identifies a potential match, it assigns a confidence score based on multiple factors. This score defines how the match is handled:
  • High scores (90+) are auto-approved
  • Mid-range (60 – 89) scores require review
  • Low scores (<60) are treated as exceptions
Matcher Confidence Scoring

Score components


Matcher uses a binary weighted scoring system with four components. Each component evaluates to either a full match (1.0) or no match (0.0) — there are no partial scores within a component.
ComponentWeightMatchNo match
Amount match40%40 points0 points
Currency match30%30 points0 points
Date proximity20%20 points0 points
Reference match10%10 points0 points

Amount match (40%)

The amount component has the highest weight because amount discrepancies often indicate different transactions.
ConditionScore
Amounts match (within rule tolerance)40 points
Amounts do not match0 points
Amount matching depends on the active rule type. An EXACT rule requires identical amounts; a TOLERANCE rule allows variance within the configured percentTolerance and absTolerance.

Currency match (30%)

Currency verification is binary — currencies either match or they don’t.
ConditionScore
Same currency30 points
Different currency0 points

Date proximity (20%)

Date scoring checks whether the transaction dates fall within the configured window.
ConditionScore
Dates within allowed window20 points
Dates outside allowed window0 points
The allowed window depends on the rule: an EXACT rule requires the same date (respecting datePrecision), while a DATE_LAG rule allows up to maxDays difference.

Reference match (10%)

Reference comparison is also binary.
ConditionScore
References match (exact or case-insensitive)10 points
References do not match or are absent0 points

Calculation formula


The confidence score formula:
confidence = round(
  (amountMatch × 0.40 +
   currencyMatch × 0.30 +
   dateMatch × 0.20 +
   referenceScore × 0.10) × 100
)
Where each factor is either 1.0 (match) or 0.0 (no match). The weights are hardcoded constants and are not configurable per context.

Possible scores

Because each component is binary, the confidence score is always one of these values: 0, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100 Intermediate values (e.g. 87, 72, 55) never occur.

Calculation examples


Exact match (score: 100)

Two transactions with identical values on the same day:
ComponentSourceTargetMatch?Points
Amount$1,000.00$1,000.00Yes40
CurrencyUSDUSDYes30
Date2024-01-152024-01-15Yes20
ReferencePAY-001PAY-001Yes10
Final Score: 100 → Auto-confirmed

High confidence match (score: 90)

All fields match except reference:
ComponentSourceTargetMatch?Points
Amount$1,000.00$1,000.00Yes40
CurrencyUSDUSDYes30
Date2024-01-152024-01-15Yes20
ReferencePAY-001No0
Final Score: 90 → Auto-confirmed

Medium confidence (score: 70)

Amount and currency match, but date and reference do not:
ComponentSourceTargetMatch?Points
Amount$1,000.00$1,000.00Yes40
CurrencyUSDUSDYes30
Date2024-01-152024-01-25No0
ReferencePAY-001REC-999No0
Final Score: 70 → Needs review

Low confidence (score: 40)

Only amount matches:
ComponentSourceTargetMatch?Points
Amount$1,000.00$1,000.00Yes40
CurrencyUSDEURNo0
Date2024-01-152024-01-25No0
ReferenceNo0
Final Score: 40 → Exception (below 60)

Confidence tiers


Matcher categorizes matches into tiers based on score:
TierScore RangeSystem BehaviorTypical Volume
Auto-Approved>= 90Automatically confirmed70-80%
Needs Review60-89Queued for manual review15-25%
Exception< 60Treated as unmatched5-10%

How confidence tiers are applied

When Matcher proposes a match, it evaluates the confidence score and applies the following steps:
  1. If the score is 90 or higher, the match is automatically confirmed.
  2. If the score is between 60 and 89, the match is queued for manual review.
  3. If the score is below 60, no match is created and the transaction becomes an exception.
  4. Reviewed matches can be either confirmed or rejected, updating their final status.
This ensures high-confidence matches flow automatically while keeping human control where it matters.

Confidence thresholds


Matcher uses fixed thresholds to determine how matches are handled:
ThresholdScoreBehavior
Auto-confirm>= 90Match is automatically confirmed
Match>= 60Match is proposed for manual review
Exception< 60No match created; transaction becomes an exception
These thresholds are not configurable per context.

Weights


The component weights (40/30/20/10) are hardcoded constants. They cannot be adjusted per context or per rule.
ComponentWeightRationale
Amount40%Amount is the strongest indicator of a valid match
Currency30%Currency mismatch usually means different transactions
Date20%Date proximity adds confidence but allows for settlement delays
Reference10%References are helpful but often missing or inconsistent

Best practices


Track the percentage of transactions in each tier. Unusual shifts may indicate data quality issues or rule misconfiguration.
Since confidence depends on which rules match, always dry-run rule changes before committing. This prevents unexpected increases in manual review volume.
Periodically review matches just above the exception threshold. These often reveal opportunities for rule improvements.
Because scoring is binary, a score of 70 means exactly “amount + currency matched, date + reference did not.” Use this to diagnose matching issues.

Next steps