Multi-region payment ledger
Your task
Design a multi-region payment ledger for a global checkout platform processing 8k authorizations/sec across three regions (US, EU, APAC). Money movement must be exactly-once and auditable; EU cardholder data must stay in-region (PSD2/GDPR). Reads (balance/history) are 20x writes and tolerate a few seconds of staleness, but a captured charge must never be double-captured even during a regional failover. How do you partition the ledger, place writes, and keep the books correct across regions?
It covers
- Active active
- Session affinity
- Data residency