Yury Pukhov, YuSMP Group
Yury Pukhov CEO & Mobile Engineering Lead, YuSMP Group
Add YuSMP as a preferred source on Google
TL;DR: BaaS ledger reconciliation proves daily that the balances your ledger assigns to each end user add up to the cash held in each FBO ("for benefit of") pooled account at the sponsor bank, with every in-transit item explained. After Synapse, build it on an immutable double-entry ledger, per-owner records the bank can read directly, and a three-way daily match.

BaaS ledger reconciliation is the daily process of proving that the money a banking-as-a-service program says it owes each end user matches the cash sitting in the pooled accounts at its sponsor bank. The cost of getting it wrong is easiest to see in Synapse: in April 2024 the middleware provider filed for bankruptcy, and the Consumer Financial Protection Bureau later estimated that its records left a shortfall of between $60 million and $90 million in funds owed to consumers.

Most of the Synapse damage traced back to ledger architecture rather than fraud. Balances lived in a middleware ledger that the banks could not see in real time, pooled "for benefit of" accounts were spread across several banks, and nobody ran a per-owner, per-bank match every day. Fixing that requires custom software development for fintech ledgers rather than another spreadsheet, and it sits at the core of any serious fintech software development program that moves customer funds through a partner bank.

This guide is written for CTOs, heads of finance operations and compliance leads at US fintechs, embedded-finance platforms and sponsor banks. It covers:

  • how FBO accounts work and who should keep the system of record;
  • what a reconcilable ledger looks like and how to track beneficial ownership;
  • how to run daily three-way reconciliation and handle breaks;
  • what regulators expect in 2026 and what a reconciliation layer costs to build.

What is BaaS ledger reconciliation?

BaaS ledger reconciliation is the control that matches three sets of records every day: the fintech's ledger of end-user balances, the sponsor bank's statement for each pooled account, and the settlement files from card processors, ACH and other payment rails. The goal is a single statement you can defend: for each bank and each pooled account, the sum of customer balances plus explained in-transit items equals the bank balance, and the unexplained difference is zero.

In a banking-as-a-service model, a non-bank company offers accounts, cards or payments to its users while a chartered sponsor bank holds the deposits. The fintech usually keeps the detailed sub-ledger, and the bank holds the money in one or more omnibus (pooled) accounts titled "for benefit of" the fintech's customers. Reconciliation connects the two sets of records. Without it, the bank only knows the total, and the fintech only knows what its own software believes.

Three properties separate real reconciliation from a monthly finance exercise:

  • Granularity: balances are proven per beneficial owner, not only in aggregate.
  • Frequency: the match runs at least once per business day, with event-level checks during the day.
  • Independence: the bank can read the ledger directly and reproduce the result without asking the fintech or a middleware provider for an export.

What did the Synapse collapse reveal about FBO ledgers?

The Synapse collapse showed that a pooled account is only as safe as the ledger behind it. Synapse Financial Technologies sat between consumer fintech apps and several partner banks. It kept the records of who owned what inside its own systems and moved funds between FBO accounts at different banks. When it filed for Chapter 11 on 22 April 2024, the banks could not reconcile individual customer balances against the cash they held, and tens of thousands of end users lost access to their money for months.

The CFPB's enforcement action, filed in August 2025, put the shortfall at between $60 million and $90 million. The Federal Reserve had already issued a consent order against Evolve Bank & Trust, one of the partner banks, in June 2024, requiring it to set out the bookkeeping responsibilities of the bank and each fintech partner and to get board approval before onboarding new partners.

For engineers, four lessons matter more than the legal aftermath:

  1. Aggregate balances hide problems. A pooled account can look healthy in total while individual users are short.
  2. Moving money between banks creates ledger risk. Every inter-bank sweep (a bulk transfer of pooled funds from one bank to another) must be recorded as a pair of entries with a traceable status, or balances drift.
  3. A single middleware ledger is a single point of failure. If the only copy of ownership records sits with a vendor, the bank cannot act when that vendor fails.
  4. Reconciliation that runs late is not a control. A gap found at quarter-end has already compounded for weeks.

How do FBO pooled accounts work, and who owns the money?

An FBO account is a custodial deposit account opened at a bank in the name of a platform "for the benefit of" its customers, and the money in it belongs to those customers, not to the platform. The bank sees one account and one balance. The platform's ledger splits that balance into thousands or millions of individual sub-accounts, one per end user or per wallet.

This structure has a direct consequence for deposit insurance. FDIC pass-through coverage means the insurance applies to each beneficial owner's share, as if they held the account themselves. It can extend to each owner only if the account records show the custodial relationship and the identities and interests of the owners can be established. So the ledger does more than support operations: it is the evidence that decides whether a customer's money is protected if the bank fails.

A typical BaaS money flow touches four parties:

PartyRoleRecords it keeps
End userOwns the fundsApp balance and transaction history
Fintech or embedded-finance platformOffers the product, onboards users, runs KYCSub-ledger of per-user balances and transactions
Middleware or BaaS provider (optional)Connects the platform to one or more banksOften its own ledger, account mapping and payment orchestration
Sponsor bankHolds deposits, owns the charter and the regulatory relationshipCore banking balance per FBO account, statements, payment rail files

Records can diverge at every hand-off between those parties. The fewer independent copies of ownership data exist, and the less the bank can see of them, the higher the risk.

Who should keep the system of record: bank, middleware or fintech?

The safest model in 2026 is a fintech-owned (or bank-owned) double-entry ledger that the sponsor bank can read directly, with middleware treated as a transport layer rather than the only source of truth. Each option has a different risk profile:

ModelWho keeps per-user balancesBank visibilityMain riskFits
Bank core as sub-ledgerSponsor bank, as real sub-accounts or virtual accountsFull and immediateSlow product changes, limited ledger featuresSimple deposit products, banks with modern cores
Middleware ledgerBaaS or middleware providerDepends on the provider's reportingSingle point of failure if the provider fails or loses dataEarly-stage programs with low volumes
Fintech ledger with bank read accessFintech, in its own double-entry ledgerDirect, continuous access plus daily copiesNeeds real engineering discipline and auditsGrowing programs, multi-bank setups
Dual ledger (fintech plus bank shadow)Both, reconciled automaticallyFull, independent copy at the bankHigher build and operating costLarge programs, banks under regulatory orders

Whichever model you choose, write the division of responsibilities into the program agreement: who records which events, who fixes which breaks, who can freeze funds and what happens to the records if the relationship ends. The Evolve order made the same point.

What does a reconcilable ledger look like?

A reconcilable ledger is an append-only, double-entry system in which every movement of money is a balanced set of entries. Each set carries a unique idempotency key (a reference that stops the same event from being posted twice), an effective date and a link to the external event that caused it. If those four properties hold, reconciliation becomes a query; if they do not, it becomes a forensic investigation. The same principles apply to any embedded finance ledger architecture, whether the money sits in deposits, card balances or wallets.

Data center aisle with server racks hosting a double-entry banking ledger

Double-entry and immutability

In a double-entry BaaS ledger, every transaction debits one ledger account and credits another by the same amount, so the ledger as a whole always sums to zero. Entries are never edited or deleted. A wrong entry is fixed with a reversing entry and a new correct one, which leaves a complete audit trail of what the system believed and when.

A minimal chart of ledger accounts

A minimal BaaS ledger needs six account types, not just one account per user. At minimum, model these:

Ledger accountPurposeReconciles against
User available balanceFunds the end user can spend or withdrawShare of the FBO bank balance
User pending or held balanceCard authorizations, holds, disputed amountsProcessor authorization files
FBO cash (one per bank account)Mirror of the actual bank balanceDaily bank statement or balance API
In-transit (per rail and direction)ACH, wire, card and RTP movements not yet settledRail settlement and return files
Program fees and revenueInterchange, fees and interest owed to the platformBank fee statements, program agreement
SuspenseHolding account for temporarily unmatched items until they are explainedMust trend to zero; aged items escalate

Why store both an effective date and a recorded date?

Each entry should carry two timestamps: when the movement happened economically (the effective date) and when your system recorded it. Backdated ACH returns, late card settlements and corrections all arrive after the fact. With both dates stored, you can reproduce the balance "as known on Tuesday evening" and "as corrected on Thursday", and that is what examiners and auditors ask for.

How do idempotency keys and external references prevent duplicate money?

Every entry needs an idempotency key derived from the external event, such as the ACH trace number, card network transaction ID or bank reference. Retries and duplicate webhooks then cannot create money twice. Storing the external reference on the entry also gives reconciliation a deterministic join key instead of fuzzy matching on amount and date.

How do you track beneficial ownership per end user?

Beneficial ownership tracking means that, for every pooled account, you can produce at any moment a list of each owner, their identity data and the exact balance attributable to them. The FDIC's 2024 proposal on custodial account recordkeeping would make this a formal obligation for banks holding such accounts, and sponsor banks already ask for it in due diligence.

Design the ownership record as a first-class entity, not a field buried in the user profile. A practical record contains:

FieldWhy it matters
Owner ID and legal nameIdentifies the person or business that owns the funds
Identity attributes from KYC (address, date of birth or EIN, ID reference)Lets the bank or FDIC establish each owner's interest
Ownership category (individual, joint, business, trust)Affects how insurance limits are calculated
Bank and FBO account identifierShows where the owner's money physically sits
Current balance and balance historyProves the amount attributable to the owner on any date
Product and program identifierSeparates balances when one platform runs several programs
Status flags (frozen, closed, disputed, deceased)Explains why funds may not be available

Two implementation details matter most:

  1. Map each owner to a specific bank account, never to "the program" in general, so a multi-bank setup can be reconciled per bank.
  2. Export these records in a stable, documented format every day and deliver a copy to the bank, because the proposal envisions both direct access and a daily backup.

Daily vs real-time reconciliation: which do you need?

Most BaaS programs need both: event-level checks in near real time to catch problems within minutes, and a formal close-of-business reconciliation that produces the daily proof for the bank. Real-time checks reduce risk; the daily proof is the control that examiners will test.

AspectNear-real-time checksDaily close-of-business reconciliation
TriggerEach payment event, webhook or balance API callBank end-of-day statement or balance cut-off
ScopeSingle transaction or accountEvery FBO account, every owner, every rail
OutputAlerts, automatic holds, retriesSigned reconciliation report and break list
Typical dataWebhooks, intraday balance APIs, ledger eventsBAI2 or camt.053 statements (standard machine-readable bank statement formats), settlement and return files
Who reviewsSystems first, on-call operations for exceptionsFinance operations, then the bank
Failure mode it preventsDouble credits, missed returns, runaway negative balancesSlow ledger drift and unexplained shortfalls

If you are early and resources are tight, build the daily reconciliation first, because it is the control the bank and regulators expect. Then add real-time checks on the riskiest flows: card authorizations, instant payments and inter-bank sweeps.

How to run a daily three-way reconciliation, step by step

A daily three-way reconciliation matches the ledger, the bank and the payment rails for each FBO account and ends with a zero unexplained difference or a documented break. The process below works for single-bank and multi-bank programs alike.

Finance operations specialist matching two printed statements line by line during daily reconciliation
  1. Freeze the cut-off. Pick the bank's end-of-day time per account and snapshot the ledger "as of" that moment using effective dates.
  2. Ingest bank data. Load the statement or balance API response for each FBO account, normalised into a common format with references preserved.
  3. Ingest rail files. Load ACH, wire, card settlement, chargeback and return files for the same window.
  4. Match transactions. Join ledger entries to bank and rail records on external references first, then on amount and date only for the remainder, and flag every match rule used.
  5. Compute the balance proof. For each bank account: bank balance minus the sum of owner balances minus in-transit items equals the unexplained difference.
  6. Prove each owner. Check that no owner balance is negative without an approved reason and that owner totals per bank equal the FBO cash ledger account.
  7. Classify breaks. Assign every unmatched item to a category and an owner, and post it to suspense with an age counter.
  8. Sign and share. Produce a report with totals, breaks and approvals, store it immutably and deliver it to the sponsor bank.

Worked example: the daily balance proof for one bank

The daily balance proof from step 5 takes the bank balance, subtracts owner balances and in-transit items, and must leave an unexplained difference of zero. A simplified example for one bank:

LineAmount (USD)
Bank statement balance, FBO account at Bank A4,812,300.00
Sum of owner available and held balances mapped to Bank A4,790,150.00
Outbound ACH initiated, not yet debited by bank−18,400.00
Card settlement received by bank, not yet posted to ledger40,550.00
Unexplained difference0.00

The figures are illustrative. In-transit lines must each be backed by specific items that clear within their expected window. If an in-transit balance keeps growing, handle it as a break.

How do you classify and resolve reconciliation breaks?

A break is any difference the reconciliation cannot explain with matched items, and every break needs a category, an owner, a deadline and an escalation rule. Treating breaks as one undifferentiated pile is how small timing differences turn into unexplained shortfalls.

Break typeTypical causeExpected resolution
TimingCut-off mismatch between bank, rail and ledgerClears automatically next cycle; escalate if it does not
Missing ledger entryLost webhook, failed job, unprocessed returnPost the entry from the external record with its reference
Missing bank movementPayment initiated but rejected or never executedReverse the ledger entry and notify the user
Amount mismatchFees, FX, partial settlement or roundingPost an adjusting entry to the right fee or FX account
DuplicateRetry without idempotency, double file loadReverse the duplicate and fix the idempotency gap
UnexplainedUnknown; possible error or fraudEscalate the same day to finance and compliance leads

Set thresholds before you need them. For example, a program might:

  • auto-clear timing breaks under a small amount that resolve within two business days;
  • require manager review for anything older;
  • pause outbound transfers from an FBO account if its unexplained difference exceeds an agreed limit.

Write the exact numbers into the program agreement with the bank so they do not live only in an engineer's head.

Banking-as-a-service compliance in 2026: what do regulators expect?

As of November 2026, there is no single final federal rule on BaaS reconciliation, but the direction is clear: regulators expect sponsor banks to know, every day, who owns the money in custodial accounts and to have direct access to the records that prove it. Three documents set that expectation.

The FDIC custodial account proposal ("Synapse rule")

The FDIC proposed rule on custodial account recordkeeping (RIN 3064-AG07), often called the "Synapse rule", is the most specific of the three. The FDIC Board approved it on 17 September 2024 and it was published on 2 October 2024. It would require banks holding custodial accounts with transactional features to:

  • keep records of each beneficial owner and their balance in a standard format;
  • have direct, continuous and unrestricted access to records kept by third parties;
  • receive at least a daily backup copy;
  • reconcile at least daily;
  • have the controls validated independently every year.

The comment period closed on 16 January 2025. In the Fall 2025 Unified Agenda the rule is listed as a long-term action with no final rule date, so treat it as the expected standard rather than settled law.

The July 2024 interagency statement and enforcement actions

On 25 July 2024 the Federal Reserve, the FDIC and the OCC issued a joint statement on risks in bank arrangements with third parties to deliver deposit products, together with a request for information on bank-fintech arrangements. Both stress recordkeeping, reconciliation and the bank's responsibility for its partners.

Enforcement actions point the same way. The Federal Reserve's June 2024 consent order against Evolve Bank & Trust required a plan defining bookkeeping responsibilities between the bank and each fintech partner. Sponsor banks under orders typically pass these requirements straight down to their fintech programs.

For a fintech, this means your sponsor bank will ask for daily reconciliation, per-owner records and direct access during onboarding or the next exam, whether or not the FDIC rule is ever finalized. Building those capabilities now is cheaper than retrofitting them under a deadline.

BaaS reconciliation compliance checklist

A BaaS reconciliation program that meets what sponsor banks and examiners ask for in 2026 needs thirteen controls, from an append-only ledger to a wind-down plan. Use this checklist to test yours. Each item should have an owner and evidence you can show.

  • Append-only double-entry ledger with reversing entries instead of edits.
  • Idempotency keys and external references on every entry.
  • Effective and recorded timestamps on every entry.
  • Beneficial-ownership record per owner, mapped to a specific bank and FBO account.
  • Direct, continuous read access to the ledger for the sponsor bank.
  • Daily export of ownership records and balances delivered to the bank.
  • Close-of-business reconciliation for every FBO account, per bank, every business day.
  • Three-way matching against bank statements and rail settlement files.
  • Break taxonomy with owners, deadlines, thresholds and escalation paths.
  • Daily suspense ageing report shared with the bank.
  • Annual independent validation of reconciliation controls.
  • Written division of bookkeeping responsibilities in the program agreement.
  • A wind-down plan that hands complete records to the bank if the program or a vendor fails.

Build, buy or hybrid: what does a reconciliation layer cost?

Most growing BaaS programs end up with a hybrid: a purchased or open-source ledger engine for the core double-entry mechanics, plus custom-built ownership records, bank and rail connectors, matching rules and reporting. Pure buy rarely fits a multi-bank, multi-product program; pure build makes sense mainly when the ledger is the product.

When you evaluate FBO account reconciliation software, check whether it supports per-owner proofs, effective dating and direct bank access as well as transaction matching.

OptionStrengthsWeaknessesBest for
Buy a ledger and reconciliation platformFast start, proven double-entry coreConnectors and matching rules still need work; vendor becomes critical infrastructureSingle-bank programs with standard products
Build on an open-source or managed ledger engineFull control over data model and bank accessNeeds experienced fintech engineers and auditsPrograms with unusual flows or several banks
HybridBuys the commodity parts, builds what is specific to youIntegration effort across componentsMost growth-stage fintechs and sponsor banks

On cost, scope drives the number more than technology does. At YuSMP Group, a focused internal system such as a reconciliation dashboard on top of an existing ledger starts from $2,900 (6–10 weeks), and a multi-role platform with bank connectors, ownership records and reporting starts from $10,400 (14–22 weeks), according to the published prices on our custom software development page.

A full neobank or lending platform with KYC/AML and banking-as-a-service integration is a different class of project: our fintech page lists $250,000–$500,000+. For a wider view of budgets, see our neobank development cost breakdown.

Before you start, collect four inputs. Together they define the first sprint:

  • sample bank statements and balance API documentation from each sponsor bank;
  • settlement and return files from each payment rail;
  • your current ledger schema;
  • the reconciliation and recordkeeping clauses of each program agreement.

Common mistakes in BaaS ledger reconciliation

The most expensive mistakes in BaaS ledger reconciliation are design choices made early, when volumes are small and every break can still be fixed by hand. These are the ones we see most often:

  • Reconciling only in aggregate. A matching total per bank hides owners who are short and owners who are over-credited.
  • Mutable balances. Updating a balance column in place makes it impossible to prove how the number was reached.
  • Treating the middleware ledger as the bank's record. If the bank cannot read ownership data independently, the program inherits the vendor's failure risk.
  • Ignoring in-transit ageing. In-transit items that never clear quietly become a shortfall.
  • Mixing programs or banks in one pool. Owners must map to a specific bank account, or per-bank proofs become impossible.
  • Fuzzy matching by default. Matching on amount and date first creates false positives; references should drive matching.
  • No wind-down plan. The day a partner exits is the worst day to discover that records cannot be handed over cleanly.

For the broader picture of how banks and fintechs build their platforms, read our guides to banking software development, payment software architecture and compliance and open banking API integration.

Frequently asked questions

What is BaaS ledger reconciliation?

BaaS ledger reconciliation is the daily control that matches a banking-as-a-service program's ledger of end-user balances with the sponsor bank's statement for each pooled FBO account and with payment rail settlement files. It proves, per bank and per beneficial owner, that customer balances plus explained in-transit items equal the cash the bank holds, with any difference documented as a break.

How often should FBO accounts be reconciled?

FBO accounts should be reconciled at least once every business day, at the bank's close-of-business cut-off, and preferably with near-real-time checks on high-risk flows such as card authorizations and instant payments. Daily reconciliation is what the FDIC's 2024 custodial account proposal describes and what sponsor banks increasingly require in program agreements.

Should FBO accounts be reconciled in total or per bank?

FBO accounts should be reconciled per bank account and per beneficial owner, not only in total. An aggregate match across several banks can hide a shortfall at one bank and an excess at another, which is the pattern that made the Synapse failure so hard to unwind.

Is the FDIC custodial account recordkeeping rule final?

No. As of November 2026 the FDIC's custodial account recordkeeping proposal, published on 2 October 2024, has not been finalized or withdrawn; the Fall 2025 Unified Agenda lists it as a long-term action. Sponsor banks nevertheless already expect its core elements: per-owner records, direct access, daily backups and daily reconciliation.

What is the difference between a ledger and a core banking system?

A core banking system is the bank's own system of record for its deposit and loan accounts, including the FBO account as a single balance. A program ledger is the fintech's or provider's double-entry system that splits that balance into individual user accounts, holds and in-transit items. Reconciliation connects the two every day.

Can we use a middleware provider's ledger as our system of record?

You can, but only if the sponsor bank has direct, continuous access to it, receives daily copies of ownership records and can operate without the provider in a wind-down. Without those safeguards, the middleware ledger becomes a single point of failure for every program built on it.

How long does it take to build a BaaS reconciliation system?

A reconciliation service on top of an existing double-entry ledger typically takes 6 to 10 weeks for one bank and a few payment rails. A full ledger with ownership records, multi-bank connectors, matching rules and bank-facing reporting usually takes 14 to 22 weeks or more, depending on the number of banks, rails and products.

Sources: FDIC, CFPB, Federal Reserve and OCC documents

Published 13 November 2026. This guide is technical, not legal advice; confirm regulatory obligations with your sponsor bank and counsel. YuSMP Group prices are starting prices for fixed-scope builds published on our service pages; final quotes depend on banks, payment rails, products, data quality and compliance requirements.