figma guide

Designing breach settlement final accounting and court closure UI in Figma: distribution ledgers, certification reports, and administrator sign-off

Design breach settlement final accounting and court closure UI in Figma with distribution ledgers, variance reconciliation, court certification exports, and administrator closure dashboards.

Published
Updated
Aug 25, 2026
Read time
7 min
Level
Intermediate

Quick answer

Breach settlement final accounting UI closes the fund after disbursement, escheatment, and appeals—proving every dollar is accounted for before the court releases the administrator. Design a distribution ledger that ties CLM-, PAY-, UCF-, and ESC- rows to escrow balances, a variance reconciliation console for finance and counsel review, and court certification exports with administrator attestation and audit trails. Connect to payment disbursement, unclaimed funds, claims disputes, and compliance exports. Start from the Figma guides hub and pair with tables, badges, and Dev Mode handoff.


Who this is for

  • Product designers building settlement wind-down consoles—not generic accounting ERP screens.
  • Settlement administrators and finance teams preparing court-facing final reports.
  • Legal counsel who need auditable variance explanations before requesting court closure.

Settlement closure lifecycle overview

SettlementClosure — SET-992 · Status: Wind-down · Target court filing: 2028-03-01
├── Preconditions (all must pass):
│   ├── All CLM-* in terminal state (approved, denied, withdrawn, or appealed-closed)
│   ├── All PAY-* delivered, voided, or linked to UCF-* / ESC-*
│   ├── All UCF-* resolved via reissue or escheatment filing
│   ├── All DIS-* appeals closed per [disputes UI](/designing-breach-settlement-claims-dispute-and-appeals-ui-in-figma/)
│   └── Residual fund plan approved (see [cy pres allocation](/designing-breach-settlement-residual-fund-and-cy-pres-allocation-ui-in-figma/))
├── ID namespace:
│   ├── FIN-* (final accounting report) · VAR-* (variance case) · CLS-* (closure batch)
│   └── Links SET-992 escrow account to ledger line items
├── Status progression:
│   ├── Disbursement complete → Reconciliation in progress → Variance review → Counsel sign-off → Court filing → Closed
│   └── Exception: Legal hold pauses closure from [compliance exports](/designing-compliance-exports-and-legal-hold-ui-in-figma/)
└── Victim portal: Read-only settlement status after closure date
StageFinance seesCounsel sees
Reconciliation in progressLedger auto-match rateOpen VAR-* count
Variance reviewUnmatched rows queueExplanation required per VAR-*
Counsel sign-offZero unresolved material varianceAttestation checklist
Court filingFIN-* export packageFiling confirmation number
ClosedEscrow zero balanceArchive to regulatory records

Verdict: Treat FIN- as a versioned report artifact*—do not overwrite after counsel sign-off; create FIN-992-v2 if corrections are required.


Distribution ledger (administrator)

DistributionLedger — SET-992 · Escrow balance: $0.00 · Reconciled: 99.97% · 847 open VAR-*
├── Summary tiles:
│   ├── Total settlement fund: $12,400,000
│   ├── Disbursed (PAY-*): $11,204,882
│   ├── Escheated (ESC-*): $41,204
│   ├── Residual / cy pres (see [residual fund UI](/designing-breach-settlement-residual-fund-and-cy-pres-allocation-ui-in-figma/)): $892,114
│   ├── Administrator fees: $261,800 · Less: $0 variance
│   └── Unreconciled: $0 (target)
├── Line-item table (filterable):
│   ├── claim_id (CLM-*) · pay_id (PAY-*) · ucf_id · esc_batch_id · amount · status · ledger_match
│   ├── Sort by variance flag · Export CSV for audit
│   └── Drill-down: CLM-* → all related PAY-* and UCF-* in one drawer
├── Escrow tie-out:
│   ├── Bank statement import · Match date range · Auto-match rules
│   ├── Unmatched bank rows → Create VAR-* with suggested CLM-* link
│   └── Interest earned on escrow · Allocate per court order
└── Bulk actions: Assign reviewer · Mark immaterial · Request counsel note

Use tables and data UI patterns with frozen summary row and export affordance—not a static spreadsheet screenshot.


Variance reconciliation console

VarianceConsole — VAR-992-0041 · $12.40 · Type: ACH return after ledger close · Status: Open
├── Variance detail:
│   ├── Source: PAY-992-44102 · CLM-992-38821 · Return code R03
│   ├── Detected: 2028-01-14 · After prior FIN-992-v1 sign-off
│   └── Materiality threshold: $500 (settlement config)
├── Resolution paths:
│   ├── [ Link to existing UCF-* ] → Reopen UCF-992-8840
│   ├── [ Create new UCF-* ] → Void PAY-* · Start dormancy flow
│   ├── [ Write off as immaterial ] → Counsel approval + audit comment
│   └── [ Adjust residual fund ] → Route to cy pres recalculation
├── Required fields before close:
│   ├── resolution_code · operator_id · counsel_reviewer_id (if material)
│   ├── explanation_text (court-readable, not internal jargon)
│   └── supporting_doc_refs[] (bank statement, return notice)
├── Impact on FIN-*:
│   ├── Material variance blocks new FIN-* sign-off
│   └── Resolved VAR-* appended to FIN-* appendix automatically
└── Audit log: var_id · action · before_amount · after_amount · fin_report_version

Material variances discovered after a signed FIN-* require new report version—UI must show version history, not silent edits.


Court certification export package

CourtCertification — FIN-992-v3 · Settlement SET-992 · Ready for counsel review
├── Report sections (PDF + structured JSON):
│   ├── Executive summary · Total class members · Claims approved/denied counts
│   ├── Distribution summary · By remedy type (cash, monitoring, credit)
│   ├── Escheatment appendix · ESC-* batches with state confirmation numbers
│   ├── Residual fund disposition · Link to [cy pres plan](/designing-breach-settlement-residual-fund-and-cy-pres-allocation-ui-in-figma/)
│   ├── Administrator fee calculation · Hourly vs percentage per court order
│   ├── Variance appendix · All VAR-* with resolution narrative
│   └── Attestation block · Administrator signature · Date · Notary if required
├── Pre-export validation:
│   ├── Zero open material VAR-*
│   ├── Escrow balance = $0.00 ± immaterial tolerance
│   ├── All ESC-* have state confirmation or documented exception
│   ├── FIN-* version > prior signed version if corrections exist
│   └── Legal hold check from [compliance exports](/designing-compliance-exports-and-legal-hold-ui-in-figma/)
├── Export formats: Court PDF · NAUPA cross-reference · Audit JSON · [Regulatory archive](/designing-regulatory-authority-correspondence-and-breach-filing-archive-ui-in-figma/)
└── Post-filing: Court order number · Closure date · Portal status → Settlement closed

Design read-only preview before export—counsel reviews the exact PDF layout, not a separate summary page.


Victim-facing settlement closure status

After court closure, claimants see a terminal read-only state—not active wizards:

ClosureStatus — SET-992 · Your claim CLM-992-88421 · Settlement closed 2028-04-15
├── Status badge: Closed · No further actions available
├── Your outcome summary:
│   ├── Claim approved · PAY-992-88421 · Delivered 2027-09-02 · $47.82
│   └── No open disputes · No pending reissue
├── Historical links: Download claim confirmation · Download payment receipt
├── Support: Contact [call center](/designing-breach-call-center-and-agent-script-ui-in-figma/) for records lookup only
└── Legal notice: "This settlement is final per court order [case number]"

Do not show empty CTAs after closure—remove “File a claim” and “Update payment” from account dashboard settlement widgets.


Comparison: final accounting vs adjacent surfaces

SurfaceFocusThis UI adds
Payment disbursementActive payout deliveryPost-delivery ledger tie-out
Unclaimed fundsDormancy and escheatESC-* totals in FIN-* appendix
Claims disputeAppeal resolutionBlocks closure until DIS-* closed
Compliance exportsLegal holdHold blocks FIN-* export
Regulatory archiveFiling storageCourt closure order archive

Handoff checklist (Dev Mode)

  • DistributionLedger — settlement_id (SET-*), escrow_balance, disbursed_total, escheated_total, residual_total, admin_fee_total, unreconciled_amount, match_rate_pct, open_var_count.
  • LedgerLineItem — claim_id (CLM-), pay_id (PAY-), ucf_id, esc_batch_id, amount, status_enum, ledger_match_bool, variance_flag.
  • VarianceConsole — var_id (VAR-*), source_pay_id, claim_id, variance_amount, variance_type_code, materiality_threshold, resolution_code, counsel_reviewer_id, fin_report_version_affected.
  • CourtCertification — fin_report_id (FIN-*), version, settlement_id, export_formats[], validation_errors[], attestation_signed_at, court_order_number.
  • ClosureStatus — settlement_id, claim_id, closure_date, outcome_summary, historical_doc_refs[], support_contact_ref.

Common mistakes

MistakeWhy it hurtsFix
Editable FIN-* after counsel sign-offCourt filing integrity failureVersioned FIN-* with immutable signed copies
Ledger without UCF-* and ESC-* rowsEscrow never ties to zeroInclude all terminal money paths
Hide immaterial variances entirelyAudit gapsAppendix with immaterial VAR-* optional
Closure while DIS-* openReopened liabilityHard gate on dispute queue
Victim portal still shows “Update payment”Support spike and confusionTerminal closure UI state
Single PDF without structured exportRe-filing painJSON appendix for corrections
No bank import reconciliationManual spreadsheet parallelEscrow tie-out in-product
Ignore interest on escrowCourt order non-complianceInterest line in ledger summary

  1. Define materiality threshold and FIN- versioning rules* with counsel before wireframes.
  2. Extend PAY- and UCF- tables** into distribution ledger—do not duplicate data entry.
  3. Design variance console with resolution paths that link back to existing flows.
  4. Build court certification preview early—counsel feedback on PDF layout saves rework.
  5. Sync closure status with call center scripts before portal goes read-only.
  6. Archive FIN- and court order* to regulatory archive on closure.

FAQ

When can FIN-* export start?

After disbursement and escheatment batches complete and all material VAR-* are resolved—or documented as pending with court approval for partial closure (rare; settlement-specific).

What if new ACH returns arrive after closure?

Reopen settlement wind-down with FIN-* version increment—portal shows “Administrative update” banner, not silent ledger edits.

How do administrator fees appear?

Separate ledger section per court order (percentage of fund, hourly cap, or hybrid)—fee variance gets its own VAR-* type.

Do victims receive closure notification?

Optional email with link to ClosureStatus—do not require login for basic “settlement closed” notice if court order allows.

Mobile final report review?

Counsel review is desktop-first—mobile shows summary tiles and “Open full report on desktop” for PDF attestation.


Next steps

Share on X

§ Keep reading

Related guides.