{"type":"excalidraw","version":2,"source":"https://AwesomeSystemDesign.dev","elements":[{"angle":0,"strokeColor":"#6577aa","backgroundColor":"#eef1fc","fillStyle":"solid","strokeWidth":1.5,"strokeStyle":"solid","roughness":0.7,"opacity":100,"version":1,"versionNonce":1,"isDeleted":false,"groupIds":["step-1"],"frameId":null,"roundness":null,"boundElements":[{"type":"text","id":"shape-1"}],"updated":0,"link":null,"locked":false,"id":"shape-0","type":"rectangle","seed":41,"x":36,"y":31.99999999999997,"width":390,"height":480.6,"customData":{"revealStep":1}},{"angle":0,"strokeColor":"#394557","backgroundColor":"transparent","fillStyle":"solid","strokeWidth":1.5,"strokeStyle":"solid","roughness":0.7,"opacity":100,"version":1,"versionNonce":1,"isDeleted":false,"groupIds":["step-1"],"frameId":null,"roundness":null,"boundElements":null,"updated":0,"link":null,"locked":false,"id":"shape-1","type":"text","seed":114,"x":56,"y":49.99999999999997,"width":350,"height":444.6,"fontSize":18,"fontFamily":1,"text":"CONTROL PLANE\n\n• Merchant Config (API keys, payout\nschedule, fees, currency prefs)\n\n• Routing Engine (smart routing to\nbest-performing network/acquirer)\n\n• Webhook Service (reliable async\ndelivery with retry + DLQ)\n\n• Subscription Mgr (recurring billing,\ndunning, proration)\n\n• Dispute Manager (chargeback flow,\nevidence upload, representment)\n\n• Settlement / Payout Engine\n(batch, daily)","originalText":"CONTROL PLANE\n\n• Merchant Config (API keys, payout\nschedule, fees, currency prefs)\n\n• Routing Engine (smart routing to\nbest-performing network/acquirer)\n\n• Webhook Service (reliable async\ndelivery with retry + DLQ)\n\n• Subscription Mgr (recurring billing,\ndunning, proration)\n\n• Dispute Manager (chargeback flow,\nevidence upload, representment)\n\n• Settlement / Payout Engine\n(batch, daily)","textAlign":"center","verticalAlign":"middle","containerId":"shape-0","lineHeight":1.3,"autoResize":false,"customData":{"revealStep":1}},{"angle":0,"strokeColor":"#628572","backgroundColor":"#edf5ee","fillStyle":"solid","strokeWidth":1.5,"strokeStyle":"solid","roughness":0.7,"opacity":100,"version":1,"versionNonce":1,"isDeleted":false,"groupIds":["step-2"],"frameId":null,"roundness":null,"boundElements":[{"type":"text","id":"shape-3"}],"updated":0,"link":null,"locked":false,"id":"shape-2","type":"rectangle","seed":187,"x":466,"y":32,"width":390,"height":691.2,"customData":{"revealStep":2}},{"angle":0,"strokeColor":"#394557","backgroundColor":"transparent","fillStyle":"solid","strokeWidth":1.5,"strokeStyle":"solid","roughness":0.7,"opacity":100,"version":1,"versionNonce":1,"isDeleted":false,"groupIds":["step-2"],"frameId":null,"roundness":null,"boundElements":null,"updated":0,"link":null,"locked":false,"id":"shape-3","type":"text","seed":260,"x":486,"y":50,"width":350,"height":655.2,"fontSize":18,"fontFamily":1,"text":"DATA PLANE\n\n• Payment Service (Core)\n• Payment State Machine\n(intent→auth→ capture→settle)\n• Idempotency Service (Redis-backed,\n48h TTL)\n\n• Token Vault (PCI Scope)\nCard number → Token mapping\n(AES-256-GCM encrypted)\nHSM-backed key management\nIsolated network segment (PCI\nCDE)\n\n• Risk / Fraud Engine\n• ML model scoring (real-time, <\n50ms)\n• Rules engine (velocity, geolocation,\ndevice fingerprint)\n• 3D Secure challenge trigger\n\n• Ledger (Double-Entry)\nEvery money movement = debit one\naccount + credit another\nAppend-only, immutable log Sum of all\ndebits = Sum of all credits (always\nbalanced)","originalText":"DATA PLANE\n\n• Payment Service (Core)\n• Payment State Machine\n(intent→auth→ capture→settle)\n• Idempotency Service (Redis-backed,\n48h TTL)\n\n• Token Vault (PCI Scope)\nCard number → Token mapping\n(AES-256-GCM encrypted)\nHSM-backed key management\nIsolated network segment (PCI\nCDE)\n\n• Risk / Fraud Engine\n• ML model scoring (real-time, <\n50ms)\n• Rules engine (velocity, geolocation,\ndevice fingerprint)\n• 3D Secure challenge trigger\n\n• Ledger (Double-Entry)\nEvery money movement = debit one\naccount + credit another\nAppend-only, immutable log Sum of all\ndebits = Sum of all credits (always\nbalanced)","textAlign":"center","verticalAlign":"middle","containerId":"shape-2","lineHeight":1.3,"autoResize":false,"customData":{"revealStep":2}}],"appState":{"viewBackgroundColor":"#fbfbf8","gridSize":null},"files":{}}