figma guide
Designing breach settlement intraday liquidity and cash position dashboard UI in Figma: LIQ-*, CASH-POS-*, and wave solvency before export
Design breach settlement treasury liquidity UI in Figma with CASH-POS-* account snapshots, LIQ-* intraday forecasts, wave solvency checks, and ops alerts before NACHA or wire export drains escrow.
- Published
- Updated
- Sep 29, 2026
- Read time
- 6 min
- Level
- Intermediate
Quick answer
Intraday liquidity UI answers one question treasury asks all day: “If I approve this wave export now, will escrow still cover holds, fees, and the next tranche?” Design CASH-POS- account snapshots* fed from bank feeds (not claimant-visible), LIQ- rolling forecasts* that sum scheduled distribution waves, provisional payments, and reserve buckets, and solvency gates on NACHA export and wire schedule submit. Liquidity sits upstream of fund reconciliation (end-of-day truth) and downstream of supplemental fund injection (cure actions). When LIQ-* projects shortfall, surface defer wave, trigger replenishment, or apply pro rata reduction—each with audit ids, not silent batch splits. Ops war room users need at-a-glance available_to_pay vs committed_outflows with drill-down to PAY-* rows—not a single bank balance number that ignores contested escrow. Start from the Figma guides hub and use tables, inline alerts, and Dev Mode handoff.
Who this is for
- Product designers where treasury uses three browser tabs (bank, Excel, admin) to guess solvency.
- Claims administrators delaying waves because “we’re not sure the account can cover it.”
- Finance pairing liquidity alerts with escrow interest allocation and administrator fee accruals.
CASH-POS-* cash position snapshot
CashPositionSnapshot — CASH-POS-992-110 · as_of: 2026-09-29T14:30:00Z
├── Accounts (program-scoped):
│ ├── escrow_operating · escrow_disbursement · fee_hold · tax_withholding
│ ├── per_account: ledger_balance · available_balance · holds_total
│ └── bank_feed_id · last_sync_status · stale_feed_warning
├── Derived buckets (must reconcile to RES-* model):
│ ├── available_to_pay = operating available − pending_exports − minimum_cushion
│ ├── committed = sum PAY-* approved not exported + in-flight ACH/wire
│ ├── reserved = [contested escrow](/designing-breach-settlement-contested-claim-escrow-and-dispute-reserve-ui-in-figma/) + [lien offsets](/designing-breach-settlement-lien-and-third-party-creditor-offset-ui-in-figma/)
│ └── scheduled_today = [WIR-SCHED-*](/designing-breach-settlement-wire-cutoff-windows-and-same-day-scheduling-ui-in-figma/) + NACHA batches + CARD-LOAD-* ([card rail](/designing-breach-settlement-prepaid-card-and-digital-wallet-disbursement-ui-in-figma/))
├── UI layout:
│ ├── Hero strip: available_to_pay (large) · committed · reserved
│ ├── Account cards with [badges](/designing-badges-and-chips-in-figma-status-tags-and-handoff/) stale | syncing | error
│ └── Drill-down [table](/figma-tables-and-data-ui-rows-columns-and-handoff/) to movement lines (admin only)
└── Audit:
├── LOG-CASH-* snapshot hash · who viewed export screen
└── Alert CASH-ALERT-* when feed stale > SLA
| Metric | Includes | Excludes |
|---|---|---|
| Ledger balance | All posted bank credits/debits | Unexported approval intent |
| Available to pay | Spendable per bank rules | Contested reserves |
| Committed | Approved PAY-* queued for export | Draft claims |
| Forecast outflows | LIQ-* scheduled | Hypothetical simulations unless sim mode |
Verdict: Never show claimants raw CASH-POS-*—portal uses payment timeline only; liquidity is treasury/admin.
LIQ-* intraday liquidity forecast
LiquidityForecast — LIQ-992-055 · horizon: 5_business_days
├── Inputs:
│ ├── CASH-POS-* latest · pending [replenishment](/designing-breach-settlement-escrow-replenishment-and-disbursement-reserve-ui-in-figma/) TOP-UP-*
│ ├── [Distribution schedule](/designing-breach-settlement-distribution-schedule-and-tranche-disbursement-planning-ui-in-figma/) tranches by date
│ ├── [Attorney fee](/designing-breach-settlement-attorney-fee-allocation-and-incentive-award-ui-in-figma/) and [admin fee](/designing-breach-settlement-claims-administrator-fee-and-expense-recovery-ui-in-figma/) accrual schedules
│ ├── Expected [returns / reissues](/designing-breach-settlement-returned-payment-and-reissue-ui-in-figma/) (credit back)
│ └── [Appeal stay](/designing-breach-settlement-appeal-and-mandamus-review-ui-in-figma/) — zero outflows when stay active
├── Outputs:
│ ├── daily_net_position[] · minimum_balance_day · first_shortfall_date
│ ├── scenario toggles: accelerate_wave | delay_tranche | inject_funds
│ └── export LIQ-RPT-* PDF for [court monitor](/designing-breach-settlement-court-monitor-and-special-master-reporting-ui-in-figma/)
├── Solvency check hook:
│ ├── On [GATE-PAY-* release](/designing-breach-settlement-disbursement-hold-release-and-payment-gate-ui-in-figma/) — warn if LIQ-min < cushion
│ ├── Hard block vs soft warn — program policy flag
│ └── Link [shortfall reduction](/designing-breach-settlement-fund-shortfall-and-pro-rata-reduction-ui-in-figma/) workflow if hard block
└── Visualization:
├── Stacked bar: inflows (interest, top-up) vs outflows by rail
└── [Date picker](/designing-date-pickers-and-calendar-ui-in-figma/) to inspect single business day
Forecast assumptions belong in admin copy, not claimant FAQ—when interest accrual is estimate, badge row estimated on interest slice.
Wave solvency panel (pre-export)
Attach a solvency drawer to NACHA preview, payment re-export, and wire schedule bulk submit:
WaveSolvencyCheck — SOLV-992-881 · batch_ref: NACHA-EXP-992-044
├── batch_total_cents · fee_buffer_cents · cushion_policy_cents
├── available_to_pay_at_submit · projected_after_batch
├── Result: pass | warn | block
├── If block:
│ ├── CTA: [Replenishment request](/designing-breach-settlement-escrow-replenishment-and-disbursement-reserve-ui-in-figma/)
│ ├── CTA: Split batch to [validation queue](/designing-breach-settlement-pre-export-payment-validation-and-exception-queue-ui-in-figma/)
│ └── CTA: Defer to next business day on [calendar](/designing-breach-settlement-wire-cutoff-windows-and-same-day-scheduling-ui-in-figma/)
└── Log SOLV-* outcome on export audit trail ([QA sampling](/designing-breach-settlement-post-disbursement-qa-and-audit-sampling-ui-in-figma/) may reference)
Treasury should see which PAY- rows push the batch over*—sort table by marginal impact, not only batch total.
Alerts, roles, and war room integration
LiquidityAlert — CASH-ALERT-992-003 · severity: critical
├── Triggers:
│ ├── available_to_pay < committed + cushion
│ ├── bank feed stale > N minutes
│ ├── LIQ-* first_shortfall_date within 2 business days
│ └── [Replenishment](/designing-breach-settlement-escrow-replenishment-and-disbursement-reserve-ui-in-figma/) approved but not settled
├── Routing ([security alerting patterns](/designing-security-alerting-rules-and-notification-routing-ui-in-figma/) adapted for finance):
│ ├── treasury_primary · claims_admin_backup · counsel_readonly optional
│ └── [Notification prefs](/designing-notification-preferences-and-communication-settings-ui-in-figma/) per role—not SMS for everyone
└── War room tile:
├── Link [customer status page](/designing-customer-incident-status-page-and-communication-ui-in-figma/) only if disbursement pause is public
└── Do not publish exact escrow balance externally
Use inline alerts on export screens for warn; modals for block with required acknowledgment.
Comparison: liquidity vs reconciliation
| Tool | When | Question answered |
|---|---|---|
| LIQ- forecast* | Intraday / planning | Will we run out before Friday? |
| CASH-POS-* | Real-time-ish | What is spendable right now? |
| Fund reconciliation | End of day | Did bank match our exports? |
| Final accounting | Program close | Court-ready totals |
Designers should reuse table and badge components across CASH-POS drill-down and reconciliation matching—treasury learns one visual language.
Handoff checklist (Dev Mode)
- CashPositionSnapshot — snapshot_id (CASH-POS-*), as_of, accounts_json, available_to_pay_cents, feed_status_enum.
- LiquidityForecast — forecast_id (LIQ-*), horizon_days, daily_series_json, first_shortfall_date, scenario_id.
- WaveSolvencyCheck — solv_id (SOLV-*), batch_ref, result_enum, projected_balance_cents, policy_cushion_cents.
- LiquidityAlert — alert_id (CASH-ALERT-*), severity, trigger_enum, acknowledged_by.
- TreasuryDashboardLayout — widget_order, role_visibility_matrix (no claimant variant).
Common mistakes
| Mistake | Why it hurts | Fix |
|---|---|---|
| Single bank balance hero | Ignores reserves | available_to_pay |
| No stale feed state | Export on bad data | CASH-ALERT-* + block |
| Forecast without fees | Surprise shortfall | Include admin/attorney accrual |
| Soft warn only on block policy | Double pays | Policy flag per program |
| Claimant-visible balance | Security / panic | Admin-only CASH-POS |
| Ignore appeal stay | Illegal disbursement | Zero outflows in LIQ-* |
| Solvency separate from GATE-PAY | Pays under hold | Single pre-export stack |
Recommended workflow
- Define RES- and account mapping* with finance before drawing widgets.
- Design CASH-POS hero + drill-down with stale and error states first.
- Add LIQ- chart* with scenario toggles tied to real batch ids in fixtures.
- Wire solvency drawer into NACHA and wire export flows.
- Run tabletop with mock shortfall day—verify CTAs match ops playbook.
FAQ
Same as fund reconciliation?
Reconciliation matches history; liquidity prevents bad exports before they happen—link both from treasury nav.
Escrow replenishment vs supplemental injection?
Replenishment covers operational drift; injection cures plan-level shortfall—LIQ-* should show which cure applies.
Wire cut-off interaction?
scheduled_today must include wires at risk of missing CUT-*—otherwise available_to_pay looks artificially high until tomorrow.
SLA dashboard for claimants?
Only publish “disbursement delays” if program comms approves—never live escrow balance on SLA site.
Card loads (prepaid rail)?
Include CARD-LOAD- in committed outflows* when batch approved—loads are not “off balance sheet.”
Next steps
- Design breach settlement escrow replenishment and disbursement reserve UI in Figma — cure paths
- Design breach settlement fund reconciliation and bank matching UI in Figma — end-of-day match
- Design breach settlement distribution schedule and tranche disbursement planning UI in Figma — forecast inputs
- Design breach settlement payment file generation and NACHA preview UI in Figma — solvency drawer attach point
- Design breach settlement supplemental fund injection and top-up approval UI in Figma — shortfall cure
§ Keep reading