figma guide

Designing breach settlement claims fund escrow and interest allocation UI in Figma: ESC-* escrow accounts, INT-* interest runs, and ALLOC-* waterfall rules

Design breach settlement claims fund escrow and interest allocation UI in Figma with ESC-* escrow accounts, INT-* interest runs, ALLOC-* waterfall rules, and LINK-DISB-* disbursement gates.

Published
Updated
Sep 13, 2026
Read time
9 min
Level
Intermediate

Quick answer

Escrow UI holds settlement funds with court-visible math—not a single bank balance field that finance updates manually. Design ESC- escrow accounts* per defendant contribution or settlement tranche, INT- interest runs* that accrue and allocate per plan or statute, and ALLOC- waterfall rules* that pay claims, fees, costs, and cy pres in court-ordered sequence before any DISB- batch* releases. Every ESC-* release must pass REC- reconciliation* against fund reconciliation UI and respect STY- stays* from appeal workflows. Without this UI, interest goes to the wrong party, claims pay from fee escrow, and final accounting cannot tie to bank statements. Start from the Figma guides hub and pair with payment disbursement, attorney fee allocation, residual fund, and unclaimed funds.


Who this is for

  • Product designers building treasury and escrow modules inside breach settlement administration platforms.
  • Settlement administrators and finance teams who need ALLOC-* waterfalls—not ad hoc journal entries per payout wave.
  • Class counsel and court monitors reviewing ESC-* balances and INT-* allocation before certifying disbursement.

Escrow fund lifecycle overview

EscrowProgram — ESC-SET992 · gross: $48,200,000 · Status: Active accrual
├── Triggers:
│   ├── Defendant funding per settlement agreement schedule
│   ├── Court-ordered escrow for appeal holdback
│   ├── Insurance carrier funding tranches · deductible true-up
│   ├── Replenishment after [clawback](/designing-breach-settlement-clawback-and-overpayment-recovery-ui-in-figma/) or returned wire
│   └── Cy pres or admin cost reserve carve-out at funding
├── ID namespace:
│   ├── ESC-* (escrow account) · TRN-* (funding transaction)
│   ├── INT-* (interest period) · ALLOC-* (waterfall rule)
│   ├── REL-* (release authorization) · RES-* (reserve hold)
│   ├── LINK-DISB · LINK-FEE · LINK-CY · LINK-ADM
│   ├── REC-ESC-* (reconciliation snapshot) · LOG-ESC-* (treasury audit)
│   └── BAL-* (balance by purpose: claims · fees · cy pres · reserve)
├── Account structure:
│   ├── Single escrow · multi-defendant sub-accounts · MDL master escrow
│   ├── IOLTA or dedicated settlement account (jurisdiction rules)
│   ├── Separate ESC-FEE-* · ESC-CLM-* · ESC-CY-* logical buckets
│   └── Appeal holdback ESC-STY-* linked to STY-* records
├── Workflow:
│   ├── Record TRN-* inbound · match bank · lock ESC-* ledger
│   ├── Run INT-* monthly · allocate per plan · post to BAL-*
│   ├── Apply ALLOC-* on each DISB-* request · check RES-* holds
│   ├── REL-* counsel + administrator dual approval
│   ├── Execute DISB-* · decrement BAL-* · LOG-ESC-* entry
│   ├── Reconcile REC-ESC-* to bank · feed [QA sampling](/designing-breach-settlement-post-disbursement-qa-and-audit-sampling-ui-in-figma/)
│   └── Close ESC-* at [final accounting](/designing-breach-settlement-final-accounting-and-court-closure-ui-in-figma/)
└── Outcomes:
    ├── Every dollar traceable: TRN-* → BAL-* → DISB-*
    ├── Interest allocated fairly to class or per order
    └── No release during STY-* without court override
ESC-* stateClaims pool BAL-CLM-*Fee pool BAL-FEE-*Release allowed
Unfunded$0$0None
Partially fundedPro-rata cap on DISB-*Hold until APR-FEE-*Limited batches
Fully fundedFull award liability coveredAPR-FEE-* pendingClaims DISB-* only
STY- hold*Accruing INT-*FrozenNone without order
Wind-downUCF reserve lockedFinal fee true-upUCF only
Closed$0 · archived$0 · archivedNone

Verdict: DISB- must debit a specific BAL- bucket—never a generic ESC-* total that hides fee vs claims commingling.**


ESC-* account setup and TRN-* funding UI

EscrowAccount — ESC-992-CLM · bank: ****4821 · Status: Active
├── Setup fields:
│   ├── escrow_id (ESC-*) · settlement_id · defendant_id
│   ├── Bank routing · account mask · signatory list
│   ├── Purpose enum: claims · fees · cy pres · appeal hold · admin
│   ├── Court order reference · APR-SET-* funding schedule
│   ├── Minimum balance RES-* · replenishment alert threshold
│   └── LINK to [payment methods](/designing-payment-methods-ui-in-figma/) for outbound wires
├── TRN-* inbound:
│   ├── Wire reference · amount · value date · source defendant
│   ├── Match to expected tranche from settlement agreement
│   ├── Split TRN-* across ESC-CLM-* · ESC-FEE-* · ESC-CY-* if single wire
│   ├── Unmatched TRN-* queue · finance research · LOG-ESC-*
│   └── Auto-notify when BAL-CLM-* covers projected claim liability
├── Controls:
│   ├── Dual approval for TRN-* manual entry
│   ├── Block TRN-* if settlement not APR-SET-* approved
│   ├── OFAC · fraud check on source (large defendant wires)
│   └── Export for [compliance exports](/designing-compliance-exports-and-legal-hold-ui-in-figma/)
└── Claimant visibility:
    ├── Aggregate "fund status" on [status portal](/designing-breach-settlement-claim-status-portal-and-claimant-dashboard-ui-in-figma/)— no bank details
    └── "Funding received" milestone · not individual TRN-* amounts

Use tables for TRN-* ledgers, badges for match status, and alerts for unfunded liability gaps.


INT-* interest accrual and allocation UI

InterestRun — INT-992-2026-Q3 · ESC-992-CLM · Status: Allocated
├── Accrual:
│   ├── Period start/end · average daily balance · rate source
│   ├── Bank INT-* statement import · variance tolerance
│   ├── Negative interest rare · show adjustment note
│   └── Prorate if partial period before ESC-* close
├── Allocation rules (plan-driven):
│   ├── To class pro-rata by paid claims · to unpaid claim reserve
│   ├── To cy pres per [residual fund UI](/designing-breach-settlement-residual-fund-and-cy-pres-allocation-ui-in-figma/)
│   ├── To counsel as cost recovery · to administrator pass-through
│   ├── Net to defendant if plan requires · tax reporting flag
│   └── Court-ordered fixed split percentages
├── Posting:
│   ├── Credit BAL-CLM-* · BAL-CY-* · BAL-FEE-* sub-ledgers
│   ├── Generate INT-* statement for [court monitor](/designing-breach-settlement-court-monitor-and-special-master-reporting-ui-in-figma/)
│   ├── OBJ-FEE-* may challenge interest-to-fee allocation
│   └── Include in [final accounting](/designing-breach-settlement-final-accounting-and-court-closure-ui-in-figma/) exhibit
├── Edge cases:
│   ├── INT-* during STY-* · accrue but do not release
│   ├── Multi-ESC-* consolidation · eliminate inter-account interest
│   └── Escheat of INT-* on [UCF](/designing-breach-settlement-unclaimed-funds-and-escheatment-ui-in-figma/) per state law
└── Outputs:
    ├── PDF INT-* certificate · CSV for auditor
    └── Feed [tax reporting](/designing-breach-settlement-tax-reporting-and-1099-ui-in-figma/) if interest taxable to claimants

Pair with sliders for allocation preview (simulation mode) and cards for period summary tiles.


ALLOC-* waterfall and REL-* release authorization UI

WaterfallRule — ALLOC-992-001 · version: 3 · Status: Active
├── Priority sequence (example):
│   1. Administrator pass-through costs · ADM-FEE-*
│   2. Notice campaign costs · NOT-* vendor invoices
│   3. Approved [attorney fees](/designing-breach-settlement-attorney-fee-allocation-and-incentive-award-ui-in-figma/) · DISB-FEE-*
│   4. Claim awards by tier · DISB-CLM-*
│   5. [Incentive awards](/designing-breach-settlement-attorney-fee-allocation-and-incentive-award-ui-in-figma/) · DISB-INC-*
│   6. Cy pres · [residual allocation](/designing-breach-settlement-residual-fund-and-cy-pres-allocation-ui-in-figma/)
│   7. UCF reserve · [escheatment](/designing-breach-settlement-unclaimed-funds-and-escheatment-ui-in-figma/)
├── REL-* release gate:
│   ├── Requested DISB-* amount · target BAL-* bucket
│   ├── Waterfall check: higher priority pools satisfied
│   ├── RES-* hold: appeal · QA finding · court order
│   ├── STY-* block from [appeal UI](/designing-breach-settlement-appeal-and-mandamus-review-ui-in-figma/)
│   ├── Dual approval: administrator + counsel · LOG-ESC-*
│   └── Generate wire file · link DISB-* batch id
├── Simulation mode:
│   ├── Project BAL-* after pending DISB-* queue
│   ├── "Insufficient ESC-CLM-*" before batch creation
│   └── What-if: delay fee wire · claims first scenario
└── Audit:
    ├── Every REL-* ties to DISB-* and bank confirmation
    ├── Override requires reason code · manager approval
    └── [External auditor](/designing-breach-settlement-external-auditor-access-and-read-only-review-portal-ui-in-figma/) read-only waterfall log

Use progress steppers for waterfall stages and modals for REL-* approval with insufficient balance warnings.


RES-* reserves, STY-* holdback, and appeal escrow UI

ReserveHold — RES-992-STY · ESC-STY-992 · amount: $12,400,000 · Status: Active
├── Hold types:
│   ├── Appeal STY-* · full or partial settlement fund
│   ├── QA FIND-* corrective reserve · [post-disbursement QA](/designing-breach-settlement-post-disbursement-qa-and-audit-sampling-ui-in-figma/)
│   ├── Fee holdback pending [final accounting](/designing-breach-settlement-final-accounting-and-court-closure-ui-in-figma/)
│   ├── UCF statutory reserve · minimum BAL-UCF-*
│   └── Court-ordered cy pres hold until recipient confirmed
├── Mechanics:
│   ├── RES-* reduces available BAL-* for ALLOC-* · not separate bank account required
│   ├── Or physical transfer to ESC-STY-* sub-account
│   ├── Auto-create RES-* when STY-* granted in [appeal UI](/designing-breach-settlement-appeal-and-mandamus-review-ui-in-figma/)
│   ├── Release RES-* on STY-* lift · RUL-APL-* · court order upload
│   └── Interest INT-* on RES-* follows same allocation rules
├── Dashboard:
│   ├── Total escrow · available · reserved · pending DISB-*
│   ├── Timeline: expected STY-* resolution · RES-* expiry
│   └── Alert if DISB-* queue exceeds available after RES-*
└── Claimant messaging:
    ├── Status portal: "Disbursement paused — appellate review"
    └── No internal RES-* amounts · avoid speculation

REC-ESC-* reconciliation and court reporting UI

ReconciliationSnapshot — REC-ESC-992-2026-09 · Status: Matched
├── Match layers:
│   ├── Bank statement balance = sum ESC-* ledger
│   ├── Sum BAL-* buckets = ESC-* total · no negative buckets
│   ├── Sum DISB-* posted = sum REL-* authorized
│   ├── TRN-* inbound − DISB-* outbound ± INT-* = expected balance
│   └── Tie to [fund reconciliation](/designing-breach-settlement-fund-reconciliation-and-bank-matching-ui-in-figma/) BANK-* records
├── Variance handling:
│   ├── Timing: wire in transit · pending DISB-*
│   ├── Unidentified TRN-* · suspense account · 30-day SLA
│   ├── Bank fees · adjust LOG-ESC-* with approval
│   └── Break REC-ESC-* → block new REL-* until resolved
├── Court package:
│   ├── Monthly ESC-* statement for [special master](/designing-breach-settlement-court-monitor-and-special-master-reporting-ui-in-figma/)
│   ├── Chart: funding vs disbursement cumulative
│   ├── INT-* allocation summary · cy pres accrual
│   └── SCRUB-ESC-* redact bank account numbers on public exhibits
└── Integration:
    ├── [Counsel payout approval](/designing-breach-settlement-counsel-review-and-payout-approval-ui-in-figma/) reads available BAL-CLM-*
    └── [Clawback](/designing-breach-settlement-clawback-and-overpayment-recovery-ui-in-figma/) credits TRN-* or reduces next DISB-*

Comparison: single escrow vs multi-bucket vs per-defendant accounts

DimensionSingle commingled ESC-*Multi-bucket BAL-*Per-defendant ESC-*
Setup complexityLowMediumHigh
Court preferenceRare for large casesCommonMDL multi-defendant
Fee vs claims separationRiskyLogical BAL-* wallsPhysical separation
INT- allocation*SimplePlan-driven splitPer-defendant first
ReconciliationOne bank accountOne bank · many bucketsMany REC-ESC-*
Best forSmall admin settlementsStandard breach classMulti-D defendant deals

Common mistakes

  1. DISB-FEE- debits ESC-CLM- because total balance was sufficient**— commingling violation; fee objection sustained.
  2. INT- allocated to counsel without plan language*— reversals required; court sanctions risk.
  3. REL- approved during STY- without court override**— disbursement during stay; appeal issues.
  4. TRN- posted without bank match*— REC-ESC-* false positive; auditor finding.
  5. UCF reserve released before escheatment period ends— state compliance failure.

  1. Create ESC- accounts and BAL- buckets** per settlement agreement · link bank feeds.
  2. Post TRN- inbound* · verify funding schedule · set RES-* if STY-* pending.
  3. Run INT- periods* · allocate per plan · publish monitor statement.
  4. Configure ALLOC- waterfall* · simulate pending DISB-* queue.
  5. REL- authorize batches* · execute DISB-* · reconcile REC-ESC-* monthly.
  6. Close ESC-* at final accounting · transfer UCF · archive LOG-ESC-*.

FAQ

Defendant funds late— partial claims payment?

ALLOC- may allow pro-rata DISB-** if plan permits · show “partial funding” on status portal · hold lower tiers until TRN-* catches up.

Interest taxable to claimants?

Jurisdiction and plan · flag taxable INT-* · link 1099 UI · FAQ disclosure.

Multiple insurers contributing?

Separate TRN- per carrier* · sub-ledger by defendant · consolidated REC-ESC-* for court.

Escrow closes with surplus?

Waterfall remainder · cy pres · UCF · or return to defendant per order · residual fund UI.

QA finding freezes escrow?

RES- from FIND-** · block REL-* for affected batch · release after ACT-* complete · QA UI.

MDL escrow across districts?

Master ESC-MDL-* · allocate shares to settling cases · INT-* split per transfer agreement.


Next steps

Share on X

§ Keep reading

Related guides.