← Glossary

Cash Reconciliation Software

Software that matches a broker-dealer's internal cash ledger against bank statements and clearing utility records in real time, surfacing breaks for resolution before they create reserve formula errors, missed sweeps, or Rule 15c3-3 violations.

Definition

Cash reconciliation is not an accounting clean-up function. In a T+1 settlement environment with daily reserve computation mandates and elevated overnight rates, it is the front line of liquidity management. An unreconciled cash break is not a cosmetic discrepancy that can wait for the weekly FINOP review — it is a position uncertainty that prevents the treasury from sweeping cash, an input gap that can corrupt the reserve formula computation, and a compliance exposure that surfaces in examination as an inaccurate Rule 15c3-3 filing. The operational standard has shifted: from batch processing against an end-of-day bank statement to event-driven matching against real-time ISO 20022 notifications as each cash movement occurs.

Cash reconciliation software manages three distinct match layers that together constitute the complete cash verification picture. The first is the internal-to-bank match: comparing the firm's accounting book of record, trade settlement flows, fee postings, and dividend receipts against the bank or custodian statement. This two-way match confirms that the bank's record of what happened in the account matches the firm's record of what should have happened. The second is the intraday-to-instruction match: pairing each cash event reported in a camt.054 debit/credit notification against the expected settlement instruction that originated it — the sese.023 instruction generated by settlement instruction automation. This match confirms that cash received or sent corresponds to a specific trade the firm instructed, not an unidentified movement that requires manual investigation. The third layer, for broker-dealers with DTCC connectivity, is the three-way match: adding the DTCC settlement activity files to confirm that the securities trade generating the expected cash flow actually settled at the CSD level, not merely at the custodian level.

The ISO 20022 Cash Management Message Family

Effective intraday cash reconciliation depends on the ISO 20022 camt message family. The camt.052 Bank-to-Customer Account Report provides a running view of the account throughout the business day — banks typically send two to four camt.052 messages at scheduled intervals, allowing treasury teams to track intraday cash positions without waiting for end-of-day. The camt.053 Bank-to-Customer Statement is the authoritative end-of-day report confirming all settled entries for the value date; it remains the input to most legacy reconciliation workflows. The camt.054 Bank-to-Customer Debit Credit Notification issues a near-real-time notification as each individual debit or credit posts — before the next camt.052 intraday report and well before the camt.053 EOD batch. Delivery timing varies by bank: some issue individual camt.054 messages as each transaction posts, others batch in short intervals. Either way, camt.054 arrives significantly earlier in the business day than the EOD statement, enabling intraday break detection rather than post-mortem discovery. For firms connected to the Federal Reserve's FedNow Service or The Clearing House's Real-Time Payments network, intraday credit events arrive at any point in the business day and settle immediately; near-real-time camt.054 processing is not a future capability for these rails — it is the operational requirement today. The full ISO 20022 securities settlement message family — the sese messages that generate the expected cash flows — provides the instruction-side reference that anchors camt.054 matching.

Cash reconciliation source types — match scope, ISO 20022 message, and T+1 timing

Source Match Scope ISO 20022 Message T+1 Frequency
Internal Cash Ledger Anchor record internal accounting entry Continuous
Intraday Bank Report Intraday spot check camt.052 2–4× daily
Bank / Custodian Statement End-of-day match camt.053 End-of-day
Debit/Credit Notification Real-time event match camt.054 On receipt
DTCC Activity Files 3-way utility layer DTCC settlement files End-of-day
Fedwire / FedNow / RTP Funds transfer match payment rail confirmations On receipt

The Rule 15c3-3 Reserve Formula Connection

For carrying broker-dealers, cash reconciliation is the operational foundation of Rule 15c3-3 reserve formula accuracy. The Customer Protection Rule requires firms to compute total customer credits — including free credit balances (cash owed to customers: proceeds of securities sales, dividends and interest payable, and funds awaiting withdrawal or reinvestment), amounts payable from unsettled transactions, and market value of securities borrowed from customers — and deposit the net above total customer debits into the Special Reserve Bank Account. That formula is only accurate if the cash positions feeding it are confirmed. A free credit balance that has not been reconciled against the bank record may reflect an unconfirmed timing difference rather than settled cash, increasing the risk of an inaccurate formula computation. Regulators strongly expect reconciliation to be completed before the formula is run. Under the SEC's December 2024 amendments (SEC Release No. 34-101781), carrying broker-dealers with $500 million or more in average total credits must perform daily reserve computations by June 30, 2026 — extended from the original December 31, 2025 deadline. Per the SEC's economic analysis, approximately 49 firms are expected to cross the threshold, collectively holding the substantial majority of all customer and PAB credits in the market. The FINRA 2026 Annual Regulatory Oversight Report identifies inaccurate reserve formula computations as an active examination finding, attributing failures to inadequate supervisory procedures, limited cross-departmental coordination, and failure to identify and age suspense items. The connection is direct: a cash reconciliation gap is a reserve formula risk. For hybrid portfolios that include FX-linked settlement legs — where the USD cash leg settles T+1 but the cross-currency conversion settles T+2 — the reconciliation must account for the structural timing difference between the securities credit and the FX-converted bank receipt, or risk a formula input that is both nominally correct and factually premature.

Cash in Flight: The Liquidity Cost

In elevated interest rate environments — with overnight rates running above 4% — unreconciled cash carries a measurable cost. Cash that exists on the firm's ledger but cannot be confirmed against the bank record is unavailable for deployment into overnight Treasury repo, money market funds, or custodial sweep programs. Most sweep arrangements have late-afternoon cutoffs. Cash still flagged as an open break at 3:00 PM misses the sweep entirely, sitting idle rather than earning overnight yield. At a 5% rate, $50 million in unreconciled cash for one extra business day costs approximately $6,850 in missed yield. Compounded across a week at an active carrying firm, the cumulative yield leakage from delayed reconciliation reaches the level that justifies the entire investment in a modern reconciliation platform. The operational argument for real-time camt.054 matching is partly compliance, partly risk, and partly P&L: faster reconciliation means earlier confirmation, earlier sweeps, and a directly measurable improvement in treasury yield capture.

How it works

1. Establish the internal cash baseline

Each business day, the reconciliation engine constructs the expected internal cash position for each account and currency from the firm's system of record. The opening balance from the prior day's confirmed reconciliation is carried forward. Settlement flows — cash movements from delivery versus payment transactions — are layered in from the settlement record as trades confirm. Income flows (dividends, coupon receipts), fee flows (custody fees, transaction charges), FX conversions, and collateral movements are added from the respective sub-ledgers. The result is the expected cash position for each account as of the business date: what the firm's books say should be in each account after all known movements. This expected position is the anchor for every external match that follows.

2. Ingest external statements and notifications

External cash data arrives through multiple channels at different points in the day. ISO 20022 camt.054 debit/credit notifications are processed as they arrive — each represents a single cash posting at the bank and triggers an immediate match attempt. ISO 20022 camt.052 intraday reports are processed at scheduled intervals, providing a running balance confirmation and a list of intraday transactions posted since the last report. The ISO 20022 camt.053 end-of-day statement is processed at close and serves as the authoritative source for the day's final reconciled balance. For broker-dealers with DTCC connectivity, the DTCC settlement activity files are ingested as a separate feed and used as the third leg of the three-way match. Payment rail confirmation messages — Fedwire notifications, FedNow status confirmations, TCH RTP acknowledgements — are ingested on receipt for same-day wire activity.

3. Run the matching engine — deterministic first

The matching engine attempts to pair each internal cash entry against an external entry from the same source, on the same value date, for the same amount. Deterministic matching runs first: if the internal entry carries a unique trade reference — the FIX ClOrdID (Tag 11) captured at execution and preserved, where custodian infrastructure supports end-to-end reference propagation, as a unique payment reference in the bank notification — the engine looks for an exact match on that reference in the external data. A deterministic match requires no tolerances and no fallback logic; the reference either matches or it does not. Many legacy custodian feeds carry internal bank reference IDs rather than the original trade reference; where that is the case, fuzzy matching handles the remainder. Fuzzy matching constructs a fingerprint from amount, value date, currency, and available counterparty text, and attempts a match within configured tolerance bands. Items that cannot be matched by either method are opened as breaks.

4. Classify breaks by cause

Open breaks are classified before routing. A timing gap is detected when the unmatched internal entry corresponds to an expected settlement that has not yet posted on the external side — the sese.023 instruction is dated same-day, the trade has not yet settled at DTC, and the camt.054 notification has not arrived. Timing gaps are auto-flagged for monitoring and resolved without manual intervention when the counterpart entry arrives. A posting error is detected when an external entry exists but the amount or reference does not match — indicating a discrepancy requiring investigation. A missing item is detected when the internal record has no external counterpart after all intraday and EOD statements have been processed — indicating a late settlement, a failed wire, or an internal booking error. Each break is assigned a priority score: breaks affecting large amounts, breaks that fall within reserve formula inputs, and breaks near the computation deadline are escalated to Priority 1 for same-day resolution.

5. Auto-resolve timing gaps

Timing gaps are the most common break type in a T+1 environment — and most close within the same business day or by T+1, depending on the rail and custodian reporting cycle. The reconciliation engine monitors open timing gaps continuously: when the expected camt.054 notification arrives, the engine re-runs the match against the open break and, if the reference and amount confirm, closes the break and updates the cash position automatically. The treasury team receives an intraday confirmation. Auto-resolution does not require manual intervention, but every resolution step is logged — timestamp of the break opening, timestamp of the counterpart arrival, match basis, and the system process that closed the break — for audit trail completeness under SEC Rules 17a-3 and 17a-4 and FINRA Rule 4511 recordkeeping requirements.

6. Route genuine breaks to the operations queue

Posting errors and missing items that do not auto-resolve are routed to the operations queue. Each break is assigned to an operations user based on counterparty, account, or currency routing rules. The operator sees the full break detail — internal value, external value, calculated difference, priority — alongside the original settlement instruction and related trade records. Resolution paths include contacting the custodian or bank, submitting a correction instruction, or adjusting the internal booking with appropriate authorization through a maker-checker workflow. Every resolution action is logged with timestamp and user ID. Breaks that remain open at close without a confirmed resolution note are escalated automatically, ensuring no open item enters the overnight reserve computation without a disposition.

7. Feed the reserve formula

For firms under the June 30, 2026 daily Rule 15c3-3 mandate, the reserve deposit must reach the Special Reserve Bank Account before the bank's wire cutoff — typically late afternoon. This creates a hard operational deadline: cash reconciliation must be substantially complete by early-to-mid afternoon, not at close. A FinOp resolving open breaks at 4:00 PM is projecting a reserve formula rather than computing one. Reconciled cash positions feed the formula engine from the confirmed cash layer: free credit balances, confirmed settlement proceeds owed to customers, and market values of securities borrowed from customers are drawn from matched records, not unconfirmed internal ledger entries. A cash entry still marked as an open break at computation time is flagged as unconfirmed and treated as a conservative credit pending investigator clearance — protecting the firm from an understated deposit rather than papering over an open item.

In Devancore™

Devancore's cash reconciliation engine runs on the same data infrastructure that drives settlement instruction generation and position management — not as a separate module fed by file exports, but as a continuous process operating against live settlement and cash data. The CashBalance record for each account and currency maintains the internal cash position in real time: settlementFlow, incomeFlow, feeFlow, fxFlow, and otherFlow update the record as each event is processed. The reconStatus field — PENDING, MATCHED, BREAK, or RESOLVED — tracks the current matching state across every account, giving treasury and operations teams a live view of which accounts are confirmed and which have open items without generating a batch report.

Deterministic Matching via FIX Tag 11

When a camt.054 debit/credit notification arrives, Devancore's matching engine looks first for the FIX ClOrdID (Tag 11) captured at execution through the trade capture system and propagated through the settlement instruction record into the sese.023 message. Where the custodian preserves the payment reference end-to-end into their bank notification feed, the ClOrdID is available on both sides of the match — and the match is deterministic: no tolerances, no fuzzy logic, no false positives. Where custodian infrastructure carries an internal bank reference ID rather than the original trade reference, Devancore maps between the two reference spaces using the settlement instruction record before falling back to multi-field matching. For cash movements arriving without any traceable trade reference — wire transfers, custodian fee debits, dividend receipts from legacy statement feeds — the engine uses amount, value date, currency, and available reference text. Top-tier auto-match rates of 95–98% are achievable on settlement-driven cash flows when the reference propagation chain is intact; the remaining gap is handled through the ops queue with full break detail.

Three-Way Match Against DTCC Settlement Activity Files

For broker-dealers with DTCC connectivity, Devancore adds the market utility layer. The DTCC settlement activity files are ingested alongside the camt.053 bank statement, and each confirmed settlement is checked against both external sources simultaneously. A trade that has cleared the bank but not yet appeared in the DTCC settlement activity is flagged as an open three-way break — the custodian credit has arrived, but the securities have not settled at DTC. This break type is operationally significant under Rule 15c3-3: the cash has arrived, but the possession and control test for the associated securities may not yet be satisfied. Surfacing it as a distinct break category — rather than absorbing it as a matched two-way item — gives the P&C monitoring system the input it needs to flag a potential control deficit before the close-of-business computation deadline.

ReconRun and ReconBreak: The Operations Workflow

Each reconciliation cycle is tracked as a ReconRun record — including reconciliation type, as-of date, external source (BNYM_STATEMENT, JPM_SWIFT_MT535, DTCC_FILE, or a live custodian API feed), and aggregate match statistics: total items, matched items, and open breaks. ReconBreak records capture each open item with the full detail the operations team needs: internalValue from the CashBalance record, externalValue from the statement, the calculated difference, the likely cause classification, and a priority score from 1 (critical — large amount, reserve formula impact, or approaching deadline) to 5 (low — rounding difference, nominal amount). Priority 1 breaks surface immediately in the operations dashboard with an alert; lower-priority breaks are visible in the queue but do not trigger immediate escalation. Every resolution action — contact with custodian, correction instruction, internal adjustment — is logged against the ReconBreak record with timestamp and user ID, satisfying SEC Rules 17a-3 and 17a-4 records creation and retention requirements, FINRA Rule 4511 recordkeeping obligations, and providing the audit trail FINRA examiners look for when reviewing reserve formula accuracy.

Live Shadow Balance and Reserve Formula Integration

Devancore maintains a Live Shadow Balance across all accounts — a real-time aggregate of confirmed and projected cash positions that updates as each camt.054 notification is matched. The Live Shadow Balance is the input to the reserve formula computation: free credit balances, amounts payable to customers from pending settlements, and other formula credits are drawn from the confirmed cash layer, not from the internal ledger before external confirmation. For firms under the June 30, 2026 daily Rule 15c3-3 mandate, the reserve deposit must reach the bank before the late-afternoon wire cutoff — making it operationally necessary to have the formula substantially resolved by early-to-mid afternoon, not at close. Devancore surfaces pre-emptive reserve alerts: any unreconciled break above a configured dollar threshold that would materially affect the formula is flagged in real time, giving the FinOp the opportunity to investigate and clear the item before it affects the deposit calculation — rather than discovering the discrepancy after the wire cutoff has passed. The formula result is available to treasury operations well before end of business, giving the deposit instruction sufficient lead time to be prepared and confirmed. Every ReconRun, every ReconBreak opened and resolved, and every formula input record is retained in the immutable audit log under SEC Rules 17a-3 and 17a-4 WORM retention requirements and FINRA Rule 4511 — the same audit thread that satisfies the supervisory record requirements under FINRA Rule 3110 and the evidentiary standard for examination of reserve formula accuracy.

Related terms

Rule 15c3-3 Customer Protection Rule
ISO 20022 Securities Settlement
Trade Reconciliation
Settlement Instruction Automation
Delivery Versus Payment
Accounting Book of Record
Trade Break Management
System of Record Securities Operations