Skip to main content
PUT
Replace the checkout
The body replaces the whole UCP checkout. Build it from the latest checkout plus your change.

Authorizations

x-api-key
string
header
required

Your platform key for buyer management, or a buyer key for everything else.

Headers

Idempotency-Key
string
required

Unique per logical operation, at most 255 characters. Replaying a key replays the same merchant request; a replay refused with 409 sends nothing.

Path Parameters

transactionId
string
required

Body

application/json

The body is of type object.

Response

checkout
object | null
required

Latest merchant checkout accepted as evidence: status, currency, totals, line items, fulfillment methods (destinations, and per group the delivery options with id, title, description, carrier, fulfillment times and totals, as the merchant sent them), messages and expiry. continueUrl is withheld until authorized

session
object
required

State, merchant origin, negotiated version, transport and derived completion path

governance
object
required

Decision (pending | waiting_approval | authorized | denied | closed), revision, reasons, whether it covers the latest evidence, and the blocker (total_unknown | unsupported_currency | merchant_change_unconfirmed | zero_total | too_many_line_items) when the latest evidence cannot be governed

payment
object | null
required

On a checkout funded by the tenant's card: the current revision's payment status (none | pending | authorized | failed | cancelled …), amount, card, typed denial (card_unavailable | no_card_route | verification_required | allowance_insufficient), and the placeholder card to submit once continue_url is released

nextAction
object
required

What the agent should do next: wait (governing | paying | merchant, with retryAfterSeconds), refresh (with retryAfterSeconds), update (the merchant messages an update can fix), revise (governance reasons), requires_action (a person must act: kind approval | security_code | allowance_verification | escalation, with url (null until there is a page for it), expiresAt, the card payment denial and the merchant messages), hand_off (continueUrl, and any messages a person must act on), blocked (unsupported_currency | zero_total | too_many_line_items | merchant_unrecoverable | no_continue_url | payment_ended), done, or closed (buyer_canceled or confirmation_expired reason and a message when the transaction confirmation ended)

version
string
required

Changes when anything an agent acts on changes; pass it as since to wait for a change