Bank Reconciliation
Bank Reconciliation closes the last gap in the revenue lifecycle: a deposit has landed in your bank, and something in Suger says it should have. This page matches the two, automatically where it is confident enough and through a human review queue where it is not.
Overview
Open Revenue → Bank Reconciliation, under Operations in the sidebar. The page has four summary cards, a reconciliation summary panel, and two tabs — All Transactions and Review Queue.
It reads the bank accounts you connected on the Bank Accounts tab of Revenue Settings. Until at least one account is linked there, there is nothing here to reconcile.
How a bank transaction gets matched
Matching runs in three tiers. A transaction only reaches a person once the two automatic tiers have declined to settle it:
The thresholds are fixed, not configurable:
| Control | Value | What it governs |
|---|---|---|
| Auto-match confidence | 0.94 | The minimum score at which an AI-assisted match is accepted without review. |
| Amount tolerance | the larger of 0.5% or $1.00 | How far a deposit may differ from the expected amount and still be treated as the same money. The fixed $1.00 floor stops tiny transactions from being rejected over rounding. |
| Date window (scoring) | 7 days | How far apart a transaction and a candidate revenue record may be dated. |
| Date window (payment rules) | 3 days | The tighter settlement-date window the rule-based tier uses. |
| First import | 24 months | History pulled when an account has never completed a sync. |
| Overlap window | 7 days | Re-read before the last cursor on every later sync, so late-posted and corrected transactions are picked up. |
Summary cards
| Card | Meaning |
|---|---|
| Match Rate | The share of transactions in scope that are neither awaiting review nor carrying a variance. |
| Needs Review | Transactions that still need a decision. Read the number, not the subtitle — see the warning below. |
| Variances | Transactions matched to something, but for an amount that does not agree. |
| Total Transactions | Every bank transaction in scope. |
All Transactions
The All Transactions tab lists every imported bank transaction with its date, amount, reference, description, match status, and variance.
Review Queue
The Review Queue tab is scoped to the transactions still awaiting a decision, and its tab label carries that count. Each row offers Review Match, which opens the review dialog.
To work one transaction:
- Open the Review Queue tab.
- Select Review Match on the transaction you want to settle.
- Review the suggested matches. Each suggestion was saved when the transaction was scored, and shows its confidence percentage and the reason it was suggested.
- If none of them is right, choose a target type and search for the correct record yourself.
- Add a comment explaining the decision.
- Select Approve Match to bind the transaction to the selected candidate, or Reject Suggestion to decline the suggestions without binding anything.
Approve Match requires a selected candidate. Reject Suggestion does not — it records that the suggestions were wrong and returns the transaction to the queue.
What a transaction can be matched to
| Target type | What it is |
|---|---|
| Payment | A payment transaction. This is the default target type. |
| Invoice | An invoice from Invoices. |
| Disbursement | A marketplace or Stripe payout from Cash & Disbursements. |
| Revenue record | A normalized row from Revenue Records. |
KPI calculation formulas
Counts are over the bank transactions in scope. Amounts are converted to USD at the rate for the reporting date; if a rate is unavailable for any currency present, the summary is not returned rather than being reported with a gap.
| KPI | Formula | Calculation details |
|---|---|---|
| Total Transactions | count(bank transactions in scope) | The denominator for Match Rate. |
| Needs Review | unmatched + in review + AI-matched | Includes AI-matched transactions, which the card’s subtitle does not mention. |
| Variances | count(transactions in variance status) | Matched, but for a disagreeing amount. |
| Review queue | needs review + variances | Backs the count on the Review Queue tab label. |
| Matched | max(0, total transactions − review queue) | Never negative. |
| Match Rate | matched ÷ total transactions × 100 | Zero when there are no transactions in scope. |
| Unmatched amount | Σ unmatched transaction amounts, converted to USD | Summed per currency, then converted. |
| Variance amount | Σ variance amounts, converted to USD | Same conversion. |
Freshness
Bank reconciliation runs on its own schedule — every 15 minutes, for every organization with an active bank account — and does not wait for a channel sync. Provider upserts and the overlap window make repeated runs idempotent, so a transaction is never double-imported. See Revenue Settings for the accounts that feed it.
Spotted something wrong or out of date on this page? Tell us and we'll correct it.