# Order Import The Order Import API allows you to import existing Orders from a different system or a different Project. The [Create Order by Import](/urn?urn=ctp%3Aapi%3Aendpoint%3A%2F%7BprojectKey%7D%2Forders%2Fimport%3APOST) endpoint imports a single Order without the need of creating a Cart before creating the Order. No error is given when specified Prices or quantities of (Custom) Line Items have negative values. The Order total price needs to be set explicitly, it is not calculated from the sum of (Custom) Line Item totals. To import Orders in bulk, use the [Import Orders](/api/import-export/import-requests.md#for-orders) endpoint of the [Import API](/api/import-export/overview.md). The Import API, however, does not support beta features on the commercetools commerce APIs. ## Representations #### OrderImportDraft This type is equivalent to ImportOrderDraft in the [GraphQL API](/api/graphql/). [type definition](/api/projects/orders-import.md?urn=ctp:api:type:OrderImportDraft). #### LineItemImportDraft [type definition](/api/projects/orders-import.md?urn=ctp:api:type:LineItemImportDraft). ##### ProductVariantImportDraft [type definition](/api/projects/orders-import.md?urn=ctp:api:type:ProductVariantImportDraft). #### CustomLineItemImportDraft [type definition](/api/projects/orders-import.md?urn=ctp:api:type:CustomLineItemImportDraft). #### TaxedPriceDraft [type definition](/api/projects/orders-import.md?urn=ctp:api:type:TaxedPriceDraft). #### ShippingInfoImportDraft [type definition](/api/projects/orders-import.md?urn=ctp:api:type:ShippingInfoImportDraft). ##### DiscountedLineItemPriceDraft [type definition](/api/projects/orders-import.md?urn=ctp:api:type:DiscountedLineItemPriceDraft). ## Create Order by Import [endpoint definition](/api/projects/orders-import.md?urn=ctp:api:endpoint:/\{projectKey}/orders/import:POST). ## Filtering During Order Import, if the referenced Store defines languages, distribution channels, supply channels, or countries, they can be used to filter [languages](/api/projects/orders-import.md#by-language), [Prices](/api/projects/orders-import.md#by-price), or [Inventory Entry](/api/projects/orders-import.md#by-inventory-entry) respectively. ### by language Based on the languages configured for the referenced Store in the [OrderImportDraft](/api/projects/orders-import.md#orderimportdraft) `store` field, excess [LocalizedStrings](/api/types.md#localizedstring) can be filtered. If the [Store](/urn?urn=ctp%3Aapi%3Atype%3AStore) `languages` is set, then only localized values of languages defined in `languages` are kept. - If no matching language is found on a [LocalizedString](/api/types.md#localizedstring) for languages specified in the [Store](/urn?urn=ctp%3Aapi%3Atype%3AStore) `languages`, as a fallback, the next language specified in the [Project](/urn?urn=ctp%3Aapi%3Atype%3AProject) `languages` is used. This ensures that required fields do not remain empty in the [Order](/urn?urn=ctp%3Aapi%3Atype%3AOrder). - If an empty value is found on a [LocalizedString](/api/types.md#localizedstring) for languages specified in the [Store](/urn?urn=ctp%3Aapi%3Atype%3AStore) `languages`, the empty value will be imported for that language. ### by Price Based on the distribution channels configured for the referenced Store in the [OrderImportDraft](/api/projects/orders-import.md#orderimportdraft) `store` field, excess [Prices](/api/types.md#price) can be filtered. If the [Store](/urn?urn=ctp%3Aapi%3Atype%3AStore) `distributionChannels` is set, then only the Prices with distribution channels defined in `distributionChannels`, and Prices without distribution channels are kept. Likewise, if the [Store](/urn?urn=ctp%3Aapi%3Atype%3AStore) `countries` is set, then only the Prices with a country defined in `countries`, and Prices without a country are kept. ### by Inventory Entry Based on the inventory supply channels configured for the referenced Store in the [OrderImportDraft](/api/projects/orders-import.md#orderimportdraft) `store` field, excess [ProductVariantAvailabilities](/api/projects/products.md#productvariantavailability) can be filtered. If the [Store](/urn?urn=ctp%3Aapi%3Atype%3AStore) `supplyChannels` is set, then only Inventory Entries with supply channels defined in `supplyChannels`, and Inventory Entries without supply channels are kept. ## Related pages - [Area overview page with navigation](/api.md) - [Previous page: Order Edits](/api/projects/order-edits.md) - [Next page: Order Search](/api/projects/order-search.md)