---
title: "ORDER_CHECKOUT event"
slug: "order_checkout-event-1166459"
abstract: "Describes the JSON object for an ORDER_CHECKOUT event when using direct HTTP requests (Sitecore CDP Stream API)."
---
# ORDER_CHECKOUT event

::::tabs
:::tab{title="2.1"}

> [!important]
> To use the flight data model, [assemble orders using multiple events](https://doc.sitecore.com/cdp/en/developers/api/stream-api/direct-http-requests-reference/sending-events-1166442/sending-orders-1166443.html#UUID-e144dabf-4435-4dcb-9a67-d00afbf7087d_section-idm4519056393064033480657078262 "Sending orders using multiple events") instead of sending an ORDER\_CHECKOUT event.

Before you can send an ORDER_CHECKOUT event, the guest must be identified by sending an [IDENTITY](https://doc.sitecore.com/cdp/en/developers/api/stream-api/direct-http-requests-reference/sending-events-1166442/identity-event-1166449.html "IDENTITY event") event.

To send an ORDER_CHECKOUT event, use the following required attributes:

| Attribute | Type | Description | Example |
| --- | --- | --- | --- |
| `channel` | string (uppercase) | The touchpoint where the user interacts with your brand. | <ul><li>`"MOBILE_APP"`</li><li>`"MOBILE_WEB"`</li><li>`"WEB"`</li></ul> |
| `type` | string (uppercase) | The type of the event that takes place when the user interacts with your brand. | `"ORDER_CHECKOUT"` |
| `language` | string (uppercase [ISO 639-1](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes)) | The language the user is using your app in. | <ul><li>`"DE"`</li><li>`"EN"`</li><li>`"FR"`</li></ul> |
| `currency` | string (uppercase [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217#Active_codes)) | The alphabetic currency code of the currency the user is using in your app. | <ul><li>`"EUR"`</li><li>`"GBP"`</li><li>`"USD"`</li></ul> |
| `page` | string | The name of the webpage where the interaction with your brand takes place.<br><br>This is a custom value of your choice. | <ul><li>`"home"`</li><li>`"contact-us.html"`</li></ul> |
| `pos` | string | [The name of the point of sale](https://doc.sitecore.com/cdp/en/developers/api/stream-api/direct-http-requests-reference/sending-events-1166442/collect-required-details.html#UUID-60c4c930-3cfe-e0ad-3b98-69ceff75989f_section-idm1903325950166538) where the interaction with your brand takes place. | <ul><li>`"myretailsite/ireland"`</li><li>`"spinair.com/france"`</li></ul> |
| `browser_id` | string | The [browser ID](https://doc.sitecore.com/cdp/en/developers/api/stream-api/direct-http-requests-reference/sending-events-1166442/retrieve-the-browser-id.html). | `"a38b230c-11eb-4cf9-8d5d-274e9f344925​"` |
| `order` | object | The guest's purchase order. | N/A |

The `order` object:

| Attribute | Type | Description | Example | Required/optional |
| --- | --- | --- | --- | --- |
| `referenceId` | string | A unique ID generated by your organization to reference the order. | `"123456"` | Required |
| `orderedAt` | ISO 8601 Date/Time UTC | The date and time the order was made. | `"2026-01-01T16:`17:16`.000Z"` | Required |
| `status` | string (uppercase) | The status of the order. | <ul><li>`"PURCHASED"`</li><li>`"PAYMENT_PENDING"`</li></ul> | Required |
| `currencyCode` | string (uppercase [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217#Active_codes)) | The currency the guest used to complete a purchase. | <ul><li>`"EUR"`</li><li>`"GBP"`</li><li>`"USD"`</li></ul> | Required |
| `price` | number (currency) | The amount paid for the order. | `50, 30.6` | Required |
| `paymentType` | string (title case recommended) | The method of payment for the order. | <ul><li>`"Card"`</li><li>`"PayPal"`</li><li>`"voucher"`</li><li>`"other"`</li></ul> | Required |
| `cardType` | string (title case recommended) | The card type used to pay for the order. | <ul><li>`"Mastercard"`</li><li>`"Visa"`</li><li>`"Diners"`</li><li>`"American Express"`</li></ul> | Required if `paymentType` is `"Card"` |
| `extensions` | array of objects | A list of data extensions associated with the order. | N/A | Optional |
| `orderItems` | array of objects | Items in the order. | N/A | Optional |

The `order.extensions` array of objects. All attributes are optional.

| Attribute | Type | Description | Example |
| --- | --- | --- | --- |
| `name` | string enum | Set this to `"ext"` | `"ext"` |
| `key` | string enum | Set this to `"default"` | `"default"` |
| attribute | This is a custom attribute of your choice.<br><br>Supported types for the value:<br><br><ul><li>string</li><li>boolean</li><li>integer</li><li>float</li></ul> | One or many key-value pairs attributes for custom data. | `"refundable":true` |

The `order.orderItems` array of objects. All attributes are optional.

| Attribute | Type | Description | Example |
| --- | --- | --- | --- |
| `type` | string (uppercase) | The type of order item. The accepted values must be predefined for your organization in the schema.<br><br>The following values are not supported:<br><br><ul><li>`"FLIGHT"`</li><li>`"HOTEL"`</li><li>`"MORTGAGE"`</li><li>`"MORTGAGE_APPLICATION"`</li><li>`"LOAN_APPLICATION"`</li><li>`"PERSONAL_LOAN"`</li><li>`"RAIL"`</li></ul> | `"MOBILE_PHONE"` |
| `referenceId` | string | An ID generated by the client to reference the order item. | `"REF-123"` |
| `orderedAt` | string ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) | The date and time the order item was made. | `"2026-01-01T16:`17:16`.000Z"` |
| `status` | string enum | The status of the order item. | <ul><li>`"PURCHASED"`</li><li>`"PAYMENT_PENDING"`</li></ul> |
| `currencyCode` | string (uppercase [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217#Active_codes)) | The organization’s currency code for the order item. | <ul><li>`"EUR"`</li><li>`"GBP"`</li><li>`"USD"`</li></ul> |
| `price` | number (currency) | The organization’s price for the order item. | `50, 30.6, -45` |
| `name` | string (title case recommended) | The name of the order item. A free text value for the name of the order item. Max limit: 128 | `"Mobile phone of type x"` |
| `productId` | string | The ID of the product code. | `"MOBILE_PHONE_TYPE_X"` |
| `quantity` | number | The number or quantity of the order item. | `2` |
| `extensions` | array of objects | A list of data extensions associated with the order item. Only one data extension is supported. You can request this feature from your Sitecore representative. | N/A |

The `order.orderItems.extensions` array of objects. All attributes are optional.

| Attribute | Type | Description | Example |
| --- | --- | --- | --- |
| `name` | string enum | Set this to `"ext"` | `"ext"` |
| `key` | string enum | Set this to `"default"` | `"default"` |
| attribute | This is a custom attribute of your choice.<br><br>Supported types for the value:<br><br><ul><li>string</li><li>boolean</li><li>integer</li><li>float</li></ul> | One or many key-value pairs attributes for custom data. | `"phoneColor": "Gold"` |

Example 50. ORDER_CHECKOUT event object

```json
{
   "type": "ORDER_CHECKOUT",
   "channel": "WEB",
   "pos": "myretailsite/ireland",
   "browser_id": "a38b230c-11eb-4cf9-8d5d-274e9f344925​",
   "language": "EN",
   "currency": "EUR",
   "page":"checkout page",
   "order": {
      "referenceId": "123456",
      "orderedAt": "2026-08-23T16:`17:16`.000Z",
      "status": "PURCHASED",
      "currencyCode": "EUR",
      "price": 200,
      "paymentType": "Card",
      "cardType": "Visa",
      "extensions": [
         {
            "name": "ext",
            "key": "default",
            "refundable": true
         }
      ],
      "orderItems": [
         {
            "type": "MOBILE_PHONE",
            "referenceId": "REF-123",
            "orderedAt": "2026-08-23T16:`17:16`.000Z",
            "status": "PURCHASED",
            "currencyCode": "EUR",
            "price": 200,
            "name": "Mobile phone of type x",
            "productId": "MOBILE_PHONE_TYPE_X",
            "quantity": 1,
            "extensions": [
               {
                  "name": "ext",
                  "key": "default",
                  "phoneColor": "Gold",
                  "insurance": false
               }
            ]
         }
      ]
   }
}

```

:::
:::tab{title="2.0"}

2.0 data model does not support this functionality.

:::::::
