← BackReference (opens in a new tab)

The duplicate order

A timeout leaves the final outcome uncertain. · PM Drills · 10 · 30 sec–2 min

The duplicate order · 30 sec–2 min

Situation

A customer clicks Pay again after a timeout.

Two orders appear. The first request succeeded on the server even though the browser did not receive confirmation.

Think before scrolling

What should the product and system do differently?

Consider duplicate protection, status checking, and what the customer sees while the outcome is unknown.

How a strong PM thinks

Preserve one intent across retries.

Work with engineering on a stable operation identifier or equivalent duplicate protection. When a response is uncertain, check the authoritative order state before repeating a consequential action.

The interface should explain that confirmation is pending and provide a recovery path. Disabling the button is useful but cannot address network retries, refreshes, or multiple devices by itself.

Takeaway

No response does not mean no action.

Design retries around confirmed state and protect the user from duplicate side effects.