Case Studies > Payments
Payments Backoffice: Where Money Meets Usability Risk
A heuristic evaluation and practitioner-informed field study across 17 payment screens, from audit findings to redesign direction.
17
Screens Reviewed
12
Findings Documented
3
Payment Flows Redesigned
3
Practitioner Scenarios
Role: Sole UX Researcher & Designer
01 / SCREEN REVIEW
17 production screens walked through, including payment methods, transaction details, withdrawal flows, and the in-progress Lifecycle redesign.
02 / HEURISTIC EVALUATION
Nielsen's 10 heuristics applied with severity scoring (0–4). Key violations found in payment creation and verification flows with compliance exposure.
03 / PRACTITIONER-INFORMED SCENARIOS
3 practitioner-informed scenarios based on observed workflow patterns, including Tier-1 ops, fraud analyst, and compliance. Hypothesis set for live validation.
04 / AI-ASSISTED CROSS-VALIDATION
Ran a parallel exploratory analysis using AI tools against the same screen set, comparing AI-surfaced issues with manual findings to validate coverage and test where automated heuristic detection aligns or diverges from practitioner-grounded research.
Where money meets usability risk
12 findings ranked by financial exposure and frequency. The critical issue, a Verified badge persisting on garbage bank data, represents live compliance risk.
Verified Badge on Invalid Data
criticalFree-text bank fields accept garbage input even after Verified status, breaking KYC/AML integrity.
Partial Amount Exceeds Approved
highPartial amount can exceed the originally approved amount with no cap, a logically contradictory state.
Raw JSON Blocks Investigation
highTransaction remark is an unformatted JSON blob. Agents hand-parse it to find auth codes under chargeback deadlines.
Misleading Withdrawal Action Labels
highWithdrawal action labels are ambiguous. "Cancel" unclear whether it cancels the request or the agent's action; "Decline" unclear whether it rejects permanently or sends back for review. High-stakes confusion on money flows.
No Bulk Withdrawal Actions
mediumNo bulk actions existed. Agents processed one withdrawal at a time, creating repetitive manual work and slowing high-volume shifts significantly.
Transaction ID Not Linked to Details
mediumTransaction IDs in the payments section are not clickable. Agents must navigate to the Transactions tab separately to view details. Breaks contextual flow during withdrawal review.
Icon-Only Action With No Label
lowBlue circular-arrow icon next to transaction rows has no tooltip or legend. New agents must guess or ask what it does. Recognition over recall violation.
Practitioner scenarios
Three practitioner-informed scenarios modeling what live observation would surface, a hypothesis set for validation with real ops teams.
Ana — Payments / Cage Agent
Processing pending withdrawal requests at shift start
“I process withdrawals one by one, and every time I hit 'Cancel' I have to pause and think: am I cancelling the withdrawal or cancelling what I'm doing right now?”
Marko — Fraud & Risk Agent
Investigating a declined deposit flagged for review
“Every investigation starts with me un-mangling this JSON before I can even start the actual investigation.”
Ines — AML & Compliance Officer
Verifying a wire transfer account before large release
“Verified just means someone clicked the button. It doesn't mean the data was actually checked.”
A pattern already proving its value
The Lifecycle timeline already demonstrates the target, a structured, scannable, timestamped event history replacing opaque JSON. Agents reported faster scanning in early feedback. The recommendation: finish rolling it out, while fixing the critical verification gap and high-severity action-label issues first.
01 / FIX NOW
Cap partial amounts at approved. Validate bank fields before Verify. Clarify withdrawal action labels (Cancel/Decline) with explicit outcome descriptions.
02 / FIX NEXT
Extend Lifecycle pattern to transaction remarks. Introduce bulk withdrawal actions to eliminate one-by-one processing bottleneck.
03 / VALIDATE FIRST
Collect user feedback on redesigned flows with help of rapid prototyping. Validate clarity of new action labels and payment lifecycle with ops agents.
→ Key insight: the highest-leverage change is already prototyped. The Lifecycle pattern (rated Positive in audit) resolves the raw-JSON problem and most scanning-speed issues in one move.
The redesigned payment flows

Withdrawals Queue
Pending, completed, and failed withdrawals with approve, decline, and hold actions.

Withdrawal Detail
Full lifecycle, integration logs, and PSP notifications for a single withdrawal.

Create Payment — Basic
Basic payout flow with requested method and total confirmed before sending.

Create Payment — Overrides
Override the payment method or reference ID before submitting to the PSP.

Create Payment — Batch
Batch payout combining multiple withdrawal requests into one total.

Create Payment — Custom Amount
Custom partial-amount payout capped at the approved withdrawal total.

Transactions
Deposits, withdrawals, chargebacks, and refunds with status and fees in one ledger.

Withdrawal Lifecycle
Payment lifecycle steps shown inline over the transaction list.

Payments Overview
Paid-out totals, monthly volume, and average payment size across the ledger.

Failed Payment
A frozen-account withdrawal halted at compliance check, with the block reason surfaced.
© 2026 Krista Design Systems.
← Back to Top