Bank matching rules and thresholds

Teach Bank Reconciliation your recurring entries with narration and counterparty rules, preview a rule against your history before it applies, approve the rules it learns from your manual matches, and tune the confidence thresholds and tolerances.

Updated 20 Oct 2026

Overview

Most of a landlord's bank entries repeat: the same tenant's NEFT every month, a GST challan from the same net-banking narration, the municipal tax portal, the electricity board. A rule tells Bank Reconciliation what such an entry is, so it is matched (or excluded) without a decision each time. Rules live on the Rules tab of Bank Reconciliation; the thresholds and tolerances they work with live on Settings.

A rule has three parts:

  • When the entry… — the pattern: Narration contains any of (words such as GSTIN, GST PMT), Narration matches pattern (a regular expression such as ^NEFT-.*-RENT), Counterparty contains any of (a payer's name), Reference matches pattern (^CPIN), a Channel (NEFT, IMPS, UPI, RTGS, cheque …), an Amount from … to range and whether it applies to Credits (money in), Debits (money out) or both.
  • Actions — the Kind (rent, invoice, GST payment, property tax, income tax, expense, loan, transfer, interest, charges, personal, ignore), the record it points at where that is fixed (a tenant / lease, a property, a vendor), a Category / note and the Confidence the rule gives a hit.
  • Tolerances — the amount and date tolerance the rule accepts around the record it points at, and Never apply when the narration contains — the rejected patterns, so a rule for ACME never fires on ACME REFUND.

Rules run in Order (top first) and only when Enabled; the first rule that fits decides. A Learned rule is one Property360 proposed after you matched something by hand — it does nothing until you approve it. Below the rules the tab lists the Learned matches — the mappings the engine remembers from every confirmation on its own, without a rule; see Learned matches. A rule always wins over a learned match.

Before you start

  • Rules are per landlord: a master admin edits any landlord's rules, a landlord their own. A CA cannot.
  • Decide the thresholds first (Settings → Matching thresholds): Auto-confirm at (default 90) is the confidence at and above which an entry is matched without asking; Propose at (default 60) is the floor below which the engine does not even propose. A rule's confidence sits in the same 0–100 scale, so a rule at 95 auto-confirms and a rule at 70 proposes.
  • Keep the Amount tolerance small (a percentage or a rupee amount) and the Date tolerance (days) realistic for your tenants; the defaults suit monthly rent paid within a few days of the due date.

Steps

Create a rule

  1. Open Bank Reconciliation → Rules and click New rule.
  2. Give it a Name (for example GST challans via net banking), choose what it Applies to and fill the pattern — one of the pattern fields is enough.
  3. Choose the Kind and, for rent, the tenant or lease the entry belongs to; set the Confidence.
  4. Click Preview on the server (all history). The preview counts how many of your imported entries the rule would have matched and shows a sample, so you can see whether it is too broad before it applies to anything.
  5. Save. The rule is Enabled at once and takes effect on the next matching run; use Run earlier / the order arrows to move it above a more general rule.

Approve a learned rule

  1. After you Match manually an unmatched entry, Property360 proposes a rule from its narration or counterparty and the record you chose; it appears under Learned proposals on the Rules tab.
  2. Open it, check the pattern and the preview, tighten it if it is too broad (add words to Never apply when the narration contains), then Approve. Until approval a learned rule never fires.

Tune the thresholds

  1. Open Settings.
  2. Raise Auto-confirm at if too many automatic matches turn out wrong; lower Propose at if obvious candidates are missing from the queue.
  3. Switch Auto-post rent receipts on automatic matches on only once you trust the automatic matches — with it off, a confirmed rent match posts a receipt only when you tick it.

Example

Every month Meridian Software pays rent by NEFT with the narration NEFT-MERIDIAN SOFTWARE-RENT <month>. Kaveri creates the rule Meridian rent: narration matches ^NEFT-MERIDIAN SOFTWARE-RENT, applies to credits, kind Rent for the Meridian lease, confidence 95, date tolerance 7 days, never apply when the narration contains REFUND. The preview shows 11 hits in the last year, all rent. From the next statement on, the Meridian credits are Matched · auto with the chip rule: Meridian rent; a short payment outside the tolerance still lands in Exceptions as a Discrepancy.

FAQs

Which wins, a rule or the engine's own scoring?

The first enabled rule that fits sets the kind and the target; the engine still checks the amount and date against that target within the rule's tolerances and assigns the rule's confidence. Without a rule the engine scores on amount, month, tenant name, UTR, recurring patterns and the learned matches. When a rule fires, the learned matches are not consulted for that entry.

Can a rule exclude entries?

Yes — kind Ignore, Personal, Transfer, Interest or Charges marks the entry excluded (with the reason) instead of matching it to a record.

What does the "Hits" column show?

How many entries the rule has matched since it was created and when it last fired — a rule with no hits for months is a candidate for deletion.

Troubleshooting

A rule matched the wrong tenant

Two tenants share a word in their narrations. Make the pattern more specific (the full name, or a regular expression anchored with ^), add the other tenant's name under Never apply when the narration contains, then unmatch the wrong entries and run matching again.

The preview counts 0 hits

The pattern does not appear in any imported narration — check the spelling against the Transactions tab (narrations are compared without case and with extra spaces removed) or use Narration contains any of instead of a regular expression.

A learned proposal keeps reappearing

It is re-proposed after each manual match until you approve or delete it. Delete it if you prefer to keep matching that payer by hand.

Was this article helpful?