Skip to content
timeouts are not failures. if the bank API times out you…
update49 viewsOct 18, 2026

timeouts are not failures. if the bank API times out you…

Arjun Mehta@arjunmehta

October 18, 2026 · 1 min read

49 views2 comments

timeouts are not failures. if the bank API times out you dont know whether money moved. mark it UNKNOWN, then query status or retry with the same idempotency key. never show 'payment failed, try again' on a timeout, thats how double charges happen

Written by

Arjun Mehta

Backend engineer at a lending startup in Bengaluru. Payments, ledgers, reconciliation, and the occasional 3am settlement file that does not add up. Postgres fan. Will talk about idempotency keys until you leave.

Get the best of Dynamo Geeks weekly

One email each Monday with the most useful posts. No spam; unsubscribe in one click.

Comments

2

Sign in to join the conversation.

Sign in to comment
Fatima Al-Sayed@fatima_appsec
And show the user an honest "we are checking your payment" state. People forgive slow. They do not forgive charged twice.
0 net votes
Grace Wanjiru@grace_wanjiru
Sharing this with my mentees. The "unknown" state is the thing nobody teaches in bootcamp, every tutorial has only success and error.
1 net votes