checkoutComplete
Completes the checkout. As a result a new order is created. The mutation allows to create the unpaid order when setting orderSettings.allowUnpaidOrders
for given Channel
is set to true
. When orderSettings.allowUnpaidOrders
is set to false
, checkout can be completed only when attached Payment
/TransactionItem
s fully cover the checkout's total. When processing the checkout with Payment
, in case of required additional confirmation step like 3D secure, the confirmationNeeded
flag will be set to True and no order will be created until payment is confirmed with second call of this mutation.
Triggers the following webhook events:
- SHIPPING_LIST_METHODS_FOR_CHECKOUT (sync): Optionally triggered when cached external shipping methods are invalid.
- CHECKOUT_FILTER_SHIPPING_METHODS (sync): Optionally triggered when cached filtered shipping methods are invalid.
- CHECKOUT_CALCULATE_TAXES (sync): Optionally triggered when checkout prices are expired.
- ORDER_CREATED (async): Triggered when order is created.
- NOTIFY_USER (async): A notification for order placement.
- NOTIFY_USER (async): A staff notification for order placement.
- ORDER_UPDATED (async): Triggered when order received the update after placement.
- ORDER_PAID (async): Triggered when newly created order is paid.
- ORDER_FULLY_PAID (async): Triggered when newly created order is fully paid.
- ORDER_CONFIRMED (async): Optionally triggered when newly created order are automatically marked as confirmed.
checkoutComplete(
checkoutId: ID
id: ID
metadata: [MetadataInput!]
paymentData: JSONString
redirectUrl: String
storeSource: Boolean = false
token: UUID
): CheckoutComplete
Arguments
checkoutComplete.checkoutId
● ID
scalar miscellaneous
The ID of the checkout.
DEPRECATED: this field will be removed in Saleor 4.0. Use
id
instead.
checkoutComplete.id
● ID
scalar miscellaneous
The checkout's ID.
Added in Saleor 3.4
checkoutComplete.metadata
● [MetadataInput!]
list input miscellaneous
Fields required to update the checkout metadata.
Added in Saleor 3.8
checkoutComplete.paymentData
● JSONString
scalar miscellaneous
Client-side generated data required to finalize the payment.
checkoutComplete.redirectUrl
● String
scalar miscellaneous
URL of a view where users should be redirected to see the order details. URL in RFC 1808 format.
checkoutComplete.storeSource
● Boolean
scalar miscellaneous
Determines whether to store the payment source for future usage.
DEPRECATED: this field will be removed in Saleor 4.0. Use checkoutPaymentCreate for this action.
checkoutComplete.token
● UUID
scalar miscellaneous
Checkout token.
DEPRECATED: this field will be removed in Saleor 4.0. Use
id
instead.
Type
CheckoutComplete
object checkout
Completes the checkout. As a result a new order is created. The mutation allows to create the unpaid order when setting
orderSettings.allowUnpaidOrders
for givenChannel
is set totrue
. WhenorderSettings.allowUnpaidOrders
is set tofalse
, checkout can be completed only when attachedPayment
/TransactionItem
s fully cover the checkout's total. When processing the checkout withPayment
, in case of required additional confirmation step like 3D secure, theconfirmationNeeded
flag will be set to True and no order will be created until payment is confirmed with second call of this mutation.Triggers the following webhook events:
- SHIPPING_LIST_METHODS_FOR_CHECKOUT (sync): Optionally triggered when cached external shipping methods are invalid.
- CHECKOUT_FILTER_SHIPPING_METHODS (sync): Optionally triggered when cached filtered shipping methods are invalid.
- CHECKOUT_CALCULATE_TAXES (sync): Optionally triggered when checkout prices are expired.
- ORDER_CREATED (async): Triggered when order is created.
- NOTIFY_USER (async): A notification for order placement.
- NOTIFY_USER (async): A staff notification for order placement.
- ORDER_UPDATED (async): Triggered when order received the update after placement.
- ORDER_PAID (async): Triggered when newly created order is paid.
- ORDER_FULLY_PAID (async): Triggered when newly created order is fully paid.
- ORDER_CONFIRMED (async): Optionally triggered when newly created order are automatically marked as confirmed.