AI Matching Algorithm
Bank-statement matching in REDA Financials is a three-layer stack, and knowing which layer does what makes you faster with all of them. The deterministic passes take the certain, rules take the recurring, AI takes the judgment calls — this article is the "how it thinks" companion to the hands-on AI & Auto-Matching guide in Banking.
Access you'll need. Any REDA Financials permission set can open a reconciliation and read its matches; running the AI and accepting matches (reconciling) requires the Accounting Admin v2 or Accounting Controller v2 permission set. The Accounts Payable v2, Accounts Receivable v2, and Read Only v2 sets can view but not reconcile.
The stack, top to bottom
| Layer | Logic | Trust model |
|---|---|---|
| 1 — Deterministic passes | Pass 1: amount + date + exact reference/check number. Pass 2: amount within the account's date window, closest date wins, ties skipped. Pass 3: amount with exactly one candidate anywhere. | Applies automatically — the conditions are the proof |
| 2 — Rules | Your patterns ("MONTHLY ACCOUNT SERVICE FEE" → fee journal), first match wins by priority | Applies automatically — you wrote the rule |
| 3 — AI suggestions | A reasoning model reads the leftovers with context: your reconciliation history, your rules, your past adjustments | Suggests only — confidence-scored, human-accepted |
What the AI layer actually considers
- Your manual-match history (up to a thousand past decisions) — the patterns your team has personally blessed: "this vendor's wire descriptions never carry references, but amounts and Fridays line up."
- Your active rules — so it won't re-suggest what automation already handles, and can propose new rules for patterns it keeps seeing.
- Your past adjustments — teaching it what your team books as fees, interest, FX noise.
- The unmatched residue itself — both sides, in bulk, so it can reason across candidates the deterministic passes found ambiguous.
All of that context is assembled fresh on every run — there is no stale snapshot to go out of date. The volumes it can take in per run:
| What the AI reads | How much, per run |
|---|---|
| Your team's historical manual matches | Up to 1,000 |
| Your active matching rules | Up to 50 |
| Unmatched bank statement lines in the current reconciliation | Up to 500 |
| Unmatched book-side candidates — posted receipts, payments, journal lines on the bank's GL account, and bank deposits | Up to 500 |
| Past reconciliation-adjustment journal entries | Up to 100 |
It returns three suggestion types — matches (only 70%+ confidence surfaces; 90%+ gets the green badge and the "Accept All ≥90%" fast lane), adjustments ("this is a bank fee — book it, don't hunt it") and rules ("you match this pattern every month; automate it") — each with written reasoning you can actually audit.
Running it: the Run AI button
AI matching lives in the Reconciliation Workspace — the working screen on every Bank Reconciliation record (see Starting a Reconciliation). Alongside Auto Match and Run Rules sits Run AI:
Clear the certain work first
Run Auto Match (which chains your rules) so the deterministic layers absorb everything they can. The AI is at its best — and cheapest to review — when it only sees the genuine leftovers.
Click Run AI and watch the progress steps
The workspace reports four stages: "Analysing reconciliation history…", "Building context…", "AI processing…", "Analysis complete". One click is one complete analysis pass over everything still unmatched.
Read the summary toast
A notification totals the findings: "AI found {0} match suggestion(s), {1} adjustment suggestion(s), and {2} rule suggestion(s)." If nothing cleared the quality bar you see "AI found no suggestions for the current unmatched items." instead — nothing changed, nothing to undo.
Work the AI Match Suggestions panel
Suggestions wait in a review panel (next section). Nothing has been applied yet — the run itself never touches your books.
The three suggestion types
| Type | What it proposes | What accepting does |
|---|---|---|
| Match | Pairs one unmatched bank statement line with one book entry (a receipt, payment, journal line, or bank deposit). Only suggestions the AI scores at 70% confidence or higher are shown at all. | Applies the match immediately — the line is reconciled, recorded as a Manual match under your name with the date (see below for why). |
| Adjustment | Flags bank-only lines — fees, interest, FX differences — that have no book-side counterpart and need a journal entry rather than a match. | Nothing — it's advice. You book it yourself with the workspace's Create Adjustment flow (see Completing a Reconciliation). |
| Rule | A recurring pattern worth automating — and it deliberately won't propose a rule that duplicates one you already have. | Nothing — it's advice. You create the rule yourself on the bank account (see Bank Account Rules). |
Reading the AI Match Suggestions panel
Every suggestion arrives with the two things a reviewer needs: a Confidence score — shown green at 90% and above, the "verify by exception" tier — and a written Reasoning line explaining why the AI paired these two records. Three buttons control what happens next:
| Button | What it does |
|---|---|
| Accept Selected | Applies exactly the match suggestions you have ticked. Rows at 90%+ arrive pre-ticked; everything else waits for your judgment. |
| Accept All ≥90% | The fast lane: applies every green-badge suggestion in one click. |
| Dismiss All | Closes the panel without applying anything. No trace on the books — you can run the AI again any time. |
On acceptance a toast confirms "{0} AI match(es) applied successfully." — and each applied pair is stamped exactly like a match you made by hand: Match Type "Manual", matched by you, dated. That is deliberate: your acceptance is the decision of record, and — usefully — every accepted suggestion joins the manual-match history the AI studies on its next run.
The setting that shapes the search: AI Match Window Days
Each bank account carries one AI tuning field — AI Match Window Days, default 10. Its built-in help text says it best: "How many days before/after a bank statement line date to look for matching transactions when using AI matching. Default is 10 days. Increase for accounts with longer clearing times." The same window also sets the date tolerance for Auto Match's date-range pass and how the workspace sorts candidate matches — one field tunes the whole stack consistently. It lives on the Bank Account record; see Bank Account Configuration.
A worked run at Meridian
Meridian Properties US LLC's June reconciliation on the operating account: Auto Match and rules cleared the bulk, leaving six statement lines. The team clicks Run AI, and the toast reports "AI found 3 match suggestion(s), 2 adjustment suggestion(s), and 1 rule suggestion(s).":
| Statement line | Suggestion | Confidence | The reasoning, in short |
|---|---|---|---|
| "BRIGHTLINE RET GRP TRNSFR" — $13,500.00 | Match to receipt MCR001031 | 96% (green, pre-ticked) | Amount and direction agree, dates two days apart, and Brightline's wires have historically arrived without invoice references |
| "CORVUS CONSULT ACH PMT" — $9,000.00 | Match to receipt MCR001032 | 93% (green, pre-ticked) | Fits Corvus's monthly rent pattern from past reconciliations |
| "TENANT PAYMENT" — $4,200.00 | Match to receipt MCR001029 | 78% (below the green bar) | Two tenants pay $4,200; the date fits this one better — the reviewer should confirm |
| "MONTHLY ACCOUNT SERVICE FEE" — $45.00 | Adjustment | — | Bank fee with no book-side counterpart; book it via Create Adjustment |
| "INTEREST CREDIT" — $12.19 | Adjustment | — | Bank interest; same treatment |
| (pattern across months) | Rule | — | The service fee recurs monthly — a Bank Account Rule would clear it automatically from now on |
Accept All ≥90% applies the two green matches; the 78% suggestion gets its reasoning read and is applied via Accept Selected; the two adjustments are booked in one Create Adjustment journal; and the rule idea becomes a real rule on the account — so next month there are five fewer leftovers.
Making every layer smarter
- Feed layer 1: real references on receipts and payments — every exact-pass match is a reference someone recorded well.
- Promote to layer 2: when the AI suggests the same match pattern twice, that's a rule waiting to be written (Training Matching Rules).
- Curate layer 3's diet: your accepted matches are its textbook — consistent matching habits produce consistent suggestions.
Messages you may meet
| The message | What it means / what to do |
|---|---|
| "AI API key is not configured. Please activate your REDA Financials AI license." | The org has no active REDA Financials AI licence, so the AI layer can't run. An administrator activates the licence in the Admin Console's Subscription tab; deterministic matching and rules are unaffected. |
| "AI analysis failed: {0}" | The run didn't complete — the detail in the message says why. Nothing was applied; resolve or wait, then click Run AI again. |
| "AI found no suggestions for the current unmatched items." | Nothing cleared the 70% confidence bar. Not an error — match the leftovers manually, and consider whether a wider AI Match Window Days would help next time. |
| "AI found {0} match suggestion(s), {1} adjustment suggestion(s), and {2} rule suggestion(s)." | The run summary — the panel now holds this many proposals, none applied yet. |
| "{0} AI match(es) applied successfully." | Confirmation after accepting — that many statement lines are now reconciled, stamped as Manual matches. |
Common mistakes to avoid
| Mistake | Why it hurts | Do this instead |
|---|---|---|
| Running AI before Auto Match and rules | The AI wades through pairs the deterministic passes would have applied for free — more suggestions to review, none of them interesting | Auto Match first (it chains the rules), then Run AI on the true leftovers |
| Accepting sub-90% suggestions without reading the Reasoning | A wrong match is recorded under your name — and joins the history future runs learn from | Fast-lane the greens with Accept All ≥90%; read every lower-confidence row's reasoning before ticking it |
| Treating an adjustment or rule suggestion as "done" | They are display-only — the fee line stays unmatched and the reconciliation difference stays non-zero | Create the adjustment journal or the Bank Account Rule yourself, then re-check the workspace |
| Leaving AI Match Window Days at 10 for slow-clearing accounts | Genuine pairs sit just outside the date window and never surface | Raise the field on that bank account, exactly as its help text suggests |
| Looking for an "AI" stamp on matched lines | Confusion at audit time when accepted suggestions read "Manual" | Expect Match Type "Manual" — the acceptance, and the accountability, are yours |
Where to go next
- AI & Auto-Matching — the buttons and the workflow.
- Training Matching Rules — turning suggestions into automation.
- Manual Matching — the human layer beneath it all.
Frequently asked questions
The model's own certainty that the pairing is right, given everything it saw — treat 90+ as "verify by exception", 70–89 as "read the reasoning first". The reasoning line is the real product: it tells you why, which is what you'd ask a junior clerk.
No — the context is your org's own history and the current reconciliation, assembled per run. That's also why its suggestions feel like your team's habits: they are.
AI matching is part of the REDA Financials AI licence. Without an active licence the Run AI button reports that AI isn't configured — the deterministic passes and rules keep working regardless.
Because accepting a suggestion applies it through the same path as a hand-made match — you reviewed it, you accepted it, so the reconciliation records it as a manual decision. That's also what feeds the learning loop: every accepted match becomes history the next run can draw on.
Adjustment and rule suggestions are display-only by design: they change your books or your standing automation, so a person creates them deliberately. Treat them as a well-argued to-do list, not pending actions.
"AI found no suggestions for the current unmatched items." is a real answer, not a failure — nothing in the remaining lines cleared its confidence bar. Widen the date window (AI Match Window Days), match a few by hand to build history, and run again next cycle.
On a mature account with months of history, that's the intended workflow — accept the green rows in bulk, then spend your attention on the 70–89% band. In the first weeks, read the reasoning lines even on green rows until the suggestions have earned it.
Was this article helpful?