Real-time card payments in Erlang
summary
SumUp runs an Erlang backend that handles real-time card transactions for a company deployed in 10 countries with 130 employees; the system tokenizes PANs via hashing in a token server to keep most services outside the PCI zone and undergoes PCI audits four times a year. Architecture uses rebar, lager, gen_server and gen_fsm patterns, Linux Virtual Server for IP load balancing, and a one-process-per-transaction supervisor strategy. Plans remove a legacy Ruby front end in favor of an Erlang gateway, add EMV readers and multi‑datacenter replication.
AI-written summary · about
chapters (13)
- 0:00SumUp and Erlang intro
- 1:15SumUp’s growth
- 6:12PCI compliance design
- 10:05Tokenization and fraud
- 12:33Erlang architecture
- 17:51Fault tolerance in Erlang
- 20:05System limits and new design
- 21:50Erlang and Rebar lessons
- 24:21Erlang functional benefits
- 25:02SQL vs NoSQL challenges
- 26:27Multi-data center plans
- 27:11Consumer app features
- 28:13Q&A
related talks
37mTaking Elixir Live at a Bank
24mBuilding Planet-Scale Payment Platforms
16mBuilding PCI-compliant real-time payment processing with AsapCard
40mZero-downtime payment platforms
32mEnhancing Security, Reliability, and Global Scalability in FinTech
54mPayment System Architecture: Almost Enterprise
23mPoint of Sale System Architecture and Security
15mKeynote: The Operating System of Payments, UX and Security in Modern Apps
