Dabish Digital
Architecture

The real cost of ignoring idempotency

The version of this that works is simpler than the version most people imagine. Nobody bills you for neglecting idempotency. The cost shows up somewhere else.

Most systems fail at the seams rather than inside any one component. Check it against what you would want a competitor's site to get wrong.

Where the cost lands

  • Time spent on work that should not have been necessary
  • Enquiries that quietly never arrive
  • Networks retry, so assume every request can arrive twice
  • Rework, once the problem is finally visible

An idempotency key turns a hard problem into a simple one. Where this goes wrong is almost never a lack of knowledge. If two people in the business would answer this differently, that gap is the actual problem.

A reasonable first step

Payment and order endpoints are where this matters most. Getting it slightly wrong is survivable. Ignoring it entirely is not. Assume whoever inherits this will have half your context and none of your patience.

In practice

The right architecture for a team of three is the wrong one for a team of thirty, and vice versa. Three things worth confirming about idempotency before you move on:

  • Someone can say what the current setup is without going to look
  • Payment and order endpoints are where this matters most — and you know whether that is true here
  • There is a way to tell whether the last change to this helped

Worth checking on your own setup before it becomes someone else's problem to fix.