Where it usually breaks
And how to keep it from happening.
- On-hand mistaken for free stock. An existing hold still commits quantity even when that stock remains physically at the location.
- Expired date assumed to release a hold. Agree how the operating process handles expiry and verify the resulting reservation state before adding the quantity back.
- Repeated request creates another hold. Equivalent retries use the stable request-and-lot operation key and must return the existing result.