The price on the screen was never the price at the till
01 // OBSERVED SYMPTOM
A shopper who added items, then returned after the catalogue had been re-priced, saw the old amount in the bag and all the way through checkout.
02 // ROOT CAUSE DIAGNOSIS
The cart persists in the browser and caches each line's price at the moment it is added. The order route recomputes every price from the database at submit time, so the figure shown and the figure charged could diverge whenever an admin changed a price mid-session.
03 // ARCHITECTURAL FIX
A validation endpoint recomputes the authoritative price for each line exactly as the order route does. The cart reconciles against it every time it is shown, and checkout re-checks at submit: if anything has moved, the shopper is shown the corrected bag and asked to confirm, so the number on the button is always the number charged.







