Mobile app creates duplicate orders

On-call incidentMedium35 minStripe style

Your task

Your order API is idempotent: clients send an Idempotency-Key header and the server dedupes by it. After a deploy of the mobile app at 09:00, support reports a rising trickle of duplicate orders, same cart, two orders seconds apart, only from mobile, not web. Dashboards: API error rate flat, p99 normal, the idempotency table is filling faster than usual. The mobile change added an automatic retry on network timeout. How do you triage, stop the duplicates, and reconcile?

It covers

  • Idempotency key
  • Client retry
  • Key regeneration
  • Double write