Accept or dismiss an offer
What It Does
A response performs a supported checkout, code or page action and records the result. Completed repeats reuse history, while concurrent first actions remain a proof gap.
The Flow
When Something Fails
Reject missing, inaccessible, anonymous-estimate or expired offers. No action has run. Record eligible checkout or participant refusal details and return the refusal. Failed item processing rolls back the attempted checkout change. Return recording failure while retaining the previously applied code. Checkout can retain a code without accepted-offer history; a retry can repeat application. Return unsupported-action or access refusals. A refused unsupported action retains no checkout change.
Open Design Questions
The implemented recovery and concurrency behaviour above defines the current boundary. Any change to transaction scope or product authority requires a recorded decision.