Skip to main content
Read status on the checkout to know where it is. When it ends, read result for succeeded and blocked, and reason for failed.

Statuses

succeeded, blocked, failed, and cancelled are final. A final checkout does not change again.

Succeeded

result.summary describes the purchase in words that you can show to the user. result.purchase.kind tells you what the checkout captured:

Blocked Codes

A blocked checkout has result.code for your logic and result.summary for the user. The checkout chooses the most specific code. Before it stops, it asks the user about an alternative when the merchant shows one, such as a different size or delivery option.

Failure Reasons

A failed checkout stopped because of a problem in the checkout itself, not at the merchant. input_expired is the only reason that depends on the user.
After reconciliation_required, the merchant can have the order. Check before you start the same purchase again, so that the user does not pay twice.

API Errors

See Also

How Agent Checkouts Works

The parts, the questions, and the statuses

Stream Updates

Watch a checkout and recover after disconnects

Get Agent Checkout

The complete checkout schema