💳Payment Gateway
0 nodes · 0 edgesHint 1 — locked
Hint 2 — locked
Hint 3 — locked
💳
Payment Gateway
● Advanced40–60 min
Problem
Build a payment processing system like Stripe. The system must accept card payments, enforce idempotency (same charge retried N times = charged exactly once), perform fraud screening before authorization, and maintain a double-entry ledger of every financial movement. Financial correctness is non-negotiable.
Functional Requirements
- Accept and process card payments via REST API
- Idempotency keys — same request retried N times = charged once
- Fraud scoring before authorization
- Double-entry ledger for every money movement
- Refunds, disputes, and bank reconciliation
Non-Functional
- 1M transactions per day at peak
- Payment processing < 3 seconds end-to-end
- Zero tolerance for double-charges or lost transactions
- PCI-DSS compliance — card data never touches application servers
💳
Design your Payment Gateway
Drag components from the Brief panel → switch to Components tab
Press enter or space to select a node. You can then use the arrow keys to move the node around. Press delete to remove it and escape to cancel.
Press enter or space to select an edge. You can then press delete to remove it or escape to cancel.
UML
15
Needs Work
Click a dimension to see what's missing. Score updates as you design.
Speed
RPS
Hit Play to start simulation00:00