> Documentation index: [Saleor](/llms.txt) · [This section](/api-reference/checkout/llms.txt)
> Source: https://docs.saleor.io/api-reference/checkout/objects/checkout

# Checkout Object

Checkout object.

```graphql
type Checkout implements Node, ObjectWithMetadata {
  id: ID!
  privateMetadata: [MetadataItem!]!
  privateMetafield(
    key: String!
  ): String
  privateMetafields(
    keys: [String!]
  ): Metadata
  metadata: [MetadataItem!]!
  metafield(
    key: String!
  ): String
  metafields(
    keys: [String!]
  ): Metadata
  created: DateTime!
  updatedAt: DateTime!
  lastChange: DateTime! @deprecated
  user: User
  channel: Channel!
  billingAddress: Address
  shippingAddress: Address
  customerNote: String!
  note: String! @deprecated
  discount: Money
  discountName: String
  translatedDiscountName: String
  voucher: Voucher
  voucherCode: String
  availableShippingMethods: [ShippingMethod!]! @deprecated
  shippingMethods: [ShippingMethod!]!
  availableCollectionPoints: [Warehouse!]!
  availablePaymentGateways: [PaymentGateway!]! @deprecated
  email: String
  giftCards: [GiftCard!]!
  isShippingRequired: Boolean!
  quantity: Int!
  stockReservationExpires: DateTime
  lines: [CheckoutLine!]!
  shippingPrice: TaxedMoney!
  delivery: Delivery
  shippingMethod: ShippingMethod @deprecated
  deliveryMethod: DeliveryMethod @deprecated
  subtotalPrice: TaxedMoney!
  taxExemption: Boolean!
  token: UUID!
  totalPrice: TaxedMoney!
  totalBalance: Money!
  languageCode: LanguageCodeEnum!
  transactions: [TransactionItem!]
  displayGrossPrices: Boolean!
  authorizeStatus: CheckoutAuthorizeStatusEnum!
  chargeStatus: CheckoutChargeStatusEnum!
  storedPaymentMethods(
    amount: PositiveDecimal
  ): [StoredPaymentMethod!]
  problems: [CheckoutProblem!]
}
```

<a id="fields"></a>

### Fields

<a id="id"></a>

#### [`id`](#id) ● [`ID!`](/api-reference/miscellaneous/scalars/id.md)

The ID of the checkout.

<a id="private-metadata"></a>

#### [`privateMetadata`](#private-metadata) ● [`[MetadataItem!]!`](/api-reference/miscellaneous/objects/metadata-item.md)

List of private metadata items. Requires staff permissions to access.

<a id="private-metafield"></a>

#### [`privateMetafield`](#private-metafield) ● [`String`](/api-reference/miscellaneous/scalars/string.md)

A single key from private metadata. Requires staff permissions to access.

Tip: Use GraphQL aliases to fetch multiple keys.

<a id="checkout-private-metafield-key"></a>

##### [`key`](#checkout-private-metafield-key) ● [`String!`](/api-reference/miscellaneous/scalars/string.md)

<a id="private-metafields"></a>

#### [`privateMetafields`](#private-metafields) ● [`Metadata`](/api-reference/miscellaneous/scalars/metadata.md)

Private metadata. Requires staff permissions to access. Use `keys` to control which fields you want to include. The default is to include everything.

<a id="checkout-private-metafields-keys"></a>

##### [`keys`](#checkout-private-metafields-keys) ● [`[String!]`](/api-reference/miscellaneous/scalars/string.md)

<a id="metadata"></a>

#### [`metadata`](#metadata) ● [`[MetadataItem!]!`](/api-reference/miscellaneous/objects/metadata-item.md)

List of public metadata items. Can be accessed without permissions.

<a id="metafield"></a>

#### [`metafield`](#metafield) ● [`String`](/api-reference/miscellaneous/scalars/string.md)

A single key from public metadata.

Tip: Use GraphQL aliases to fetch multiple keys.

<a id="checkout-metafield-key"></a>

##### [`key`](#checkout-metafield-key) ● [`String!`](/api-reference/miscellaneous/scalars/string.md)

<a id="metafields"></a>

#### [`metafields`](#metafields) ● [`Metadata`](/api-reference/miscellaneous/scalars/metadata.md)

Public metadata. Use `keys` to control which fields you want to include. The default is to include everything.

<a id="checkout-metafields-keys"></a>

##### [`keys`](#checkout-metafields-keys) ● [`[String!]`](/api-reference/miscellaneous/scalars/string.md)

<a id="created"></a>

#### [`created`](#created) ● [`DateTime!`](/api-reference/miscellaneous/scalars/date-time.md)

The date and time when the checkout was created.

<a id="updated-at"></a>

#### [`updatedAt`](#updated-at) ● [`DateTime!`](/api-reference/miscellaneous/scalars/date-time.md)

Time of last modification of the given checkout.

<a id="user"></a>

#### [`user`](#user) ● [`User`](/api-reference/users/objects/user.md)

The user assigned to the checkout.

Requires one of the following permissions: MANAGE\_USERS HANDLE\_PAYMENTS OWNER

<a id="channel"></a>

#### [`channel`](#channel) ● [`Channel!`](/api-reference/channels/objects/channel.md)

The channel for which checkout was created.

<a id="billing-address"></a>

#### [`billingAddress`](#billing-address) ● [`Address`](/api-reference/users/objects/address.md)

The billing address of the checkout.

<a id="shipping-address"></a>

#### [`shippingAddress`](#shipping-address) ● [`Address`](/api-reference/users/objects/address.md)

The shipping address of the checkout.

<a id="customer-note"></a>

#### [`customerNote`](#customer-note) ● [`String!`](/api-reference/miscellaneous/scalars/string.md)

The customer note for the checkout.

Added in Saleor 3.21

<a id="discount"></a>

#### [`discount`](#discount) ● [`Money`](/api-reference/miscellaneous/objects/money.md)

The total discount applied to the checkout. Note: Only discount created via voucher are included in this field.

<a id="discount-name"></a>

#### [`discountName`](#discount-name) ● [`String`](/api-reference/miscellaneous/scalars/string.md)

The name of voucher assigned to the checkout.

<a id="translated-discount-name"></a>

#### [`translatedDiscountName`](#translated-discount-name) ● [`String`](/api-reference/miscellaneous/scalars/string.md)

Translation of the discountName field in the language set in Checkout.languageCode field.Note: this field is set automatically when Checkout.languageCode is defined; otherwise it's null

<a id="voucher"></a>

#### [`voucher`](#voucher) ● [`Voucher`](/api-reference/discounts/objects/voucher.md)

The voucher assigned to the checkout.

Added in Saleor 3.18

Requires the MANAGE\_DISCOUNTS permission.

<a id="voucher-code"></a>

#### [`voucherCode`](#voucher-code) ● [`String`](/api-reference/miscellaneous/scalars/string.md)

The code of voucher assigned to the checkout.

<a id="shipping-methods"></a>

#### [`shippingMethods`](#shipping-methods) ● [`[ShippingMethod!]!`](/api-reference/shipping/objects/shipping-method.md)

Shipping methods that can be used with this checkout.

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.

<a id="available-collection-points"></a>

#### [`availableCollectionPoints`](#available-collection-points) ● [`[Warehouse!]!`](/api-reference/products/objects/warehouse.md)

Collection points that can be used for this order.

<a id="email"></a>

#### [`email`](#email) ● [`String`](/api-reference/miscellaneous/scalars/string.md)

Email of a customer.

<a id="gift-cards"></a>

#### [`giftCards`](#gift-cards) ● [`[GiftCard!]!`](/api-reference/gift-cards/objects/gift-card.md)

List of gift cards associated with this checkout.

<a id="is-shipping-required"></a>

#### [`isShippingRequired`](#is-shipping-required) ● [`Boolean!`](/api-reference/miscellaneous/scalars/boolean.md)

Returns True, if checkout requires shipping.

<a id="quantity"></a>

#### [`quantity`](#quantity) ● [`Int!`](/api-reference/miscellaneous/scalars/int.md)

The number of items purchased.

<a id="stock-reservation-expires"></a>

#### [`stockReservationExpires`](#stock-reservation-expires) ● [`DateTime`](/api-reference/miscellaneous/scalars/date-time.md)

Date when oldest stock reservation for this checkout expires or null if no stock is reserved.

<a id="lines"></a>

#### [`lines`](#lines) ● [`[CheckoutLine!]!`](/api-reference/checkout/objects/checkout-line.md)

A list of checkout lines, each containing information about an item in the checkout.

<a id="shipping-price"></a>

#### [`shippingPrice`](#shipping-price) ● [`TaxedMoney!`](/api-reference/miscellaneous/objects/taxed-money.md)

The price of the shipping, with all the taxes included. Set to 0 when no delivery method is selected.

Triggers the following webhook events:

-   CHECKOUT\_CALCULATE\_TAXES (sync): Optionally triggered when checkout prices are expired.

<a id="delivery"></a>

#### [`delivery`](#delivery) ● [`Delivery`](/api-reference/miscellaneous/objects/delivery.md)

The delivery method selected for this checkout.

Added in Saleor 3.23

<a id="subtotal-price"></a>

#### [`subtotalPrice`](#subtotal-price) ● [`TaxedMoney!`](/api-reference/miscellaneous/objects/taxed-money.md)

The price of the checkout before shipping, with taxes included.

Triggers the following webhook events:

-   CHECKOUT\_CALCULATE\_TAXES (sync): Optionally triggered when checkout prices are expired.

<a id="tax-exemption"></a>

#### [`taxExemption`](#tax-exemption) ● [`Boolean!`](/api-reference/miscellaneous/scalars/boolean.md)

Returns True if checkout has to be exempt from taxes.

<a id="token"></a>

#### [`token`](#token) ● [`UUID!`](/api-reference/miscellaneous/scalars/uuid.md)

The checkout's token.

<a id="total-price"></a>

#### [`totalPrice`](#total-price) ● [`TaxedMoney!`](/api-reference/miscellaneous/objects/taxed-money.md)

The sum of the checkout line prices, with all the taxes,shipping costs, and discounts included.

Triggers the following webhook events:

-   CHECKOUT\_CALCULATE\_TAXES (sync): Optionally triggered when checkout prices are expired.

<a id="total-balance"></a>

#### [`totalBalance`](#total-balance) ● [`Money!`](/api-reference/miscellaneous/objects/money.md)

The difference between the paid and the checkout total amount.

Triggers the following webhook events:

-   CHECKOUT\_CALCULATE\_TAXES (sync): Optionally triggered when checkout prices are expired.

<a id="language-code"></a>

#### [`languageCode`](#language-code) ● [`LanguageCodeEnum!`](/api-reference/miscellaneous/enums/language-code-enum.md)

Checkout language code.

<a id="transactions"></a>

#### [`transactions`](#transactions) ● [`[TransactionItem!]`](/api-reference/payments/objects/transaction-item.md)

List of transactions for the checkout.

Requires one of the following permissions: MANAGE\_CHECKOUTS HANDLE\_PAYMENTS

<a id="display-gross-prices"></a>

#### [`displayGrossPrices`](#display-gross-prices) ● [`Boolean!`](/api-reference/miscellaneous/scalars/boolean.md)

Determines whether displayed prices should include taxes.

<a id="authorize-status"></a>

#### [`authorizeStatus`](#authorize-status) ● [`CheckoutAuthorizeStatusEnum!`](/api-reference/checkout/enums/checkout-authorize-status-enum.md)

The authorize status of the checkout.

Triggers the following webhook events:

-   CHECKOUT\_CALCULATE\_TAXES (sync): Optionally triggered when checkout prices are expired.

<a id="charge-status"></a>

#### [`chargeStatus`](#charge-status) ● [`CheckoutChargeStatusEnum!`](/api-reference/checkout/enums/checkout-charge-status-enum.md)

The charge status of the checkout.

Triggers the following webhook events:

-   CHECKOUT\_CALCULATE\_TAXES (sync): Optionally triggered when checkout prices are expired.

<a id="stored-payment-methods"></a>

#### [`storedPaymentMethods`](#stored-payment-methods) ● [`[StoredPaymentMethod!]`](/api-reference/payments/objects/stored-payment-method.md)

List of user's stored payment methods that can be used in this checkout session. It uses the channel that the checkout was created in. When `amount` is not provided, `checkout.total` will be used as a default value.

<a id="checkout-stored-payment-methods-amount"></a>

##### [`amount`](#checkout-stored-payment-methods-amount) ● [`PositiveDecimal`](/api-reference/miscellaneous/scalars/positive-decimal.md)

Amount that will be used to fetch stored payment methods.

<a id="problems"></a>

#### [`problems`](#problems) ● [`[CheckoutProblem!]`](/api-reference/miscellaneous/unions/checkout-problem.md)

List of problems with the checkout.

Show deprecatedHide deprecated

<a id="last-change"></a>

#### [`lastChange`](#last-change) ● [`DateTime!`](/api-reference/miscellaneous/scalars/date-time.md)

DEPRECATED

Use `updatedAt` instead.

<a id="note"></a>

#### [`note`](#note) ● [`String!`](/api-reference/miscellaneous/scalars/string.md)

DEPRECATED

Use `customerNote` instead.

The note for the checkout.

<a id="available-shipping-methods"></a>

#### [`availableShippingMethods`](#available-shipping-methods) ● [`[ShippingMethod!]!`](/api-reference/shipping/objects/shipping-method.md)

DEPRECATED

Use `shippingMethods` instead.

Shipping methods that can be used with this checkout.

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.

<a id="available-payment-gateways"></a>

#### [`availablePaymentGateways`](#available-payment-gateways) ● [`[PaymentGateway!]!`](/api-reference/payments/objects/payment-gateway.md)

DEPRECATED

The legacy Payments API is deprecated and will be removed. Use the Transactions API instead.

List of available payment gateways.

Triggers the following webhook events:

-   PAYMENT\_LIST\_GATEWAYS (sync): Fetch payment gateways available for checkout.

<a id="shipping-method"></a>

#### [`shippingMethod`](#shipping-method) ● [`ShippingMethod`](/api-reference/shipping/objects/shipping-method.md)

DEPRECATED

Use `delivery` instead.

The shipping method related with checkout.

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.

<a id="delivery-method"></a>

#### [`deliveryMethod`](#delivery-method) ● [`DeliveryMethod`](/api-reference/miscellaneous/unions/delivery-method.md)

DEPRECATED

Use `delivery` instead.

The delivery method selected for this checkout.

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.

<a id="interfaces"></a>

### Interfaces

<a id="node"></a>

#### [`Node`](/api-reference/miscellaneous/interfaces/node.md)

An object with an ID

<a id="objectwithmetadata"></a>

#### [`ObjectWithMetadata`](/api-reference/miscellaneous/interfaces/object-with-metadata.md)

<a id="returned-by"></a>

### Returned By

[`checkout`](/api-reference/checkout/queries/checkout.md) query

<a id="member-of"></a>

### Member Of

[`CheckoutAddPromoCode`](/api-reference/checkout/objects/checkout-add-promo-code.md) object  ● [`CheckoutBillingAddressUpdate`](/api-reference/checkout/objects/checkout-billing-address-update.md) object  ● [`CheckoutCountableEdge`](/api-reference/checkout/objects/checkout-countable-edge.md) object  ● [`CheckoutCreate`](/api-reference/checkout/objects/checkout-create.md) object  ● [`CheckoutCreated`](/api-reference/checkout/objects/checkout-created.md) object  ● [`CheckoutCreateFromOrder`](/api-reference/checkout/objects/checkout-create-from-order.md) object  ● [`CheckoutCustomerAttach`](/api-reference/checkout/objects/checkout-customer-attach.md) object  ● [`CheckoutCustomerDetach`](/api-reference/checkout/objects/checkout-customer-detach.md) object  ● [`CheckoutCustomerNoteUpdate`](/api-reference/checkout/objects/checkout-customer-note-update.md) object  ● [`CheckoutDeliveryMethodUpdate`](/api-reference/checkout/objects/checkout-delivery-method-update.md) object  ● [`CheckoutEmailUpdate`](/api-reference/checkout/objects/checkout-email-update.md) object  ● [`CheckoutFilterShippingMethods`](/api-reference/checkout/objects/checkout-filter-shipping-methods.md) object  ● [`CheckoutFullyAuthorized`](/api-reference/checkout/objects/checkout-fully-authorized.md) object  ● [`CheckoutFullyPaid`](/api-reference/checkout/objects/checkout-fully-paid.md) object  ● [`CheckoutLanguageCodeUpdate`](/api-reference/checkout/objects/checkout-language-code-update.md) object  ● [`CheckoutLineDelete`](/api-reference/checkout/objects/checkout-line-delete.md) object  ● [`CheckoutLinesAdd`](/api-reference/checkout/objects/checkout-lines-add.md) object  ● [`CheckoutLinesDelete`](/api-reference/checkout/objects/checkout-lines-delete.md) object  ● [`CheckoutLinesUpdate`](/api-reference/checkout/objects/checkout-lines-update.md) object  ● [`CheckoutMetadataUpdated`](/api-reference/checkout/objects/checkout-metadata-updated.md) object  ● [`CheckoutPaymentCreate`](/api-reference/checkout/objects/checkout-payment-create.md) object  ● [`CheckoutRemovePromoCode`](/api-reference/checkout/objects/checkout-remove-promo-code.md) object  ● [`CheckoutShippingAddressUpdate`](/api-reference/checkout/objects/checkout-shipping-address-update.md) object  ● [`CheckoutShippingMethodUpdate`](/api-reference/checkout/objects/checkout-shipping-method-update.md) object  ● [`CheckoutUpdated`](/api-reference/checkout/objects/checkout-updated.md) object  ● [`Payment`](/api-reference/payments/objects/payment.md) object  ● [`PaymentListGateways`](/api-reference/payments/objects/payment-list-gateways.md) object  ● [`ShippingListMethodsForCheckout`](/api-reference/checkout/objects/shipping-list-methods-for-checkout.md) object  ● [`TransactionItem`](/api-reference/payments/objects/transaction-item.md) object  ● [`User`](/api-reference/users/objects/user.md) object

<a id="implemented-by"></a>

### Implemented By

[`OrderOrCheckout`](/api-reference/miscellaneous/unions/order-or-checkout.md) union  ● [`TaxSourceObject`](/api-reference/miscellaneous/unions/tax-source-object.md) union
