---
title: "Sending orders"
slug: "sending-orders-1166443"
abstract: "Overview of sending order data to Sitecore CDP."
---
# Sending orders

Sitecore CDP provides different options for sending orders to Sitecore CDP. The available options depend on, for example, the frequency of order submission, and whether orders are submitted in real-time, offline, or synchronously.

## Sending orders using a single event

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

To submit an order to Sitecore CDP in real time, you must send [an ORDER_CHECKOUT event](https://doc.sitecore.com/cdp/en/developers/api/stream-api/direct-http-requests-reference/sending-events-1166442/order_checkout-event-1166459.html "ORDER_CHECKOUT event").

> [!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-orders-1166443.html#UUID-e144dabf-4435-4dcb-9a67-d00afbf7087d_section-idm4519056393064033480657078262 "Sending orders using multiple events") instead of sending an ORDER\_CHECKOUT event.

You can use Sitecore CDP to submit orders in real time to Sitecore CDP. Use this option to submit orders using a single event if your organization's site is tagged to send all order-related data from the confirmation page. You can also use this option if your organization uses an order management system (OMS), or if your organization uses cookies and local storage to capture order details.

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

2.0 data model does not support this functionality.

:::
::::

## Sending orders using multiple events

You can use Sitecore CDP to assemble orders in real-time if the booking flow for your organization's site does not facilitate sending all order-related data from the confirmation page. For example, your site's confirmation page might not be tagged to capture and send contact information so you would need to send the `ADD_CONTACTS` event from a different web page.

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

To submit an order to Sitecore CDP in real time, you must send the following events in this sequence:

1. [ADD](https://doc.sitecore.com/cdp/en/developers/api/stream-api/direct-http-requests-reference/sending-events-1166442/add-event-1166451.html "ADD event")
2. [ADD_CONTACTS](https://doc.sitecore.com/cdp/en/developers/api/stream-api/direct-http-requests-reference/sending-events-1166442/add_contacts-event.html "ADD_CONTACTS event")
3. [CONFIRM](https://doc.sitecore.com/cdp/en/developers/api/stream-api/direct-http-requests-reference/sending-events-1166442/confirm-event-1166456.html "CONFIRM event")
4. [CHECKOUT](https://doc.sitecore.com/cdp/en/developers/api/stream-api/direct-http-requests-reference/sending-events-1166442/checkout-event-1166458.html "CHECKOUT event")

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

To submit an order to Sitecore CDP in real time, you must send the following events in this sequence:

1. [ADD](https://doc.sitecore.com/cdp/en/developers/api/stream-api/direct-http-requests-reference/sending-events-1166442/add-event-1166451.html "ADD event")
2. [ADD_CONSUMERS](https://doc.sitecore.com/cdp/en/developers/api/stream-api/direct-http-requests-reference/sending-events-1166442/add_consumers-event.html "ADD_CONSUMERS event")
3. [ADD_CONTACTS](https://doc.sitecore.com/cdp/en/developers/api/stream-api/direct-http-requests-reference/sending-events-1166442/add_contacts-event.html "ADD_CONTACTS event")
4. [CONFIRM](https://doc.sitecore.com/cdp/en/developers/api/stream-api/direct-http-requests-reference/sending-events-1166442/confirm-event-1166456.html "CONFIRM event")
5. [CHECKOUT](https://doc.sitecore.com/cdp/en/developers/api/stream-api/direct-http-requests-reference/sending-events-1166442/checkout-event-1166458.html "CHECKOUT event")

:::
::::

## Managing orders synchronously

You can manage orders synchronously using the [REST API](https://doc.sitecore.com/cdp/en/developers/api/rest-apis/legacy-rest-apis/order-rest-api-v2--legacy-.html "Order REST API v2 (legacy)") to do any of the following:

- Create, locate, retrieve, update and delete orders and order items
- Update orders that have the same `referenceId` values and have `orderedAt` values (purchase dates) within two days of another.
- Send additional data with orders using order data extensions
- Send additional data with order items using order item data extensions

## Offline order submission

> [!note]
> Offline order submission is performed using the [Batch API](https://doc.sitecore.com/cdp/en/developers/api/stream-api/direct-http-requests-reference/batch-api-offline-orders.html "Batch API Offline orders").

You can use offline order submission with the Batch API to do any of the following:

- Submit a large amount of historical orders from a data lake or data warehouse as a once-off, when your organization first integrates with Sitecore CDP.
- Submit offline orders from a third-party system, such as a call center.
- Submit orders for guests who block cookies or who use an anonymous browser.
- Submit complete orders if your organization submits partial orders using Stream API.
- Update orders submitted with Stream API on a daily basis.

You can [send offline order data to Sitecore CDP](https://doc.sitecore.com/cdp/en/developers/api/batch-api/batch-api-offline-orders/order-data-model.html "Order data model"). If your organization wants to capture more robust information with orders, you can optionally [use an order data extension](https://doc.sitecore.com/cdp/en/developers/api/batch-api/batch-api-offline-orders/send-additional-order-data.html "Send additional order data"). An order data extension is an array that enables you to specify whatever name/value pairs (attributes) your organization wants. You can insert one order data extension within the array.

Similarly, your organization can [send offline order item data to Sitecore CDP](https://doc.sitecore.com/cdp/en/developers/api/batch-api/batch-api-offline-orders/order-item-data-model.html "Order item data model"). To capture more robust information about a specific order item, you have the option of using an [order items data extension](https://doc.sitecore.com/cdp/en/developers/api/batch-api/batch-api-offline-orders/order-item-extension-data-model.html "Order item extension data model"). An order items data extension is an array that enables you to specify whatever name/value pairs (attributes) you want. You can insert one order items data extension within the array.

You can view order data extensions and order item data extensions in the guest profile and use them in decisioning and personalization.