If the Price Has Risen, Do Not Confirm
The price you just checked should be the price you confirm; nothing extra should be agreed to by silence.
Some supplier APIs accept a slightly higher price at booking time unless told otherwise. When booking with one such supplier, we now state explicitly that no increase is acceptable; per its API documentation, a risen price is then refused before confirmation, instead of being confirmed first and left for us to catch and cancel.
A booking usually takes three steps: search, re-check the rate, then book. The re-checked price is the one the guest sees and the one the system uses to work out the margin. Ideally the price at confirmation matches it exactly, but suppliers’ inventory and prices move all the time, and a gap can open within seconds.
Some supplier APIs have a default acceptance range for that gap: unless the booking request says otherwise, a slightly higher price is confirmed anyway. We also run a local cost check that spots a confirmed cost above the quote and stops the order, but by then the supplier’s booking already exists. It has to be cancelled, the money reconciled order by order, and at worst someone has to take over by hand.
Booking requests to this supplier now state that the tolerance for a price rise is zero. Under the supplier’s published API description, any confirmation price above the re-checked one is then refused outright. The local cost check is unchanged and no tolerance anywhere was loosened; it simply moves from being the only catch to being the second line.
After the change, a price rise ends for the buyer in a clear refusal rather than a booking that is confirmed and then cancelled, and whether to re-check and book at the new price is left to a person. The setting is added only to this supplier’s booking request, because its API has that default range.