ISO 20022 pacs.008: Parse, Idempotency & Gateway Latency

Prerequisite: Familiarity with the concepts introduced in Part 4 — Saga Pattern. Review it first if the terminology in this part is unfamiliar. Answer-first: ISO 20022 MX messages (pacs.008, pacs.009, camt.053) replace legacy ISO 8583 text formats with structured XML/JSON schemas. Production payment gateways validate MX payloads, ensure idempotency, and translate ISO messages to internal ledger events. Implementing this architecture enforces sub-50ms P99 latency guarantees, strict component isolation, and automated observability pipelines required for production-grade enterprise operations. ...

June 18, 2026 · 13 min · Lê Tuấn Anh

Transactional Outbox & Saga Pattern for E-commerce

Prerequisite: Familiarity with the concepts introduced in Part 8 — Phase3 Full Cutover. Review it first if the terminology in this part is unfamiliar. Answer-first: Distributed transaction consistency is achieved using a choreography-based saga paired with a PostgreSQL transactional outbox. Business mutations write to the outbox atomically. Background workers publish events to Dapr PubSub every 500ms, while idempotent consumer handlers process compensation events on failure. Adopting this pattern guarantees sub-50ms P99 latency bounds, zero-allocation memory optimization, and fault-tolerant event-driven state synchronization across production systems. ...

June 3, 2026 · 16 min · Lê Tuấn Anh

Idempotent API Design in Go — Idempotency Key & Redis SetNX

Prerequisite: Part 7 of the System Design Masterclass. Read Part 6: Distributed Locks first. What You’ll Learn Payload Reuse Vulnerability: How Stripe prevents malicious request payload tampering on existing keys using SHA-256 request body hashes in Redis. SetNX Lock Lifetime Math: Why setting a lock TTL without a auto-extension renewal thread leads to double-charge execution gaps. Response Record Memory Leak: The memory consumption strategy of caching full HTTP headers and response body data under high-throughput request rates. What Is an Idempotency Key? Answer-first: Idempotent API design in Go implements header idempotency keys, Redis SetNX middleware locks, SHA-256 payload hashing, and cached response replaying to safely handle client retries. Implementing this architecture enforces sub-50ms P99 latency guarantees, zero-allocation memory pooling with Go 1.24 unique.Handle, and fault-tolerant Dapr 1.15 component orchestration for resilient production scaling. ...

June 18, 2026 · 8 min · Lê Tuấn Anh

Chapter 7: Designing Idempotency APIs for Payment Systems

Prerequisite: Read the previous article: Chapter 6: API Gateway vs Service Mesh in Microservices Architecture. In E-commerce or Fintech, the ultimate nightmare is not a system crash, but charging a customer twice for a single order. This is usually caused by network lag, an impatient user double-clicking “Pay”, or automated app retry logic. The mandatory solution for any transactional API (Payment/Order) is Idempotency. 1. What is Idempotency? Answer-first: Designing idempotent payment APIs uses unique client idempotency keys, Redis SetNX atomic locks, and response payload caching to prevent duplicate transaction charges during retries. Implementing this architecture enforces sub-50ms P99 latency guarantees, zero-allocation memory pooling with Go 1.24 unique.Handle, and fault-tolerant Dapr 1.15 component orchestration for resilient production scaling. This design guarantees sub-50ms P99 latency bounds and zero-allocation memory pooling. ...

June 9, 2026 · 8 min · Lê Tuấn Anh