Checkout types
The types the checkout domain defines, with the fields other domains add to them.
Objects
OrderCancelResponse
Response for closing an unpaid order
| Field | Type | Description |
|---|---|---|
order | Order | The order, now cancelled |
orderErrors | [OrderCancelError!] | Error details if the order could not be closed |
OrderError
Implements Error
Error that occurred placing, reopening or closing an order
| Field | Type | Description |
|---|---|---|
code | OrderErrorCodeType! | Error code identifying the type of error |
message | String! | Human readable message describing the failure. Not intended for end users. |
OrderPlaceResponse
Fields added by Order approval
Response for placing an order
| Field | Type | Description |
|---|---|---|
order | Order | The order that now exists |
payable | Boolean! | Whether a payment may be started for this order right now. Answered by the same rule the payment itself applies, so a true here is not contradicted by the next call. |
orderErrors | [OrderPlaceError!] | Error details if the order could not be placed |
approval | OrderApproval | Why an order that was just placed cannot be paid yet, when an approval flow is the reason. Read authoritatively rather than through the caller, so it is present even for someone who may not query the flow off the order itself. Absent where the order needed no approval, or where it did and has been decided. |
OrderReviseResponse
Response for reopening an unpaid order
| Field | Type | Description |
|---|---|---|
cart | Cart | A new cart holding the same contents as the order that was closed |
orderErrors | [OrderReviseError!] | Error details if the order could not be reopened |
QuoteNotOrderableError
B2B onlyImplements Error
The quote cannot be turned into an order. Only a PENDING quote inside its validity window is orderable, so the blocking status is the whole story and a storefront can hide the affordance rather than offer an action that will fail.
| Field | Type | Description |
|---|---|---|
messageB2B | String! | Developer/debug description of the failure. Not localized and never shown to end users. |
statusB2B | QuoteStatusType! | The status the quote is in, which is what blocks the order |
Enums
OrderErrorCodeType
Error codes for placing, reopening and closing an order
TARGET_NOT_FOUND | The cart or order does not exist, or the caller may not reach it |
ORDER_CREATION_FAILED | Failed to create the order |
ORDER_ALREADY_PAID | The order is already paid for, so there is nothing left to reopen or close |
ORDER_NOT_REVISABLE | The order cannot be reopened. Reopening is for an order whose payment is still open or has failed; anything else is not the buyer's to edit. |
ORDER_NOT_CANCELLABLE | The order cannot be closed. Closing waits for the provider's final word, so a payment still in flight is refused rather than abandoned. |
BELOW_MINIMUM_ORDER_VALUE | The cart is below its business unit's minimum order value: see Cart.minimumOrder. A quote is not held to it. |
OrderPlaceSubjectType
What is being turned into an order
QUOTE | A quote the merchant issued, turned into an order |
CART | The buyer's cart, identified by its id |
Unions
OrderCancelError
One of OrderError or ValidationError.
OrderPlaceError
One of OrderError, ValidationError or QuoteNotOrderableError.
OrderReviseError
One of OrderError or ValidationError.

