The Stripe Loop Questions I Actually Got
A 5-question reconstruction of a senior backend loop at a payments company in 2024. Each one is paired with what the interviewer pushed back on and what I should have answered.
Question Bundle
JavaScript
interview-prep
backend
idempotency
stripe
By @kwamehenderson
February 8, 2026
·
Updated May 18, 2026
1,108 views
4
4.3 (10)
Sketch an idempotency layer for a payments API. Two requests with the same idempotency key arrive 80ms apart. How does your implementation make sure only one charge happens?
Real call
Stripe asked me to trace it on the whiteboard:
JavaScript
chargeOnce('idem-abc', payload, charge); // t=0: cache miss, runs charge, stores in-flight promise
chargeOnce('idem-abc', payload, charge); // t=80ms: cache hit on in-flight promise, awaits the same result
// Both callers resolve to the same value; only one charge runs.4 more questions and all solutions are locked.
Purchase this item to access all questions, code snippets, and solutions.
