An Order can be created from a Cart, usually after a checkout process has been completed.
Representations
Representations are JSON objects submitted or received as payload to API requests or responses.
Order
id ​String​ | Unique identifier of the Order. |
version ​Int​ | Current version of the Order. |
orderNumber ​String​ | User-defined identifier of the Order that is unique across a Project. |
purchaseOrderNumber ​String​ | User-defined identifier of a purchase Order. It is typically set by the Buyer and can be used with Quotes to track the purchase Order during the quote and order flow. |
customerId ​String​ |
|
customerEmail ​String​ | Email address of the Customer that the Order belongs to. |
customerGroup ​ | Reference to the Customer Group of the Customer that the Order belongs to. Used for Line Item price selection. |
anonymousId ​String​ | Anonymous session associated with the Order. |
businessUnit ​ | Reference to a Business Unit the Order belongs to. |
store ​ | Reference to a Store the Order belongs to. |
lineItems ​Array of LineItem​ | Line Items that are part of the Order. |
customLineItems ​Array of CustomLineItem​ | Custom Line Items that are part of the Order. |
totalPrice ​ | Sum of the Taxes are included if TaxRate |
taxedPrice ​TaxedPrice​ |
If a discount applies on |
taxedShippingPrice ​TaxedPrice​ | Sum of the |
discountOnTotalPrice ​ | Discounts that apply on the total price of the Order. |
taxMode ​TaxMode​ | Indicates how Tax Rates are set. Default:Platform ​ |
taxRoundingMode ​RoundingMode​ | Indicates how monetary values are rounded when calculating taxes for HalfEven ​ |
taxCalculationMode ​ | Indicates how taxes are calculated when calculating taxes for LineItemLevel ​ |
inventoryMode ​ | Indicates how stock quantities are tracked for Line Items in the Order. Default:None ​ |
billingAddress ​Address​ | Billing address associated with the Order. |
shippingAddress ​Address​ | Shipping address associated with the Order. Determines eligible ShippingMethod rates and Tax Rates of Line Items. |
shippingMode ​ShippingMode​ | Indicates whether there can be one or multiple Shipping Methods. Default:Single ​ |
shippingKey ​String​ |
|
shippingInfo ​ShippingInfo​ | Shipping-related information for |
shippingRateInput ​ | Input used to select a ShippingRatePriceTier.
The data type of this field depends on the
|
shippingCustomFields ​CustomFields​ | Custom Fields of the Shipping Method for |
shipping ​Array of Shipping​ | Shipping-related information for |
itemShippingAddresses ​Array of Address​ | Additional shipping addresses of the Order as specified by LineItems using the |
discountCodes ​Array of DiscountCodeInfo​ | Discount Codes added to the Order.
An Order that has |
directDiscounts ​Array of DirectDiscount​ | Direct Discounts added to the Order.
An Order that has |
refusedGifts ​Array of CartDiscountReference​ | Automatically set when a Line Item with |
paymentInfo ​PaymentInfo​ | Payment information related to the Order. |
country ​CountryCode​ | Used for Line Item price selection. Pattern:^[A-Z]{2}$ ​ |
locale ​Locale​ | Languages of the Order. Can only contain languages supported by the Project. |
origin ​CartOrigin​ | Indicates the origin of the Cart from which the Order was created. Default:Customer ​ |
cart ​ | Reference to the Cart for an Order created from Cart.
The referenced Cart will have the |
quote ​ | Reference to the Quote for an Order created from Quote. |
orderState ​OrderState​ | Current status of the Order. |
shipmentState ​ | Shipment status of the Order. |
paymentState ​PaymentState​ | Payment status of the Order. |
state ​ | State of the Order. This reference can point to a State in a custom workflow. |
syncInfo ​Array of SyncInfo​ | Contains synchronization activity information of the Order (like export or import). Can only be set with Update SyncInfo update action. |
returnInfo ​Array of ReturnInfo​ | Contains information regarding the returns associated with the Order. |
lastMessageSequenceNumber ​Int​ | Internal-only field. (markDeprecated)​ |
completedAt ​DateTime​ | User-defined date and time (UTC) of the Order. Present only on an Order created using Order Import. |
custom ​CustomFields​ | Custom Fields of the Order. |
createdAt ​DateTime​ | Date and time (UTC) the Order was initially created. |
createdBy ​BETACreatedBy​ | IDs and references that created the Order. |
lastModifiedAt ​DateTime​ | Date and time (UTC) the Order was last updated. |
lastModifiedBy ​BETA | IDs and references that last modified the Order. |
OrderFromCartDraft
id ​String​ |
|
version ​Int​ |
|
cart ​ | ResourceIdentifier to the Cart from which the Order is created. This field is required, but is marked as optional for backwards compatibility reasons. |
orderNumber ​String​ | User-defined identifier for the Order that is unique across a Project. Once set, the value cannot be changed. |
purchaseOrderNumber ​String​ | User-defined identifier for a purchase Order. It is typically set by the Buyer and can be used with Quotes to track the purchase Order during the quote and order flow. |
paymentState ​PaymentState​ | Payment status for the Order. |
shipmentState ​ | Shipment status for the Order. |
orderState ​OrderState​ | Current status for the Order. Default:Open ​ |
state ​ | State for the Order in a custom workflow. |
custom ​ | Custom Fields for the Order. The Custom Fields' type must match the Custom Fields' type in the referenced Cart. |
OrderFromQuoteDraft
version ​Int​ |
|
quote ​ | ResourceIdentifier to the Quote from which the Order is created. The Quote must have the |
quoteStateToAccepted ​Boolean​ | If |
orderNumber ​String​ | User-defined identifier for the Order that is unique across a Project. Once set, the value cannot be changed. |
paymentState ​PaymentState​ | Payment status for the Order. |
shipmentState ​ | Shipment status for the Order. |
orderState ​OrderState​ | Current status for the Order. Default:Open ​ |
state ​ | State of the Order in a custom workflow. |
OrderPagedQueryResponse
PagedQueryResult with results
containing an array of Order.
limit ​Int​ | Number of results requested. Default:20 ​Minimum: 0 ​Maximum: 500 ​ |
offset ​Int​ | Number of elements skipped. Default:0 ​Maximum: 10000 ​ |
count ​Int​ | Actual number of results returned. |
total ​Int​ | Total number of results matching the query.
This number is an estimation that is not strongly consistent.
This field is returned by default.
For improved performance, calculating this field can be deactivated by using the query parameter |
results ​Array of Order​ | Orders matching the query. |
OrderReference
id ​String​ | Unique identifier of the referenced Order. |
typeId ​ | order Type of referenced resource. |
obj ​Order​ | Contains the representation of the expanded Order. Only present in responses to requests with Reference Expansion for Orders. |
OrderState
Indicates the state of the Order.
Open
The default state of a new Order.
Confirmed
Indicates that the Order is accepted and being processed.
Complete
Indicates that the Order is fulfilled.
Cancelled
Indicates that the Order is canceled.
ShipmentState
Indicates the shipment status of the Order.
Shipped
Indicates that the Order is shipped.
Delivered
Indicates that the Order is delivered.
Ready
Indicates that the Order is ready to be shipped.
Pending
Indicates that the shipment of the Order is pending.
Delayed
Indicates that the shipment of the Order is delayed.
Partial
Indicates that items in the Order are shipped in more than one shipment.
Backorder
Indicates that items in the Order are not in stock and will be delivered once the items are restocked.
Canceled
Indicates that the shipment of the Order is canceled.
PaymentState
Indicates the payment status for the Order.
BalanceDue
Indicates that payment balance is due for the Order.
Failed
Indicates that payment for the Order has failed.
Pending
Indicates that payment for the Order is pending.
CreditOwed
Indicates that payment for the Order is made on a credit basis.
Paid
Indicates that the Order is paid for.
PaymentInfo
payments ​Array of PaymentReference​ | References to the Payments associated with the Order. |
SyncInfo
Contains synchronization activity information of the Order (like export or import).
externalId ​String​ | Identifier of an external order instance, file, or other resource. |
channel ​ | Connection to a synchronization destination. |
syncedAt ​DateTime​ | Date and time (UTC) the information was synced. |
Delivery
Contains information on how items are shipped to Customers, for example, a delivery note.
id ​String​ | Unique identifier of the Delivery. |
key ​String​ | User-defined unique identifier of the Delivery. MinLength:2 ​MaxLength: 256 ​Pattern: ^[a-zA-Z0-9_-] ​ |
items ​Array of DeliveryItem​ | Line Items or Custom Line Items that are delivered. |
parcels ​Array of Parcel​ | Information regarding the appearance, content, and shipment of a Parcel. |
address ​Address​ | Address to which Parcels are delivered. |
custom ​CustomFields​ | Custom Fields of the Delivery. |
createdAt ​DateTime​ | Date and time (UTC) the Delivery was created. |
DeliveryDraft
key ​String​ | User-defined unique identifier of the Delivery. MinLength:2 ​MaxLength: 256 ​Pattern: ^[a-zA-Z0-9_-] ​ |
items ​Array of DeliveryItem​ | Line Items or Custom Line Items to deliver. It can also be specified individually for each Parcel. |
parcels ​Array of ParcelDraft​ | Information regarding the appearance, content, and shipment of a parcel. |
address ​AddressDraft​ | Address to which the Parcels are delivered. |
custom ​ | Custom Fields for the Delivery. |
DeliveryItem
id ​String​ |
|
quantity ​Int​ | Number of Line Items or Custom Line Items delivered. |
Parcel
Information regarding the appearance, content, and shipment of a Parcel.
id ​String​ | Unique identifier of the Parcel. |
key ​String​ | User-defined unique identifier of the Parcel. MinLength:2 ​MaxLength: 256 ​Pattern: ^[a-zA-Z0-9_-] ​ |
measurements ​ | Information about the dimensions of the Parcel. |
trackingData ​TrackingData​ | Shipment tracking information of the Parcel. |
items ​Array of DeliveryItem​ | Line Items or Custom Line Items delivered in this Parcel. |
custom ​CustomFields​ | Custom Fields of the Parcel. |
createdAt ​DateTime​ | Date and time (UTC) the Parcel was created. |
ParcelDraft
key ​String​ | User-defined unique identifier of the Parcel. MinLength:2 ​MaxLength: 256 ​Pattern: ^[a-zA-Z0-9_-] ​ |
measurements ​ | Information about the dimensions for the Parcel. |
trackingData ​TrackingData​ | Shipment tracking information for the Parcel. |
items ​Array of DeliveryItem​ | Line Items or Custom Line Items delivered in this Parcel. |
custom ​ | Custom Fields for the Parcel. |
ParcelMeasurements
heightInMillimeter ​Int​ | Height of the Parcel. |
lengthInMillimeter ​Int​ | Length of the Parcel. |
widthInMillimeter ​Int​ | Width of the Parcel. |
weightInGram ​Int​ | Weight of the Parcel. |
TrackingData
Information that helps track a Parcel.
trackingId ​String​ | Identifier to track the Parcel. |
carrier ​String​ | Name of the carrier that delivers the Parcel. |
provider ​String​ | Name of the provider that serves as facade to several carriers. |
providerTransaction ​String​ | Transaction identifier with the |
isReturn ​Boolean​ |
|
Returns
The following types contain representations of returns, including what items are being returned and their current payment and shipment states.
ReturnInfo
Stores information about returns connected to an Order.
items ​Array of ReturnItem​ | Information on the Line Items or Custom Line Items returned. |
returnTrackingId ​String​ | User-defined identifier to track the return. |
returnDate ​DateTime​ | Date and time (UTC) the return is initiated. |
ReturnInfoDraft
items ​Array of ReturnItemDraft​ | Information on the Line Items or Custom Line Items returned. |
returnTrackingId ​String​ | User-defined identifier for tracking the return. |
returnDate ​DateTime​ | Date and time (UTC) the return is initiated. |
ReturnItem
Information on the returned Line Items or Custom Line Items; see LineItemReturnItem or CustomLineItemReturnItem respectively.
LineItemReturnItem
id ​String​ | Unique identifier of the Return Item. |
key ​String​ | User-defined unique identifier of the LineItemReturnItem. MinLength:2 ​MaxLength: 256 ​Pattern: ^[a-zA-Z0-9_-] ​ |
quantity ​Int​ | Number of Line Items returned. |
type ​String​ | "LineItemReturnItem" |
comment ​String​ | User-defined description for the return. |
shipmentState ​ | Shipment status of the Return Item. |
paymentState ​ | Payment status of the Return Item:
|
lineItemId ​String​ |
|
custom ​CustomFields​ | Custom Fields of the Return Item. |
createdAt ​DateTime​ | Date and time (UTC) the Return Item was intitially created. |
lastModifiedAt ​DateTime​ | Date and time (UTC) the Return Item was last updated. |
CustomLineItemReturnItem
id ​String​ | Unique identifier of the Return Item. |
key ​String​ | User-defined unique identifier of the CustomLineItemReturnItem. MinLength:2 ​MaxLength: 256 ​Pattern: ^[a-zA-Z0-9_-] ​ |
quantity ​Int​ | Number of Custom Line Items returned. |
type ​String​ | "CustomLineItemReturnItem" |
comment ​String​ | User-defined description for the return. |
shipmentState ​ | Shipment status of the Return Item. |
paymentState ​ | Payment status of the Return Item:
|
customLineItemId ​String​ |
|
custom ​CustomFields​ | Custom Fields of the Return Item. |
createdAt ​DateTime​ | Date and time (UTC) the Return Item was intitially created. |
lastModifiedAt ​DateTime​ | Date and time (UTC) the Return Item was last updated. |
ReturnItemDraft
key ​String​ | User-defined unique identifier of the Return Item. MinLength:2 ​MaxLength: 256 ​Pattern: ^[a-zA-Z0-9_-] ​ |
quantity ​Int​ | Number of Line Items or Custom Line Items to return. |
lineItemId ​String​ |
Required if Line Items are returned, to create a LineItemReturnItem. |
customLineItemId ​String​ |
Required if Custom Line Items are returned, to create a CustomLineItemReturnItem. |
comment ​String​ | User-defined description for the return. |
shipmentState ​ | Shipment status of the item to be returned.
Can either be |
custom ​ | Custom Fields for the Return Item. |
ReturnShipmentState
Advised
Initial state for Return Items that are non-refundable.
Return Items of this state will have the
NonRefundable
ReturnPaymentState.Returned
Initial state for Return Items that are refundable.
Return Items of this state will have the
Initial
ReturnPaymentState.BackInStock
A state indicating that the Return Items are restocked in inventory.
Unusable
A state indicating that the Return Items are not in good condition and cannot be restocked.
Allowed state transitions:
ReturnPaymentState
NonRefundable
Initial state for Return Items for which payment cannot be refunded.
Return Items have the
Advised
ReturnShipmentState.Initial
Initial state for Return Items for which payment can be refunded.
Return Items have the
Returned
ReturnShipmentState.Refunded
The payment for the Return Items is refunded.
NotRefunded
The payment for the Return Items is not refunded.
Allowed state transitions:
Get Order
Get Order by ID
view_orders:{projectKey}
region String ​ | Region in which the Project is hosted. |
projectKey String ​ |
|
id String ​ |
|
expand | The parameter can be passed multiple times. |
application/json
curl --get https://api.{region}.commercetools.com/{projectKey}/orders/{id} -i \
--header "Authorization: Bearer ${BEARER_TOKEN}"
{
"type": "Order",
"id": "92f5a867-bf19-47ab-982c-6720a03a3921",
"version": 1,
"createdAt": "2017-01-04T19:54:49.797Z",
"lastModifiedAt": "2017-01-04T19:54:49.797Z",
"totalPrice": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"orderState": "Open",
"syncInfo": [],
"returnInfo": [],
"refusedGifts": [],
"taxMode": "External",
"inventoryMode": "None",
"taxRoundingMode": "HalfEven",
"customerId": "7297c742-d8b0-484b-aadc-1d0ba6769dc9",
"businessUnit": {
"typeId": "business-unit",
"key": "ba-france-123"
},
"lineItems": [
{
"id": "7297c742-d8b0-484b-aadc-1d0ba1869dc9",
"productId": "c5c75935-595a-4cc3-a80e-24e9a9c55094",
"name": {
"en": "MyProduct"
},
"productType": {
"typeId": "product-type",
"id": "a5c7e173-9754-4f02-9b18-a600896ae0e1",
"version": 21
},
"productSlug": {
"de": "neues-produkt-slug-1234678",
"en": "new-product-slug-12345678"
},
"variant": {
"id": 1,
"sku": "some-sku-123",
"prices": [
{
"value": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"id": "6d36dc85-6131-495d-9f20-d00f411d4124"
}
],
"images": [],
"attributes": [
{
"name": "text",
"value": "attribute-value"
},
{
"name": "enum",
"value": {
"key": "test",
"label": "test"
}
}
],
"assets": []
},
"price": {
"id": "6d36dc85-6131-495d-9f20-d00f411d4124",
"value": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
}
},
"quantity": 1,
"discountedPricePerQuantity": [],
"taxRate": {
"name": "Bla",
"amount": 0.1,
"includedInPrice": false,
"country": "DE",
"subRates": []
},
"state": [
{
"quantity": 1,
"state": {
"typeId": "state",
"id": "7c2e2694-aefe-43d7-888e-6a99514caaca"
}
}
],
"priceMode": "Platform",
"lineItemMode": "Standard",
"totalPrice": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"taxedPrice": {
"totalNet": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"totalGross": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1100
},
"taxPortions": [
{
"rate": 0.1,
"amount": {
"type": "centPrecision",
"currencyCode": "EUR",
"centAmount": 634,
"fractionDigits": 2
},
"name": "Bla"
}
]
},
"perMethodTaxRate": [],
"taxedPricePortions": []
}
],
"customLineItems": [],
"discountCodes": [],
"origin": "Customer",
"shipping": [],
"shippingMode": "Single"
}
Get Order by OrderNumber
view_orders:{projectKey}
region String ​ | Region in which the Project is hosted. |
projectKey String ​ |
|
orderNumber String ​ |
|
expand | The parameter can be passed multiple times. |
application/json
curl --get https://api.{region}.commercetools.com/{projectKey}/orders/order-number={orderNumber} -i \
--header "Authorization: Bearer ${BEARER_TOKEN}"
{
"type": "Order",
"id": "92f5a867-bf19-47ab-982c-6720a03a3921",
"version": 1,
"createdAt": "2017-01-04T19:54:49.797Z",
"lastModifiedAt": "2017-01-04T19:54:49.797Z",
"totalPrice": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"orderState": "Open",
"syncInfo": [],
"returnInfo": [],
"refusedGifts": [],
"taxMode": "External",
"inventoryMode": "None",
"taxRoundingMode": "HalfEven",
"customerId": "7297c742-d8b0-484b-aadc-1d0ba6769dc9",
"businessUnit": {
"typeId": "business-unit",
"key": "ba-france-123"
},
"lineItems": [
{
"id": "7297c742-d8b0-484b-aadc-1d0ba1869dc9",
"productId": "c5c75935-595a-4cc3-a80e-24e9a9c55094",
"name": {
"en": "MyProduct"
},
"productType": {
"typeId": "product-type",
"id": "a5c7e173-9754-4f02-9b18-a600896ae0e1",
"version": 21
},
"productSlug": {
"de": "neues-produkt-slug-1234678",
"en": "new-product-slug-12345678"
},
"variant": {
"id": 1,
"sku": "some-sku-123",
"prices": [
{
"value": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"id": "6d36dc85-6131-495d-9f20-d00f411d4124"
}
],
"images": [],
"attributes": [
{
"name": "text",
"value": "attribute-value"
},
{
"name": "enum",
"value": {
"key": "test",
"label": "test"
}
}
],
"assets": []
},
"price": {
"id": "6d36dc85-6131-495d-9f20-d00f411d4124",
"value": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
}
},
"quantity": 1,
"discountedPricePerQuantity": [],
"taxRate": {
"name": "Bla",
"amount": 0.1,
"includedInPrice": false,
"country": "DE",
"subRates": []
},
"state": [
{
"quantity": 1,
"state": {
"typeId": "state",
"id": "7c2e2694-aefe-43d7-888e-6a99514caaca"
}
}
],
"priceMode": "Platform",
"lineItemMode": "Standard",
"totalPrice": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"taxedPrice": {
"totalNet": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"totalGross": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1100
},
"taxPortions": [
{
"rate": 0.1,
"amount": {
"type": "centPrecision",
"currencyCode": "EUR",
"centAmount": 634,
"fractionDigits": 2
},
"name": "Bla"
}
]
},
"perMethodTaxRate": [],
"taxedPricePortions": []
}
],
"customLineItems": [],
"discountCodes": [],
"origin": "Customer",
"shipping": [],
"shippingMode": "Single"
}
Get Order in Store
Get Order in Store by ID
If the Order exists in the Project but does not have a store
specified, or the store
field references a different Store, this method returns a ResourceNotFound error.
view_orders:{projectKey}
view_orders:{projectKey}:{storeKey}
region String ​ | Region in which the Project is hosted. |
projectKey String ​ |
|
storeKey String ​ |
|
id String ​ |
|
expand | The parameter can be passed multiple times. |
application/json
curl --get https://api.{region}.commercetools.com/{projectKey}/in-store/key={storeKey}/orders/{id} -i \
--header "Authorization: Bearer ${BEARER_TOKEN}"
{
"type": "Order",
"id": "92f5a867-bf19-47ab-982c-6720a03a3921",
"version": 1,
"createdAt": "2017-01-04T19:54:49.797Z",
"lastModifiedAt": "2017-01-04T19:54:49.797Z",
"totalPrice": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"orderState": "Open",
"syncInfo": [],
"returnInfo": [],
"refusedGifts": [],
"taxMode": "External",
"inventoryMode": "None",
"taxRoundingMode": "HalfEven",
"customerId": "7297c742-d8b0-484b-aadc-1d0ba6769dc9",
"businessUnit": {
"typeId": "business-unit",
"key": "ba-france-123"
},
"lineItems": [
{
"id": "7297c742-d8b0-484b-aadc-1d0ba1869dc9",
"productId": "c5c75935-595a-4cc3-a80e-24e9a9c55094",
"name": {
"en": "MyProduct"
},
"productType": {
"typeId": "product-type",
"id": "a5c7e173-9754-4f02-9b18-a600896ae0e1",
"version": 21
},
"productSlug": {
"de": "neues-produkt-slug-1234678",
"en": "new-product-slug-12345678"
},
"variant": {
"id": 1,
"sku": "some-sku-123",
"prices": [
{
"value": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"id": "6d36dc85-6131-495d-9f20-d00f411d4124"
}
],
"images": [],
"attributes": [
{
"name": "text",
"value": "attribute-value"
},
{
"name": "enum",
"value": {
"key": "test",
"label": "test"
}
}
],
"assets": []
},
"price": {
"id": "6d36dc85-6131-495d-9f20-d00f411d4124",
"value": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
}
},
"quantity": 1,
"discountedPricePerQuantity": [],
"taxRate": {
"name": "Bla",
"amount": 0.1,
"includedInPrice": false,
"country": "DE",
"subRates": []
},
"state": [
{
"quantity": 1,
"state": {
"typeId": "state",
"id": "7c2e2694-aefe-43d7-888e-6a99514caaca"
}
}
],
"priceMode": "Platform",
"lineItemMode": "Standard",
"totalPrice": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"taxedPrice": {
"totalNet": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"totalGross": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1100
},
"taxPortions": [
{
"rate": 0.1,
"amount": {
"type": "centPrecision",
"currencyCode": "EUR",
"centAmount": 634,
"fractionDigits": 2
},
"name": "Bla"
}
]
},
"perMethodTaxRate": [],
"taxedPricePortions": []
}
],
"customLineItems": [],
"discountCodes": [],
"origin": "Customer",
"shipping": [],
"shippingMode": "Single"
}
Get Order in Store by OrderNumber
If the Order exists in the Project but does not have a store
specified, or the store
field references a different Store, this method returns a ResourceNotFound error.
view_orders:{projectKey}
view_orders:{projectKey}:{storeKey}
region String ​ | Region in which the Project is hosted. |
projectKey String ​ |
|
storeKey String ​ |
|
orderNumber String ​ |
|
expand | The parameter can be passed multiple times. |
application/json
curl --get https://api.{region}.commercetools.com/{projectKey}/in-store/key={storeKey}/orders/order-number={orderNumber} -i \
--header "Authorization: Bearer ${BEARER_TOKEN}"
{
"type": "Order",
"id": "92f5a867-bf19-47ab-982c-6720a03a3921",
"version": 1,
"createdAt": "2017-01-04T19:54:49.797Z",
"lastModifiedAt": "2017-01-04T19:54:49.797Z",
"totalPrice": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"orderState": "Open",
"syncInfo": [],
"returnInfo": [],
"refusedGifts": [],
"taxMode": "External",
"inventoryMode": "None",
"taxRoundingMode": "HalfEven",
"customerId": "7297c742-d8b0-484b-aadc-1d0ba6769dc9",
"businessUnit": {
"typeId": "business-unit",
"key": "ba-france-123"
},
"lineItems": [
{
"id": "7297c742-d8b0-484b-aadc-1d0ba1869dc9",
"productId": "c5c75935-595a-4cc3-a80e-24e9a9c55094",
"name": {
"en": "MyProduct"
},
"productType": {
"typeId": "product-type",
"id": "a5c7e173-9754-4f02-9b18-a600896ae0e1",
"version": 21
},
"productSlug": {
"de": "neues-produkt-slug-1234678",
"en": "new-product-slug-12345678"
},
"variant": {
"id": 1,
"sku": "some-sku-123",
"prices": [
{
"value": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"id": "6d36dc85-6131-495d-9f20-d00f411d4124"
}
],
"images": [],
"attributes": [
{
"name": "text",
"value": "attribute-value"
},
{
"name": "enum",
"value": {
"key": "test",
"label": "test"
}
}
],
"assets": []
},
"price": {
"id": "6d36dc85-6131-495d-9f20-d00f411d4124",
"value": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
}
},
"quantity": 1,
"discountedPricePerQuantity": [],
"taxRate": {
"name": "Bla",
"amount": 0.1,
"includedInPrice": false,
"country": "DE",
"subRates": []
},
"state": [
{
"quantity": 1,
"state": {
"typeId": "state",
"id": "7c2e2694-aefe-43d7-888e-6a99514caaca"
}
}
],
"priceMode": "Platform",
"lineItemMode": "Standard",
"totalPrice": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"taxedPrice": {
"totalNet": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"totalGross": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1100
},
"taxPortions": [
{
"rate": 0.1,
"amount": {
"type": "centPrecision",
"currencyCode": "EUR",
"centAmount": 634,
"fractionDigits": 2
},
"name": "Bla"
}
]
},
"perMethodTaxRate": [],
"taxedPricePortions": []
}
],
"customLineItems": [],
"discountCodes": [],
"origin": "Customer",
"shipping": [],
"shippingMode": "Single"
}
Query Orders
To perform searches across a large number of Orders for back-office use cases, consider Order Search BETA instead.
view_orders:{projectKey}
region String ​ | Region in which the Project is hosted. |
projectKey String ​ |
|
where | The parameter can be passed multiple times. |
sort | The parameter can be passed multiple times. |
expand | The parameter can be passed multiple times. |
limit Int ​ | Number of results requested. Default: 20 ​ |
offset Int ​ | Number of elements skipped. Default: 0 ​ |
withTotal Boolean ​ | Controls the calculation of the total number of query results. Set to Default: true ​ |
var.<varName> String ​ | Predicate parameter values. The parameter can be passed multiple times. |
application/json
curl --get https://api.{region}.commercetools.com/{projectKey}/orders -i \
--header "Authorization: Bearer ${BEARER_TOKEN}"
{
"limit": 20,
"offset": 0,
"count": 1,
"total": 1,
"results": [
{
"type": "Order",
"id": "92f5a867-bf19-47ab-982c-6720a03a3921",
"version": 1,
"createdAt": "2017-01-04T19:54:49.797Z",
"lastModifiedAt": "2017-01-04T19:54:49.797Z",
"totalPrice": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"orderState": "Open",
"syncInfo": [],
"returnInfo": [],
"refusedGifts": [],
"taxMode": "External",
"inventoryMode": "None",
"taxRoundingMode": "HalfEven",
"customerId": "7297c742-d8b0-484b-aadc-1d0ba6769dc9",
"businessUnit": {
"typeId": "business-unit",
"key": "ba-france-123"
},
"lineItems": [
{
"id": "7297c742-d8b0-484b-aadc-1d0ba1869dc9",
"productId": "c5c75935-595a-4cc3-a80e-24e9a9c55094",
"name": {
"en": "MyProduct"
},
"productType": {
"typeId": "product-type",
"id": "a5c7e173-9754-4f02-9b18-a600896ae0e1",
"version": 21
},
"productSlug": {
"de": "neues-produkt-slug-1234678",
"en": "new-product-slug-12345678"
},
"variant": {
"id": 1,
"sku": "some-sku-123",
"prices": [
{
"value": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"id": "6d36dc85-6131-495d-9f20-d00f411d4124"
}
],
"images": [],
"attributes": [
{
"name": "text",
"value": "attribute-value"
},
{
"name": "enum",
"value": {
"key": "test",
"label": "test"
}
}
],
"assets": []
},
"price": {
"id": "6d36dc85-6131-495d-9f20-d00f411d4124",
"value": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
}
},
"quantity": 1,
"discountedPricePerQuantity": [],
"taxRate": {
"name": "Bla",
"amount": 0.1,
"includedInPrice": false,
"country": "DE",
"subRates": []
},
"state": [
{
"quantity": 1,
"state": {
"typeId": "state",
"id": "7c2e2694-aefe-43d7-888e-6a99514caaca"
}
}
],
"priceMode": "Platform",
"lineItemMode": "Standard",
"totalPrice": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"taxedPrice": {
"totalNet": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"totalGross": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1100
},
"taxPortions": [
{
"rate": 0.1,
"amount": {
"type": "centPrecision",
"currencyCode": "EUR",
"centAmount": 634,
"fractionDigits": 2
},
"name": "Bla"
}
]
},
"perMethodTaxRate": [],
"taxedPricePortions": []
}
],
"customLineItems": [],
"discountCodes": [],
"origin": "Customer",
"shipping": [],
"shippingMode": "Single"
}
]
}
Query Orders in Store
view_orders:{projectKey}
view_orders:{projectKey}:{storeKey}
region String ​ | Region in which the Project is hosted. |
projectKey String ​ |
|
storeKey String ​ |
|
where | The parameter can be passed multiple times. |
sort | The parameter can be passed multiple times. |
expand | The parameter can be passed multiple times. |
limit Int ​ | Number of results requested. Default: 20 ​ |
offset Int ​ | Number of elements skipped. Default: 0 ​ |
withTotal Boolean ​ | Controls the calculation of the total number of query results. Set to Default: true ​ |
var.<varName> String ​ | Predicate parameter values. The parameter can be passed multiple times. |
application/json
curl --get https://api.{region}.commercetools.com/{projectKey}/in-store/key={storeKey}/orders -i \
--header "Authorization: Bearer ${BEARER_TOKEN}"
{
"limit": 20,
"offset": 0,
"count": 1,
"total": 1,
"results": [
{
"type": "Order",
"id": "92f5a867-bf19-47ab-982c-6720a03a3921",
"version": 1,
"createdAt": "2017-01-04T19:54:49.797Z",
"lastModifiedAt": "2017-01-04T19:54:49.797Z",
"totalPrice": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"orderState": "Open",
"syncInfo": [],
"returnInfo": [],
"refusedGifts": [],
"taxMode": "External",
"inventoryMode": "None",
"taxRoundingMode": "HalfEven",
"customerId": "7297c742-d8b0-484b-aadc-1d0ba6769dc9",
"businessUnit": {
"typeId": "business-unit",
"key": "ba-france-123"
},
"lineItems": [
{
"id": "7297c742-d8b0-484b-aadc-1d0ba1869dc9",
"productId": "c5c75935-595a-4cc3-a80e-24e9a9c55094",
"name": {
"en": "MyProduct"
},
"productType": {
"typeId": "product-type",
"id": "a5c7e173-9754-4f02-9b18-a600896ae0e1",
"version": 21
},
"productSlug": {
"de": "neues-produkt-slug-1234678",
"en": "new-product-slug-12345678"
},
"variant": {
"id": 1,
"sku": "some-sku-123",
"prices": [
{
"value": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"id": "6d36dc85-6131-495d-9f20-d00f411d4124"
}
],
"images": [],
"attributes": [
{
"name": "text",
"value": "attribute-value"
},
{
"name": "enum",
"value": {
"key": "test",
"label": "test"
}
}
],
"assets": []
},
"price": {
"id": "6d36dc85-6131-495d-9f20-d00f411d4124",
"value": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
}
},
"quantity": 1,
"discountedPricePerQuantity": [],
"taxRate": {
"name": "Bla",
"amount": 0.1,
"includedInPrice": false,
"country": "DE",
"subRates": []
},
"state": [
{
"quantity": 1,
"state": {
"typeId": "state",
"id": "7c2e2694-aefe-43d7-888e-6a99514caaca"
}
}
],
"priceMode": "Platform",
"lineItemMode": "Standard",
"totalPrice": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"taxedPrice": {
"totalNet": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"totalGross": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1100
},
"taxPortions": [
{
"rate": 0.1,
"amount": {
"type": "centPrecision",
"currencyCode": "EUR",
"centAmount": 634,
"fractionDigits": 2
},
"name": "Bla"
}
]
},
"perMethodTaxRate": [],
"taxedPricePortions": []
}
],
"customLineItems": [],
"discountCodes": [],
"origin": "Customer",
"shipping": [],
"shippingMode": "Single"
}
]
}
Check if Order exists
Check if Order exists by ID
Checks if an Order exists for a given id
. Returns a 200 OK
status if the Order exists or a 404 Not Found
otherwise.
view_orders:{projectKey}
region String ​ | Region in which the Project is hosted. |
projectKey String ​ |
|
id String ​ |
|
curl --head https://api.{region}.commercetools.com/{projectKey}/orders/{id} -i \
--header "Authorization: Bearer ${BEARER_TOKEN}"
Check if Order exists by OrderNumber
Checks if an Order exists for a given orderNumber
. Returns a 200 OK
status if the Order exists or a 404 Not Found
otherwise.
view_orders:{projectKey}
region String ​ | Region in which the Project is hosted. |
projectKey String ​ |
|
orderNumber String ​ |
|
curl --head https://api.{region}.commercetools.com/{projectKey}/orders/order-number={orderNumber} -i \
--header "Authorization: Bearer ${BEARER_TOKEN}"
Check if Order exists by Query Predicate
Checks if an Order exists for a given Query Predicate. Returns a 200 OK
status if any Orders match the Query Predicate or a 404 Not Found
otherwise.
view_orders:{projectKey}
region String ​ | Region in which the Project is hosted. |
projectKey String ​ |
|
where | The parameter can be passed multiple times. |
curl --head https://api.{region}.commercetools.com/{projectKey}/orders -i \
--header "Authorization: Bearer ${BEARER_TOKEN}"
Check if Order exists in Store
Check if Order exists in Store by ID
Checks if an Order exists for a given id
. Returns a 200 OK
status if the Order exists or a ResourceNotFound error otherwise.
view_orders:{projectKey}
view_orders:{projectKey}:{storeKey}
region String ​ | Region in which the Project is hosted. |
projectKey String ​ |
|
storeKey String ​ |
|
id String ​ |
|
curl --head https://api.{region}.commercetools.com/{projectKey}/in-store/key={storeKey}/orders/{id} -i \
--header "Authorization: Bearer ${BEARER_TOKEN}"
Check if Order exists in Store by OrderNumber
Checks if an Order exists for a given orderNumber
. Returns a 200 OK
status if the Order exists or a ResourceNotFound error otherwise.
view_orders:{projectKey}
view_orders:{projectKey}:{storeKey}
region String ​ | Region in which the Project is hosted. |
projectKey String ​ |
|
storeKey String ​ |
|
orderNumber String ​ |
|
curl --head https://api.{region}.commercetools.com/{projectKey}/in-store/key={storeKey}/orders/order-number={orderNumber} -i \
--header "Authorization: Bearer ${BEARER_TOKEN}"
Check if Order exists in Store by Query Predicate
Checks if an Order exists for a given Query Predicate. Returns a 200 OK
status if any Orders match the Query Predicate or a ResourceNotFound error otherwise.
view_orders:{projectKey}
view_orders:{projectKey}:{storeKey}
region String ​ | Region in which the Project is hosted. |
projectKey String ​ |
|
storeKey String ​ |
|
where | The parameter can be passed multiple times. |
curl --head https://api.{region}.commercetools.com/{projectKey}/in-store/key={storeKey}/orders -i \
--header "Authorization: Bearer ${BEARER_TOKEN}"
Create Order
Create Order from Cart
Before you create an Order, the Cart must have a shipping address set.
The shipping address is used for tax calculation for a Cart with Platform
TaxMode.
Creating an Order produces the OrderCreated Message.
If a server-side problem occurs, indicated by a 500 Internal Server Error HTTP response, the Order creation may still successfully complete after the error is returned. If you receive this error, you should verify the status of the Order by querying a unique identifier supplied during the creation request, such as the Order number.
Specific Error Codes:
manage_orders:{projectKey}
region String ​ | Region in which the Project is hosted. |
projectKey String ​ |
|
expand | The parameter can be passed multiple times. |
application/json
application/json
curl https://api.{region}.commercetools.com/{projectKey}/orders -i \
--header "Authorization: Bearer ${BEARER_TOKEN}" \
--header 'Content-Type: application/json' \
--data-binary @- << DATA
{
"cart" : {
"id" : "7c2e2694-aefe-43d7-888e-6a99514caaca",
"typeId" : "cart"
},
"version" : 10
}
DATA
{
"type": "Order",
"id": "92f5a867-bf19-47ab-982c-6720a03a3921",
"version": 1,
"createdAt": "2017-01-04T19:54:49.797Z",
"lastModifiedAt": "2017-01-04T19:54:49.797Z",
"totalPrice": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"orderState": "Open",
"syncInfo": [],
"returnInfo": [],
"refusedGifts": [],
"taxMode": "External",
"inventoryMode": "None",
"taxRoundingMode": "HalfEven",
"customerId": "7297c742-d8b0-484b-aadc-1d0ba6769dc9",
"businessUnit": {
"typeId": "business-unit",
"key": "ba-france-123"
},
"lineItems": [
{
"id": "7297c742-d8b0-484b-aadc-1d0ba1869dc9",
"productId": "c5c75935-595a-4cc3-a80e-24e9a9c55094",
"name": {
"en": "MyProduct"
},
"productType": {
"typeId": "product-type",
"id": "a5c7e173-9754-4f02-9b18-a600896ae0e1",
"version": 21
},
"productSlug": {
"de": "neues-produkt-slug-1234678",
"en": "new-product-slug-12345678"
},
"variant": {
"id": 1,
"sku": "some-sku-123",
"prices": [
{
"value": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"id": "6d36dc85-6131-495d-9f20-d00f411d4124"
}
],
"images": [],
"attributes": [
{
"name": "text",
"value": "attribute-value"
},
{
"name": "enum",
"value": {
"key": "test",
"label": "test"
}
}
],
"assets": []
},
"price": {
"id": "6d36dc85-6131-495d-9f20-d00f411d4124",
"value": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
}
},
"quantity": 1,
"discountedPricePerQuantity": [],
"taxRate": {
"name": "Bla",
"amount": 0.1,
"includedInPrice": false,
"country": "DE",
"subRates": []
},
"state": [
{
"quantity": 1,
"state": {
"typeId": "state",
"id": "7c2e2694-aefe-43d7-888e-6a99514caaca"
}
}
],
"priceMode": "Platform",
"lineItemMode": "Standard",
"totalPrice": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"taxedPrice": {
"totalNet": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"totalGross": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1100
},
"taxPortions": [
{
"rate": 0.1,
"amount": {
"type": "centPrecision",
"currencyCode": "EUR",
"centAmount": 634,
"fractionDigits": 2
},
"name": "Bla"
}
]
},
"perMethodTaxRate": [],
"taxedPricePortions": []
}
],
"customLineItems": [],
"discountCodes": [],
"origin": "Customer",
"shipping": [],
"shippingMode": "Single"
}
Create Order from Quote
Creates an Order from a Quote. The referenced Quote must have the Pending
state and must be valid (not past the validTo
date); otherwise, an InvalidOperation error is returned.
Produces the OrderCreated Message.
Specific Error Codes:
manage_quotes:{projectKey}
region String ​ | Region in which the Project is hosted. |
projectKey String ​ |
|
application/json
application/json
curl https://api.{region}.commercetools.com/{projectKey}/orders/quotes -i \
--header "Authorization: Bearer ${BEARER_TOKEN}" \
--header 'Content-Type: application/json' \
--data-binary @- << DATA
{
"quote" : {
"id" : "40d04a85-34d3-4769-a1b6-ecd00db2a587",
"typeId" : "quote"
},
"version" : 1
}
DATA
{
"type": "Order",
"id": "92f5a867-bf19-47ab-982c-6720a03a3921",
"version": 1,
"createdAt": "2017-01-04T19:54:49.797Z",
"lastModifiedAt": "2017-01-04T19:54:49.797Z",
"totalPrice": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"orderState": "Open",
"syncInfo": [],
"returnInfo": [],
"refusedGifts": [],
"taxMode": "External",
"inventoryMode": "None",
"taxRoundingMode": "HalfEven",
"customerId": "7297c742-d8b0-484b-aadc-1d0ba6769dc9",
"businessUnit": {
"typeId": "business-unit",
"key": "ba-france-123"
},
"lineItems": [
{
"id": "7297c742-d8b0-484b-aadc-1d0ba1869dc9",
"productId": "c5c75935-595a-4cc3-a80e-24e9a9c55094",
"name": {
"en": "MyProduct"
},
"productType": {
"typeId": "product-type",
"id": "a5c7e173-9754-4f02-9b18-a600896ae0e1",
"version": 21
},
"productSlug": {
"de": "neues-produkt-slug-1234678",
"en": "new-product-slug-12345678"
},
"variant": {
"id": 1,
"sku": "some-sku-123",
"prices": [
{
"value": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"id": "6d36dc85-6131-495d-9f20-d00f411d4124"
}
],
"images": [],
"attributes": [
{
"name": "text",
"value": "attribute-value"
},
{
"name": "enum",
"value": {
"key": "test",
"label": "test"
}
}
],
"assets": []
},
"price": {
"id": "6d36dc85-6131-495d-9f20-d00f411d4124",
"value": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
}
},
"quantity": 1,
"discountedPricePerQuantity": [],
"taxRate": {
"name": "Bla",
"amount": 0.1,
"includedInPrice": false,
"country": "DE",
"subRates": []
},
"state": [
{
"quantity": 1,
"state": {
"typeId": "state",
"id": "7c2e2694-aefe-43d7-888e-6a99514caaca"
}
}
],
"priceMode": "Platform",
"lineItemMode": "Standard",
"totalPrice": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"taxedPrice": {
"totalNet": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"totalGross": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1100
},
"taxPortions": [
{
"rate": 0.1,
"amount": {
"type": "centPrecision",
"currencyCode": "EUR",
"centAmount": 634,
"fractionDigits": 2
},
"name": "Bla"
}
]
},
"perMethodTaxRate": [],
"taxedPricePortions": []
}
],
"customLineItems": [],
"discountCodes": [],
"origin": "Customer",
"shipping": [],
"shippingMode": "Single"
}
Create Order by Import
To import an Order without having a Cart or Quote before, see Create Order by Import.
Create Order in Store
Create Order in Store from Cart
Before you create an Order, the Cart must have a shipping address set.
The shipping address is used for tax calculation for a Cart with Platform
TaxMode.
Creating an Order produces the OrderCreated Message. If a server-side problem occurs, indicated by a 500 Internal Server Error HTTP response, the Order creation may still successfully complete after the error is returned. If you receive this error, you should verify the status of the Order by querying a unique identifier supplied during the creation request, such as the Order number.
Specific Error Codes:
manage_orders:{projectKey}
manage_orders:{projectKey}:{storeKey}
region String ​ | Region in which the Project is hosted. |
projectKey String ​ |
|
storeKey String ​ |
|
expand | The parameter can be passed multiple times. |
application/json
application/json
curl https://api.{region}.commercetools.com/{projectKey}/in-store/key={storeKey}/orders -i \
--header "Authorization: Bearer ${BEARER_TOKEN}" \
--header 'Content-Type: application/json' \
--data-binary @- << DATA
{
"cart" : {
"id" : "7c2e2694-aefe-43d7-888e-6a99514caaca",
"typeId" : "cart"
},
"version" : 10
}
DATA
{
"type": "Order",
"id": "92f5a867-bf19-47ab-982c-6720a03a3921",
"version": 1,
"createdAt": "2017-01-04T19:54:49.797Z",
"lastModifiedAt": "2017-01-04T19:54:49.797Z",
"totalPrice": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"orderState": "Open",
"syncInfo": [],
"returnInfo": [],
"refusedGifts": [],
"taxMode": "External",
"inventoryMode": "None",
"taxRoundingMode": "HalfEven",
"customerId": "7297c742-d8b0-484b-aadc-1d0ba6769dc9",
"businessUnit": {
"typeId": "business-unit",
"key": "ba-france-123"
},
"lineItems": [
{
"id": "7297c742-d8b0-484b-aadc-1d0ba1869dc9",
"productId": "c5c75935-595a-4cc3-a80e-24e9a9c55094",
"name": {
"en": "MyProduct"
},
"productType": {
"typeId": "product-type",
"id": "a5c7e173-9754-4f02-9b18-a600896ae0e1",
"version": 21
},
"productSlug": {
"de": "neues-produkt-slug-1234678",
"en": "new-product-slug-12345678"
},
"variant": {
"id": 1,
"sku": "some-sku-123",
"prices": [
{
"value": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"id": "6d36dc85-6131-495d-9f20-d00f411d4124"
}
],
"images": [],
"attributes": [
{
"name": "text",
"value": "attribute-value"
},
{
"name": "enum",
"value": {
"key": "test",
"label": "test"
}
}
],
"assets": []
},
"price": {
"id": "6d36dc85-6131-495d-9f20-d00f411d4124",
"value": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
}
},
"quantity": 1,
"discountedPricePerQuantity": [],
"taxRate": {
"name": "Bla",
"amount": 0.1,
"includedInPrice": false,
"country": "DE",
"subRates": []
},
"state": [
{
"quantity": 1,
"state": {
"typeId": "state",
"id": "7c2e2694-aefe-43d7-888e-6a99514caaca"
}
}
],
"priceMode": "Platform",
"lineItemMode": "Standard",
"totalPrice": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"taxedPrice": {
"totalNet": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"totalGross": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1100
},
"taxPortions": [
{
"rate": 0.1,
"amount": {
"type": "centPrecision",
"currencyCode": "EUR",
"centAmount": 634,
"fractionDigits": 2
},
"name": "Bla"
}
]
},
"perMethodTaxRate": [],
"taxedPricePortions": []
}
],
"customLineItems": [],
"discountCodes": [],
"origin": "Customer",
"shipping": [],
"shippingMode": "Single"
}
Create Order in Store from Quote
Creates an Order from a Quote in a Store. The referenced Quote must have the Pending
state and must be valid (not past the validTo
date); otherwise, an InvalidOperation error is returned.
Produces the OrderCreated Message.
Specific Error Codes:
manage_quotes:{projectKey}
manage_quotes:{projectKey}:{storeKey}
region String ​ | Region in which the Project is hosted. |
projectKey String ​ |
|
storeKey String ​ |
|
application/json
application/json
curl https://api.{region}.commercetools.com/{projectKey}/in-store/key={storeKey}/orders/quotes -i \
--header "Authorization: Bearer ${BEARER_TOKEN}" \
--header 'Content-Type: application/json' \
--data-binary @- << DATA
{
"quote" : {
"id" : "40d04a85-34d3-4769-a1b6-ecd00db2a587",
"typeId" : "quote"
},
"version" : 1
}
DATA
{
"type": "Order",
"id": "92f5a867-bf19-47ab-982c-6720a03a3921",
"version": 1,
"createdAt": "2017-01-04T19:54:49.797Z",
"lastModifiedAt": "2017-01-04T19:54:49.797Z",
"totalPrice": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"orderState": "Open",
"syncInfo": [],
"returnInfo": [],
"refusedGifts": [],
"taxMode": "External",
"inventoryMode": "None",
"taxRoundingMode": "HalfEven",
"customerId": "7297c742-d8b0-484b-aadc-1d0ba6769dc9",
"businessUnit": {
"typeId": "business-unit",
"key": "ba-france-123"
},
"lineItems": [
{
"id": "7297c742-d8b0-484b-aadc-1d0ba1869dc9",
"productId": "c5c75935-595a-4cc3-a80e-24e9a9c55094",
"name": {
"en": "MyProduct"
},
"productType": {
"typeId": "product-type",
"id": "a5c7e173-9754-4f02-9b18-a600896ae0e1",
"version": 21
},
"productSlug": {
"de": "neues-produkt-slug-1234678",
"en": "new-product-slug-12345678"
},
"variant": {
"id": 1,
"sku": "some-sku-123",
"prices": [
{
"value": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"id": "6d36dc85-6131-495d-9f20-d00f411d4124"
}
],
"images": [],
"attributes": [
{
"name": "text",
"value": "attribute-value"
},
{
"name": "enum",
"value": {
"key": "test",
"label": "test"
}
}
],
"assets": []
},
"price": {
"id": "6d36dc85-6131-495d-9f20-d00f411d4124",
"value": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
}
},
"quantity": 1,
"discountedPricePerQuantity": [],
"taxRate": {
"name": "Bla",
"amount": 0.1,
"includedInPrice": false,
"country": "DE",
"subRates": []
},
"state": [
{
"quantity": 1,
"state": {
"typeId": "state",
"id": "7c2e2694-aefe-43d7-888e-6a99514caaca"
}
}
],
"priceMode": "Platform",
"lineItemMode": "Standard",
"totalPrice": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"taxedPrice": {
"totalNet": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"totalGross": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1100
},
"taxPortions": [
{
"rate": 0.1,
"amount": {
"type": "centPrecision",
"currencyCode": "EUR",
"centAmount": 634,
"fractionDigits": 2
},
"name": "Bla"
}
]
},
"perMethodTaxRate": [],
"taxedPricePortions": []
}
],
"customLineItems": [],
"discountCodes": [],
"origin": "Customer",
"shipping": [],
"shippingMode": "Single"
}
Update Order
Update Order by ID
manage_orders:{projectKey}
region String ​ | Region in which the Project is hosted. |
projectKey String ​ |
|
id String ​ |
|
expand | The parameter can be passed multiple times. |
application/json
application/json
curl https://api.{region}.commercetools.com/{projectKey}/orders/{id} -i \
--header "Authorization: Bearer ${BEARER_TOKEN}" \
--header 'Content-Type: application/json' \
--data-binary @- << DATA
{
"version" : 1,
"actions" : [ {
"action" : "changeOrderState",
"orderState" : "Complete"
} ]
}
DATA
{
"type": "Order",
"id": "92f5a867-bf19-47ab-982c-6720a03a3921",
"version": 1,
"createdAt": "2017-01-04T19:54:49.797Z",
"lastModifiedAt": "2017-01-04T19:54:49.797Z",
"totalPrice": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"orderState": "Open",
"syncInfo": [],
"returnInfo": [],
"refusedGifts": [],
"taxMode": "External",
"inventoryMode": "None",
"taxRoundingMode": "HalfEven",
"customerId": "7297c742-d8b0-484b-aadc-1d0ba6769dc9",
"businessUnit": {
"typeId": "business-unit",
"key": "ba-france-123"
},
"lineItems": [
{
"id": "7297c742-d8b0-484b-aadc-1d0ba1869dc9",
"productId": "c5c75935-595a-4cc3-a80e-24e9a9c55094",
"name": {
"en": "MyProduct"
},
"productType": {
"typeId": "product-type",
"id": "a5c7e173-9754-4f02-9b18-a600896ae0e1",
"version": 21
},
"productSlug": {
"de": "neues-produkt-slug-1234678",
"en": "new-product-slug-12345678"
},
"variant": {
"id": 1,
"sku": "some-sku-123",
"prices": [
{
"value": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"id": "6d36dc85-6131-495d-9f20-d00f411d4124"
}
],
"images": [],
"attributes": [
{
"name": "text",
"value": "attribute-value"
},
{
"name": "enum",
"value": {
"key": "test",
"label": "test"
}
}
],
"assets": []
},
"price": {
"id": "6d36dc85-6131-495d-9f20-d00f411d4124",
"value": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
}
},
"quantity": 1,
"discountedPricePerQuantity": [],
"taxRate": {
"name": "Bla",
"amount": 0.1,
"includedInPrice": false,
"country": "DE",
"subRates": []
},
"state": [
{
"quantity": 1,
"state": {
"typeId": "state",
"id": "7c2e2694-aefe-43d7-888e-6a99514caaca"
}
}
],
"priceMode": "Platform",
"lineItemMode": "Standard",
"totalPrice": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"taxedPrice": {
"totalNet": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"totalGross": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1100
},
"taxPortions": [
{
"rate": 0.1,
"amount": {
"type": "centPrecision",
"currencyCode": "EUR",
"centAmount": 634,
"fractionDigits": 2
},
"name": "Bla"
}
]
},
"perMethodTaxRate": [],
"taxedPricePortions": []
}
],
"customLineItems": [],
"discountCodes": [],
"origin": "Customer",
"shipping": [],
"shippingMode": "Single"
}
Update Order by OrderNumber
manage_orders:{projectKey}
region String ​ | Region in which the Project is hosted. |
projectKey String ​ |
|
orderNumber String ​ |
|
expand | The parameter can be passed multiple times. |
application/json
application/json
curl https://api.{region}.commercetools.com/{projectKey}/orders/order-number={orderNumber} -i \
--header "Authorization: Bearer ${BEARER_TOKEN}" \
--header 'Content-Type: application/json' \
--data-binary @- << DATA
{
"version" : 1,
"actions" : [ {
"action" : "changeOrderState",
"orderState" : "Complete"
} ]
}
DATA
{
"type": "Order",
"id": "92f5a867-bf19-47ab-982c-6720a03a3921",
"version": 1,
"createdAt": "2017-01-04T19:54:49.797Z",
"lastModifiedAt": "2017-01-04T19:54:49.797Z",
"totalPrice": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"orderState": "Open",
"syncInfo": [],
"returnInfo": [],
"refusedGifts": [],
"taxMode": "External",
"inventoryMode": "None",
"taxRoundingMode": "HalfEven",
"customerId": "7297c742-d8b0-484b-aadc-1d0ba6769dc9",
"businessUnit": {
"typeId": "business-unit",
"key": "ba-france-123"
},
"lineItems": [
{
"id": "7297c742-d8b0-484b-aadc-1d0ba1869dc9",
"productId": "c5c75935-595a-4cc3-a80e-24e9a9c55094",
"name": {
"en": "MyProduct"
},
"productType": {
"typeId": "product-type",
"id": "a5c7e173-9754-4f02-9b18-a600896ae0e1",
"version": 21
},
"productSlug": {
"de": "neues-produkt-slug-1234678",
"en": "new-product-slug-12345678"
},
"variant": {
"id": 1,
"sku": "some-sku-123",
"prices": [
{
"value": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"id": "6d36dc85-6131-495d-9f20-d00f411d4124"
}
],
"images": [],
"attributes": [
{
"name": "text",
"value": "attribute-value"
},
{
"name": "enum",
"value": {
"key": "test",
"label": "test"
}
}
],
"assets": []
},
"price": {
"id": "6d36dc85-6131-495d-9f20-d00f411d4124",
"value": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
}
},
"quantity": 1,
"discountedPricePerQuantity": [],
"taxRate": {
"name": "Bla",
"amount": 0.1,
"includedInPrice": false,
"country": "DE",
"subRates": []
},
"state": [
{
"quantity": 1,
"state": {
"typeId": "state",
"id": "7c2e2694-aefe-43d7-888e-6a99514caaca"
}
}
],
"priceMode": "Platform",
"lineItemMode": "Standard",
"totalPrice": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"taxedPrice": {
"totalNet": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"totalGross": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1100
},
"taxPortions": [
{
"rate": 0.1,
"amount": {
"type": "centPrecision",
"currencyCode": "EUR",
"centAmount": 634,
"fractionDigits": 2
},
"name": "Bla"
}
]
},
"perMethodTaxRate": [],
"taxedPricePortions": []
}
],
"customLineItems": [],
"discountCodes": [],
"origin": "Customer",
"shipping": [],
"shippingMode": "Single"
}
Update Order in Store
Update Order in Store by ID
If the Order exists in the Project but does not have a store
specified, or the store
field references a different Store, this method returns a ResourceNotFound error.
manage_orders:{projectKey}
manage_orders:{projectKey}:{storeKey}
region String ​ | Region in which the Project is hosted. |
projectKey String ​ |
|
storeKey String ​ |
|
id String ​ |
|
expand | The parameter can be passed multiple times. |
application/json
application/json
curl https://api.{region}.commercetools.com/{projectKey}/in-store/key={storeKey}/orders/{id} -i \
--header "Authorization: Bearer ${BEARER_TOKEN}" \
--header 'Content-Type: application/json' \
--data-binary @- << DATA
{
"version" : 1,
"actions" : [ {
"action" : "changeOrderState",
"orderState" : "Complete"
} ]
}
DATA
{
"type": "Order",
"id": "92f5a867-bf19-47ab-982c-6720a03a3921",
"version": 1,
"createdAt": "2017-01-04T19:54:49.797Z",
"lastModifiedAt": "2017-01-04T19:54:49.797Z",
"totalPrice": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"orderState": "Open",
"syncInfo": [],
"returnInfo": [],
"refusedGifts": [],
"taxMode": "External",
"inventoryMode": "None",
"taxRoundingMode": "HalfEven",
"customerId": "7297c742-d8b0-484b-aadc-1d0ba6769dc9",
"businessUnit": {
"typeId": "business-unit",
"key": "ba-france-123"
},
"lineItems": [
{
"id": "7297c742-d8b0-484b-aadc-1d0ba1869dc9",
"productId": "c5c75935-595a-4cc3-a80e-24e9a9c55094",
"name": {
"en": "MyProduct"
},
"productType": {
"typeId": "product-type",
"id": "a5c7e173-9754-4f02-9b18-a600896ae0e1",
"version": 21
},
"productSlug": {
"de": "neues-produkt-slug-1234678",
"en": "new-product-slug-12345678"
},
"variant": {
"id": 1,
"sku": "some-sku-123",
"prices": [
{
"value": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"id": "6d36dc85-6131-495d-9f20-d00f411d4124"
}
],
"images": [],
"attributes": [
{
"name": "text",
"value": "attribute-value"
},
{
"name": "enum",
"value": {
"key": "test",
"label": "test"
}
}
],
"assets": []
},
"price": {
"id": "6d36dc85-6131-495d-9f20-d00f411d4124",
"value": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
}
},
"quantity": 1,
"discountedPricePerQuantity": [],
"taxRate": {
"name": "Bla",
"amount": 0.1,
"includedInPrice": false,
"country": "DE",
"subRates": []
},
"state": [
{
"quantity": 1,
"state": {
"typeId": "state",
"id": "7c2e2694-aefe-43d7-888e-6a99514caaca"
}
}
],
"priceMode": "Platform",
"lineItemMode": "Standard",
"totalPrice": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"taxedPrice": {
"totalNet": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"totalGross": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1100
},
"taxPortions": [
{
"rate": 0.1,
"amount": {
"type": "centPrecision",
"currencyCode": "EUR",
"centAmount": 634,
"fractionDigits": 2
},
"name": "Bla"
}
]
},
"perMethodTaxRate": [],
"taxedPricePortions": []
}
],
"customLineItems": [],
"discountCodes": [],
"origin": "Customer",
"shipping": [],
"shippingMode": "Single"
}
Update Order in Store by OrderNumber
If the Order exists in the Project but does not have a store
specified, or the store
field references a different Store, this method returns a ResourceNotFound error.
manage_orders:{projectKey}
manage_orders:{projectKey}:{storeKey}
region String ​ | Region in which the Project is hosted. |
projectKey String ​ |
|
storeKey String ​ |
|
orderNumber String ​ |
|
expand | The parameter can be passed multiple times. |
application/json
application/json
curl https://api.{region}.commercetools.com/{projectKey}/in-store/key={storeKey}/orders/order-number={orderNumber} -i \
--header "Authorization: Bearer ${BEARER_TOKEN}" \
--header 'Content-Type: application/json' \
--data-binary @- << DATA
{
"version" : 1,
"actions" : [ {
"action" : "changeOrderState",
"orderState" : "Complete"
} ]
}
DATA
{
"type": "Order",
"id": "92f5a867-bf19-47ab-982c-6720a03a3921",
"version": 1,
"createdAt": "2017-01-04T19:54:49.797Z",
"lastModifiedAt": "2017-01-04T19:54:49.797Z",
"totalPrice": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"orderState": "Open",
"syncInfo": [],
"returnInfo": [],
"refusedGifts": [],
"taxMode": "External",
"inventoryMode": "None",
"taxRoundingMode": "HalfEven",
"customerId": "7297c742-d8b0-484b-aadc-1d0ba6769dc9",
"businessUnit": {
"typeId": "business-unit",
"key": "ba-france-123"
},
"lineItems": [
{
"id": "7297c742-d8b0-484b-aadc-1d0ba1869dc9",
"productId": "c5c75935-595a-4cc3-a80e-24e9a9c55094",
"name": {
"en": "MyProduct"
},
"productType": {
"typeId": "product-type",
"id": "a5c7e173-9754-4f02-9b18-a600896ae0e1",
"version": 21
},
"productSlug": {
"de": "neues-produkt-slug-1234678",
"en": "new-product-slug-12345678"
},
"variant": {
"id": 1,
"sku": "some-sku-123",
"prices": [
{
"value": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"id": "6d36dc85-6131-495d-9f20-d00f411d4124"
}
],
"images": [],
"attributes": [
{
"name": "text",
"value": "attribute-value"
},
{
"name": "enum",
"value": {
"key": "test",
"label": "test"
}
}
],
"assets": []
},
"price": {
"id": "6d36dc85-6131-495d-9f20-d00f411d4124",
"value": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
}
},
"quantity": 1,
"discountedPricePerQuantity": [],
"taxRate": {
"name": "Bla",
"amount": 0.1,
"includedInPrice": false,
"country": "DE",
"subRates": []
},
"state": [
{
"quantity": 1,
"state": {
"typeId": "state",
"id": "7c2e2694-aefe-43d7-888e-6a99514caaca"
}
}
],
"priceMode": "Platform",
"lineItemMode": "Standard",
"totalPrice": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"taxedPrice": {
"totalNet": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"totalGross": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1100
},
"taxPortions": [
{
"rate": 0.1,
"amount": {
"type": "centPrecision",
"currencyCode": "EUR",
"centAmount": 634,
"fractionDigits": 2
},
"name": "Bla"
}
]
},
"perMethodTaxRate": [],
"taxedPricePortions": []
}
],
"customLineItems": [],
"discountCodes": [],
"origin": "Customer",
"shipping": [],
"shippingMode": "Single"
}
Update actions
on Order
Set Order Number
action ​String​ | "setOrderNumber" |
orderNumber ​String​ | Value to set. Must be unique across a Project. Once set, the value cannot be changed. |
{
"action": "setOrderNumber",
"orderNumber": "myOrderNumber"
}
Set Purchase Order Number
Produces the PurchaseOrderNumberSet Message.
action ​String​ | "setPurchaseOrderNumber" |
purchaseOrderNumber ​String​ | Value to set. If empty, any existing value is removed. |
{
"action": "setPurchaseOrderNumber",
"purchaseOrderNumber": "purchaseOrderNumberString"
}
Set Customer ID
Setting the Order's customerId
does not recalculate prices or discounts on the Order.
If the Customer belongs to a Customer Group, customerGroup
on the Order is updated automatically.
Produces the OrderCustomerSet Message.
action ​String​ | "setCustomerId" |
customerId ​String​ |
|
{
"action": "setCustomerId",
"customerId": "{{customer-id}}"
}
Set Customer Email
This action updates the customerEmail
on the Order, but it does not change the Customer email on the Cart the Order has been created from.
Produces the Order Customer Email Set Message.
action ​String​ | "setCustomerEmail" |
email ​String​ | Value to set. If empty, any existing value is removed. |
{
"action": "setCustomerEmail",
"email": "email@example.com"
}
Add Payment
action ​String​ | "addPayment" |
payment ​ | Payment to add to the PaymentInfo. Must not be assigned to another Order or active Cart already. |
{
"action": "addPayment",
"payment": {
"typeId": "payment",
"id": "{{payment-id}}"
}
}
Remove Payment
action ​String​ | "removePayment" |
payment ​ | Payment to remove from the PaymentInfo. |
{
"action": "removePayment",
"payment": {
"typeId": "payment",
"id": "{{payment-id}}"
}
}
Change PaymentState
Produces the Order Payment State Changed Message.
action ​String​ | "changePaymentState" |
paymentState ​PaymentState​ | New payment status of the Order. |
{
"action": "changePaymentState",
"paymentState": "Failed"
}
Set Billing Address
This action updates the billingAddress
on the Order, but it does not change the billing address on the referenced Cart from which the Order is created.
Produces the Order Billing Address Set Message.
action ​String​ | "setBillingAddress" |
address ​BaseAddress​ | Value to set. If empty, any existing value is removed. |
{
"action": "setBillingAddress",
"address": {
"key": "exampleKey",
"title": "My Address",
"salutation": "Mr.",
"firstName": "Example",
"lastName": "Person",
"streetName": "Example Street",
"streetNumber": "4711",
"additionalStreetInfo": "Backhouse",
"postalCode": "80933",
"city": "Exemplary City",
"region": "Exemplary Region",
"state": "Exemplary State",
"country": "DE",
"company": "My Company Name",
"department": "Sales",
"building": "Hightower 1",
"apartment": "247",
"pOBox": "2471",
"phone": "+49 89 12345678",
"mobile": "+49 171 2345678",
"email": "email@example.com",
"fax": "+49 89 12345679",
"additionalAddressInfo": "no additional Info",
"externalId": "Information not needed"
}
}
Set Shipping Address
This action updates the shippingAddress
on the Order, but it does not change the shipping address on the referenced Cart from which the Order is created.
Also, it does not recalculate the Cart as taxes may not fit to the shipping address anymore.
Produces the Order Shipping Address Set Message.
action ​String​ | "setShippingAddress" |
address ​BaseAddress​ | Value to set. If empty, any existing value is removed. |
{
"action": "setShippingAddress",
"address": {
"key": "exampleKey",
"title": "My Address",
"salutation": "Mr.",
"firstName": "Example",
"lastName": "Person",
"streetName": "Example Street",
"streetNumber": "4711",
"additionalStreetInfo": "Backhouse",
"postalCode": "80933",
"city": "Exemplary City",
"region": "Exemplary Region",
"state": "Exemplary State",
"country": "DE",
"company": "My Company Name",
"department": "Sales",
"building": "Hightower 1",
"apartment": "247",
"pOBox": "2471",
"phone": "+49 89 12345678",
"mobile": "+49 171 2345678",
"email": "email@example.com",
"fax": "+49 89 12345679",
"additionalAddressInfo": "no additional Info",
"externalId": "Information not needed"
}
}
Add ItemShippingAddress
Adds an address to an Order when shipping to multiple addresses is desired.
action ​String​ | "addItemShippingAddress" |
address ​BaseAddress​ | Address to append to |
{
"action": "addItemShippingAddress",
"address": {
"key": "exampleKey",
"title": "My Address",
"salutation": "Mr.",
"firstName": "Example",
"lastName": "Person",
"streetName": "Example Street",
"streetNumber": "4711",
"additionalStreetInfo": "Backhouse",
"postalCode": "80933",
"city": "Exemplary City",
"region": "Exemplary Region",
"state": "Exemplary State",
"country": "DE",
"company": "My Company Name",
"department": "Sales",
"building": "Hightower 1",
"apartment": "247",
"pOBox": "2471",
"phone": "+49 89 12345678",
"mobile": "+49 171 2345678",
"email": "email@example.com",
"fax": "+49 89 12345679",
"additionalAddressInfo": "no additional Info",
"externalId": "Information not needed"
}
}
Remove ItemShippingAddress
An address can only be removed if it is not referenced in any ItemShippingTarget of the Cart.
In such case, change the Line Item shipping address to a different addressKey
first using the Set LineItemShippingDetails update action, before you remove the obsolete address.
action ​String​ | "removeItemShippingAddress" |
addressKey ​String​ |
|
{
"action": "removeItemShippingAddress",
"addressKey": "addressKey"
}
Update ItemShippingAddress
Updates an address in itemShippingAddresses
by keeping the Address key
.
action ​String​ | "updateItemShippingAddress" |
address ​BaseAddress​ | The new Address with the same |
{
"action": "updateItemShippingAddress",
"address": {
"key": "exampleKey",
"title": "My Address",
"salutation": "Mr.",
"firstName": "Example",
"lastName": "Person",
"streetName": "Example Street",
"streetNumber": "4711",
"additionalStreetInfo": "Backhouse",
"postalCode": "80933",
"city": "Exemplary City",
"region": "Exemplary Region",
"state": "Exemplary State",
"country": "DE",
"company": "My Company Name",
"department": "Sales",
"building": "Hightower 1",
"apartment": "247",
"pOBox": "2471",
"phone": "+49 89 12345678",
"mobile": "+49 171 2345678",
"email": "email@example.com",
"fax": "+49 89 12345679",
"additionalAddressInfo": "no additional Info",
"externalId": "Information not needed"
}
}
Add Delivery
A Delivery can only be added to an Order if
its shippingInfo
(for shippingMode
= Single
), or its shipping
(for shippingMode
= Multiple
) exists.
Produces the Delivery Added Message.
action ​String​ | "addDelivery" |
deliveryKey ​String​ |
|
shippingKey ​String​ |
|
items ​Array of DeliveryItem​ | Line Items or Custom Line Items to be included in the Delivery. |
address ​BaseAddress​ | Address the |
parcels ​Array of ParcelDraft​ | Parcels of the Delivery. If provided, this update action produces the Parcel Added To Delivery Message. |
custom ​ | Custom Fields for the Delivery. |
{
"action": "addDelivery",
"items": [
{
"id": "{{lineItemId}}",
"quantity": 1
}
],
"address": {
"key": "exampleKey",
"title": "My Address",
"salutation": "Mr.",
"firstName": "Example",
"lastName": "Person",
"streetName": "Example Street",
"streetNumber": "4711",
"additionalStreetInfo": "Backhouse",
"postalCode": "80933",
"city": "Exemplary City",
"region": "Exemplary Region",
"state": "Exemplary State",
"country": "DE",
"company": "My Company Name",
"department": "Sales",
"building": "Hightower 1",
"apartment": "247",
"pOBox": "2471",
"phone": "+49 89 12345678",
"mobile": "+49 171 2345678",
"email": "email@example.com",
"fax": "+49 89 12345679",
"additionalAddressInfo": "no additional Info",
"externalId": "Information not needed"
},
"parcels": [
{
"measurements": {
"heightInMillimeter": 11,
"widthInMillimeter": 11
},
"trackingData": {
"trackingId": "{{trackingId}}",
"carrier": "TNT",
"provider": "providerName",
"providerTransaction": "{{transactionId}}",
"isReturn": false
}
}
]
}
Remove Delivery
Produces the DeliveryRemoved Message.
Change ShipmentState
Produces the Order Shipment State Changed Message.
action ​String​ | "changeShipmentState" |
shipmentState ​ | New shipment status of the Order. |
{
"action": "changeShipmentState",
"shipmentState": "Ready"
}
Add ReturnInfo
Produces the Return Info Added Message.
action ​String​ | "addReturnInfo" |
returnTrackingId ​String​ | Value to set. |
items ​Array of ReturnItemDraft​ | Items to be returned. Must not be empty. MinItems:1 ​ |
returnDate ​DateTime​ | Value to set. If not set, it defaults to the current date and time. |
{
"action": "addReturnInfo",
"items": [
{
"quantity": 1,
"lineItemId": "{{lineItemId}}",
"shipmentState": "Returned"
}
]
}
Set ReturnInfo
Produces the Return Info Set Message.
action ​String​ | "setReturnInfo" |
items ​Array of ReturnInfoDraft​ | Value to set. If empty, any existing value is removed. |
{
"action": "setReturnInfo",
"items": [
{
"items": [
{
"quantity": 1,
"lineItemId": "{{lineItemId}}",
"comment": "any comment",
"shipmentState": "Returned"
}
],
"returnTrackingId": "returnTrackingId-example",
"returnDate": "2021-04-30T09:21:15.003Z"
}
]
}
Set ReturnShipmentState
To set a ReturnShipmentState
, the Order returnInfo
must have at least one ReturnItem.
Produces the Order Return Shipment State Changed Message.
action ​String​ | "setReturnShipmentState" |
returnItemId ​String​ |
|
returnItemKey ​String​ |
|
shipmentState ​ | New shipment state of the ReturnItem. |
{
"action": "setReturnShipmentState",
"returnItemId": "{{returnItemId}}",
"shipmentState": "BackInStock"
}
Set ReturnPaymentState
To set a ReturnPaymentState, the Order returnInfo
must have at least one ReturnItem.
action ​String​ | "setReturnPaymentState" |
returnItemId ​String​ |
|
returnItemKey ​String​ |
|
paymentState ​ | New Payment status of the ReturnItem. |
{
"action": "setReturnPaymentState",
"returnItemId": "{{returnItemId}}",
"paymentState": "NotRefunded"
}
Change OrderState
Produces the Order State Changed Message.
action ​String​ | "changeOrderState" |
orderState ​OrderState​ | New status of the Order. |
{
"action": "changeOrderState",
"orderState": "Open"
}
Transition State
If the existing State has set transitions
, there must be a direct transition to the new State.
If transitions
is not set, no validation is performed.
This update action produces the Order State Transition Message.
action ​String​ | "transitionState" |
state ​ | Value to set. If there is no State yet, the new State must be an initial State. |
force ​Boolean​ | Set to |
{
"action": "transitionState",
"state": {
"typeId": "state",
"id": "{{state-id}}"
}
}
Update SyncInfo
action ​String​ | "updateSyncInfo" |
externalId ​String​ | Set this to identify an external order instance, file, or other resource. |
channel ​ | The synchronization destination to set. Must not be empty.
The referenced Channel must have the Channel Role |
syncedAt ​DateTime​ | If not set, it defaults to the current date and time. |
{
"action": "updateSyncInfo",
"channel": {
"typeId": "channel",
"id": "{{channel-id}}"
}
}
Set Locale
Set Store
Sets the Store the Order is assigned to. It should be used to migrate Orders to a new Store. No validations are performed (such as that the Customer is allowed to create Orders in the Store).
Produces the Order Store Set Message.
Returns a 400
error if store
references the same Store the Order is currently assigned to, including if you try to remove the value when no Store is currently assigned.
action ​String​ | "setStore" |
store ​ | Value to set. If empty, any existing value is removed. If |
{
"action": "setStore",
"store": {
"key": "{{store-key}}",
"typeId": "store"
}
}
Set Custom Type
action ​String​ | "setCustomType" |
type ​ | Defines the Type that extends the Order with Custom Fields. If absent, any existing Type and Custom Fields are removed from the Order. |
fields ​ | Sets the Custom Fields fields for the Order. |
{
"action": "setCustomType",
"type": {
"id": "{{type-id}}",
"typeId": "type"
},
"fields": {
"exampleStringField": "TextString"
}
}
Set CustomField
action ​String​ | "setCustomField" |
name ​String​ | Name of the Custom Field. |
value ​ | If |
{
"action": "setCustomField",
"name": "exampleStringField",
"value": "TextString"
}
on LineItem
Set LineItem ShippingDetails
action ​String​ | "setLineItemShippingDetails" |
lineItemId ​String​ |
|
lineItemKey ​String​ |
|
shippingDetails ​ | Value to set. If empty, the existing value is removed. |
{
"action": "setLineItemShippingDetails",
"lineItemId": "{{lineItemId}}",
"shippingDetails": {
"targets": [
{
"addressKey": "AddressKeyStringFromAddress",
"quantity": 2
}
]
}
}
Set LineItem Custom Type
action ​String​ | "setLineItemCustomType" |
lineItemId ​String​ |
|
lineItemKey ​String​ |
|
type ​ | Defines the Type that extends the Line Item with Custom Fields. If absent, any existing Type and Custom Fields are removed from the Line Item. |
fields ​ | Sets the Custom Fields fields for the Line Item. |
{
"action": "setLineItemCustomType",
"lineItemId": "{{lineItemId}}",
"type": {
"id": "{{type-id}}",
"typeId": "type"
},
"fields": {
"exampleStringField": "TextString"
}
}
Set LineItem CustomField
action ​String​ | "setLineItemCustomField" |
lineItemId ​String​ |
|
lineItemKey ​String​ |
|
name ​String​ | Name of the Custom Field. |
value ​ | If |
{
"action": "setLineItemCustomField",
"lineItemId": "{{lineItemId}}",
"name": "exampleStringField",
"value": "TextString"
}
Transition LineItem State
Produces the Line Item State Transition Message.
action ​String​ | "transitionLineItemState" |
lineItemId ​String​ |
|
lineItemKey ​String​ |
|
quantity ​Int​ | Number of Line Items that should transition State. |
fromState ​ | State the Line Item should transition from. |
toState ​ | State the Line Item should transition to. |
actualTransitionDate ​DateTime​ | Date and time (UTC) to perform the State transition. |
{
"action": "transitionLineItemState",
"lineItemId": "{{lineItemId}}",
"quantity": 3,
"fromState": {
"typeId": "state",
"id": "{{state-id}}"
},
"toState": {
"typeId": "state",
"id": "{{state-id}}"
}
}
Import LineItem State
The import of States does not follow any predefined rules and should be only used if no transitions are defined.
The quantity
in the ItemStates must match the sum of all Line Items states' quantities.
action ​String​ | "importLineItemState" |
lineItemId ​String​ |
|
lineItemKey ​String​ |
|
state ​Array of ItemState​ | New status of the Line Items. |
{
"action": "importLineItemState",
"lineItemId": "{{lineItemId}}",
"state": [
{
"quantity": 5,
"state": {
"typeId": "state",
"id": "{{state-id}}"
}
}
]
}
on Custom LineItem
Set CustomLineItem ShippingDetails
action ​String​ | "setCustomLineItemShippingDetails" |
customLineItemId ​String​ |
|
customLineItemKey ​String​ |
|
shippingDetails ​ | Value to set. If empty, any existing value is removed. |
{
"action": "setCustomLineItemShippingDetails",
"customLineItemId": "{{customLineItemId}}",
"shippingDetails": {
"targets": [
{
"addressKey": "{{addressKey}}",
"quantity": 2
}
]
}
}
Transition CustomLineItem State
Produces the Custom Line Item State Transition Message.
action ​String​ | "transitionCustomLineItemState" |
customLineItemId ​String​ |
|
customLineItemKey ​String​ |
|
quantity ​Int​ | Number of Custom Line Items that should transition State. |
fromState ​ | State the Custom Line Item should transition from. |
toState ​ | State the Custom Line Item should transition to. |
actualTransitionDate ​DateTime​ | Date and time (UTC) to perform the State transition. |
{
"action": "transitionCustomLineItemState",
"customLineItemId": "{{customLineItemId}}",
"quantity": 6,
"fromState": {
"typeId": "state",
"id": "{{state-id}}"
},
"toState": {
"typeId": "state",
"id": "{{state-id}}"
}
}
Import CustomLineItem State
The import of States does not follow any predefined rules and should be only used if no transitions are defined.
The quantity
in the ItemStates must match the sum of all Custom Line Item states' quantities.
action ​String​ | "importCustomLineItemState" |
customLineItemId ​String​ |
|
customLineItemKey ​String​ |
|
state ​Array of ItemState​ | New status of the Custom Line Items. |
{
"action": "importCustomLineItemState",
"customLineItemId": "{{customLineItemId}}",
"state": [
{
"quantity": 6,
"state": {
"typeId": "state",
"id": "{{state-id}}"
}
}
]
}
Set CustomLineItem Custom Type
action ​String​ | "setCustomLineItemCustomType" |
customLineItemId ​String​ |
|
customLineItemKey ​String​ |
|
type ​ | Defines the Type that extends the Custom Line Item with Custom Fields. If absent, any existing Type and Custom Fields are removed from the Custom Line Item. |
fields ​ | Sets the Custom Fields fields for the Custom Line Item. |
{
"action": "setCustomLineItemCustomType",
"customLineItemId": "{{customLineItemId}}",
"type": {
"id": "{{type-id}}",
"typeId": "type"
},
"fields": {
"exampleStringField": "TextString"
}
}
Set CustomLineItem CustomField
action ​String​ | "setCustomLineItemCustomField" |
customLineItemId ​String​ |
|
customLineItemKey ​String​ |
|
name ​String​ | Name of the Custom Field. |
value ​ | If |
{
"action": "setCustomLineItemCustomField",
"customLineItemId": "{{customLineItemId}}",
"name": "exampleStringField",
"value": "TextString"
}
on Billing Address
Set Billing Address Custom Type
action ​String​ | "setBillingAddressCustomType" |
type ​ | Defines the Type that extends the |
fields ​ | Sets the Custom Fields fields for the |
{
"action": "setBillingAddressCustomType",
"type": {
"id": "{{type-id}}",
"typeId": "type"
},
"fields": {
"exampleStringField": "TextString"
}
}
Set Billing Address CustomField
action ​String​ | "setBillingAddressCustomField" |
name ​String​ | Name of the Custom Field. |
value ​ | If |
{
"action": "setBillingAddressCustomField",
"name": "exampleStringField",
"value": "TextString"
}
on Shipping Address
Set Shipping Address Custom Type
action ​String​ | "setShippingAddressCustomType" |
type ​ | Defines the Type that extends the |
fields ​ | Sets the Custom Fields fields for the |
{
"action": "setShippingAddressCustomType",
"type": {
"id": "{{type-id}}",
"typeId": "type"
},
"fields": {
"exampleStringField": "TextString"
}
}
Set Shipping Address CustomField
action ​String​ | "setShippingAddressCustomField" |
name ​String​ | Name of the Custom Field. |
value ​ | If |
{
"action": "setShippingAddressCustomField",
"name": "exampleStringField",
"value": "TextString"
}
on ItemShipping Address
Set ItemShipping Address Custom Type
action ​String​ | "setItemShippingAddressCustomType" |
addressKey ​String​ |
|
type ​ | Defines the Type that extends the |
fields ​ | Sets the Custom Fields fields for the |
{
"action": "setItemShippingAddressCustomType",
"addressKey": "{{address-key}}",
"type": {
"id": "{{type-id}}",
"typeId": "type"
},
"fields": {
"exampleStringField": "TextString"
}
}
Set ItemShipping Address CustomField
action ​String​ | "setItemShippingAddressCustomField" |
addressKey ​String​ |
|
name ​String​ | Name of the Custom Field. |
value ​ | If |
{
"action": "setItemShippingAddressCustomField",
"addressKey": "{{address-key}}",
"name": "exampleStringField",
"value": "TextString"
}
on Shipping
Set Shipping Custom Type
This action sets, overwrites, or removes any existing Custom Type and Custom Fields for the Order's shippingMethod
or shipping
.
action ​String​ | "setShippingCustomType" |
shippingKey ​String​ | The |
type ​ | Defines the Type that extends the specified ShippingMethod with Custom Fields. If absent, any existing Type and Custom Fields are removed from the ShippingMethod. |
fields ​ | Sets the Custom Fields fields for the |
{
"action": "setShippingCustomType",
"shippingKey": "shipping-key-express",
"type": {
"id": "{{type-id}}",
"typeId": "type"
},
"fields": {
"exampleStringField": "TextString"
}
}
Set Shipping CustomField
action ​String​ | "setShippingCustomField" |
shippingKey ​String​ | The |
name ​String​ | Name of the Custom Field. |
value ​ | If |
{
"action": "setShippingCustomField",
"shippingKey": "shipping-key-express",
"name": "exampleStringField",
"value": "TextString"
}
on Delivery
Set Delivery Address
Produces the DeliveryAddressSet Message.
action ​String​ | "setDeliveryAddress" |
deliveryId ​String​ |
Either |
deliveryKey ​String​ |
Either |
address ​BaseAddress​ | Value to set. If empty, any existing value is removed. |
{
"action": "setDeliveryAddress",
"deliveryId": "{{deliveryId}}",
"address": {
"key": "exampleKey",
"title": "My Address",
"salutation": "Mr.",
"firstName": "Example",
"lastName": "Person",
"streetName": "Example Street",
"streetNumber": "4711",
"additionalStreetInfo": "Backhouse",
"postalCode": "80933",
"city": "Exemplary City",
"region": "Exemplary Region",
"state": "Exemplary State",
"country": "DE",
"company": "My Company Name",
"department": "Sales",
"building": "Hightower 1",
"apartment": "247",
"pOBox": "2471",
"phone": "+49 89 12345678",
"mobile": "+49 171 2345678",
"email": "email@example.com",
"fax": "+49 89 12345679",
"additionalAddressInfo": "no additional Info",
"externalId": "Information not needed"
}
}
Add Parcel to Delivery
To add a Parcel, at least one Delivery must exist.
Produces the Parcel Added To Delivery Message.
action ​String​ | "addParcelToDelivery" |
deliveryId ​String​ |
Either |
deliveryKey ​String​ |
Either |
parcelKey ​String​ |
|
measurements ​ | Value to set. |
trackingData ​TrackingData​ | Value to set. |
items ​Array of DeliveryItem​ | Value to set. |
custom ​ | Custom Fields for the Parcel. |
{
"action": "addParcelToDelivery",
"deliveryId": "{{deliveryId}}",
"measurements": {
"heightInMillimeter": 11,
"widthInMillimeter": 11
},
"trackingData": {
"trackingId": "{{trackingId}}",
"carrier": "TNT",
"provider": "providerName",
"providerTransaction": "{{transactionId}}",
"isReturn": false
},
"items": {
"id": "{{lineItemId}}",
"quantity": 2
}
}
Remove Parcel from Delivery
Produces the ParcelRemovedFromDelivery Message.
Set Delivery Items
Produces the Delivery Items Updated Message.
action ​String​ | "setDeliveryItems" |
deliveryId ​String​ |
Either |
deliveryKey ​String​ |
Either |
items ​Array of DeliveryItem​ | Value to set. If empty, any existing value is removed. |
{
"action": "setDeliveryItems",
"deliveryId": "{{deliveryId}}",
"items": [
{
"id": "{{itemId}}",
"quantity": 2
}
]
}
Set Delivery Custom Type
action ​String​ | "setDeliveryCustomType" |
deliveryId ​String​ |
Either |
deliveryKey ​String​ |
Either |
type ​ | Defines the Type that extends the Delivery with Custom Fields. If absent, any existing Type and Custom Fields are removed from the Delivery. |
fields ​ | Sets the Custom Fields fields for the Delivery. |
{
"action": "setDeliveryCustomType",
"deliveryId": "exampleDeliveryID",
"type": {
"id": "{{type-id}}",
"typeId": "type"
},
"fields": {
"exampleStringField": "TextString"
}
}
Set Delivery CustomField
action ​String​ | "setDeliveryCustomField" |
deliveryId ​String​ |
Either |
deliveryKey ​String​ |
Either |
name ​String​ | Name of the Custom Field. |
value ​ | If |
{
"action": "setDeliveryCustomField",
"deliveryId": "exampleDeliveryID",
"name": "exampleStringField",
"value": "TextString"
}
on Parcel
Set Parcel Measurements
Produces the ParcelMeasurementsUpdated Message.
action ​String​ | "setParcelMeasurements" |
parcelId ​String​ |
Either |
parcelKey ​String​ |
Either |
measurements ​ | Value to set. If empty, any existing value is removed. |
{
"action": "setParcelMeasurements",
"parcelId": "{{parcelId}}",
"measurements": {
"heightInMillimeter": 11,
"lengthInMillimeter": 11
}
}
Set Parcel Tracking Data
Produces the ParcelTrackingDataUpdated Message.
action ​String​ | "setParcelTrackingData" |
parcelId ​String​ |
Either |
parcelKey ​String​ |
Either |
trackingData ​TrackingData​ | Value to set. If empty, any existing value is removed. |
{
"action": "setParcelTrackingData",
"parcelId": "{{parcelId}}",
"trackingData": {
"trackingId": "{{trackingId}}",
"carrier": "TNT",
"provider": "providerName",
"providerTransaction": "{{transactionId}}",
"isReturn": false
}
}
Set Parcel Items
Produces the ParcelItemsUpdated Message.
action ​String​ | "setParcelItems" |
parcelId ​String​ |
Either |
parcelKey ​String​ |
Either |
items ​Array of DeliveryItem​ | Value to set. If empty, any existing value is removed. |
{
"action": "setParcelItems",
"parcelId": "{{parcelId}}",
"items": [
{
"id": "{{lineItemId}}",
"quantity": 2
}
]
}
Set Parcel Custom Type
action ​String​ | "setParcelCustomType" |
parcelId ​String​ |
Either |
parcelKey ​String​ |
Either |
type ​ | Defines the Type that extends the Parcel with Custom Fields. If absent, any existing Type and Custom Fields are removed from the Parcel. |
fields ​ | Sets the Custom Fields fields for the Parcel. |
{
"action": "setParcelCustomType",
"parcelId": "exampleParcelID",
"type": {
"id": "{{type-id}}",
"typeId": "type"
},
"fields": {
"exampleStringField": "TextString"
}
}
Set Parcel CustomField
action ​String​ | "setParcelCustomField" |
parcelId ​String​ |
Either |
parcelKey ​String​ |
Either |
name ​String​ | Name of the Custom Field. |
value ​ | If |
{
"action": "setParcelCustomField",
"parcelId": "exampleParcelID",
"name": "exampleStringField",
"value": "TextString"
}
on Delivery Address
Set Delivery Address Custom Type
action ​String​ | "setDeliveryAddressCustomType" |
deliveryId ​String​ |
Either |
deliveryKey ​String​ |
Either |
type ​ | Defines the Type that extends the Delivery |
fields ​ | Sets the Custom Fields fields for the Delivery |
{
"action": "setDeliveryAddressCustomType",
"deliveryId": "{{delivery-id}}",
"type": {
"id": "{{type-id}}",
"typeId": "type"
},
"fields": {
"exampleStringField": "TextString"
}
}
Set Delivery Address CustomField
action ​String​ | "setDeliveryAddressCustomField" |
deliveryId ​String​ |
Either |
deliveryKey ​String​ |
Either |
name ​String​ | Name of the Custom Field. |
value ​ | If |
{
"action": "setDeliveryAddressCustomField",
"deliveryId": "{{delivery-id}}",
"name": "exampleStringField",
"value": "TextString"
}
on ReturnItem
Set ReturnItem Custom Type
action ​String​ | "setReturnItemCustomType" |
returnItemId ​String​ |
|
returnItemKey ​String​ |
|
type ​ | Defines the Type that extends the Return Item with Custom Fields. If absent, any existing Type and Custom Fields are removed from the Return Item. |
fields ​ | Sets the Custom Fields fields for the Return Item. |
{
"action": "setReturnItemCustomType",
"returnItemId": "exampleReturnItemID",
"type": {
"id": "{{type-id}}",
"typeId": "type"
},
"fields": {
"exampleStringField": "TextString"
}
}
Set ReturnItem CustomField
action ​String​ | "setReturnItemCustomField" |
returnItemId ​String​ |
|
returnItemKey ​String​ |
|
name ​String​ | Name of the Custom Field. |
value ​ | If |
{
"action": "setReturnItemCustomField",
"returnItemId": "exampleReturnItemID",
"name": "exampleStringField",
"value": "TextString"
}
Delete Order
Delete Order by ID
Although it is possible to delete Orders with the manage_orders
scope, we strongly recommend doing so only for test Orders. You are responsible for deciding which Orders, if any, can be deleted in your production Project.
If a DiscountCode with a maxApplications
or maxApplicationsPerCustomer
limit has been applied to the Order, the deleted Order is still counted towards that limit.
Deleting an Order produces the OrderDeleted Message.
manage_orders:{projectKey}
region String ​ | Region in which the Project is hosted. |
projectKey String ​ |
|
id String ​ |
|
version Int ​ | Last seen version of the resource. |
expand | The parameter can be passed multiple times. |
dataErasure Boolean ​ | To erase all related personal data in compliance with GDPR, set to Default: false ​ |
application/json
curl -X DELETE https://api.{region}.commercetools.com/{projectKey}/orders/{id}?version={version} -i \
--header "Authorization: Bearer ${BEARER_TOKEN}"
{
"type": "Order",
"id": "92f5a867-bf19-47ab-982c-6720a03a3921",
"version": 1,
"createdAt": "2017-01-04T19:54:49.797Z",
"lastModifiedAt": "2017-01-04T19:54:49.797Z",
"totalPrice": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"orderState": "Open",
"syncInfo": [],
"returnInfo": [],
"refusedGifts": [],
"taxMode": "External",
"inventoryMode": "None",
"taxRoundingMode": "HalfEven",
"customerId": "7297c742-d8b0-484b-aadc-1d0ba6769dc9",
"businessUnit": {
"typeId": "business-unit",
"key": "ba-france-123"
},
"lineItems": [
{
"id": "7297c742-d8b0-484b-aadc-1d0ba1869dc9",
"productId": "c5c75935-595a-4cc3-a80e-24e9a9c55094",
"name": {
"en": "MyProduct"
},
"productType": {
"typeId": "product-type",
"id": "a5c7e173-9754-4f02-9b18-a600896ae0e1",
"version": 21
},
"productSlug": {
"de": "neues-produkt-slug-1234678",
"en": "new-product-slug-12345678"
},
"variant": {
"id": 1,
"sku": "some-sku-123",
"prices": [
{
"value": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"id": "6d36dc85-6131-495d-9f20-d00f411d4124"
}
],
"images": [],
"attributes": [
{
"name": "text",
"value": "attribute-value"
},
{
"name": "enum",
"value": {
"key": "test",
"label": "test"
}
}
],
"assets": []
},
"price": {
"id": "6d36dc85-6131-495d-9f20-d00f411d4124",
"value": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
}
},
"quantity": 1,
"discountedPricePerQuantity": [],
"taxRate": {
"name": "Bla",
"amount": 0.1,
"includedInPrice": false,
"country": "DE",
"subRates": []
},
"state": [
{
"quantity": 1,
"state": {
"typeId": "state",
"id": "7c2e2694-aefe-43d7-888e-6a99514caaca"
}
}
],
"priceMode": "Platform",
"lineItemMode": "Standard",
"totalPrice": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"taxedPrice": {
"totalNet": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"totalGross": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1100
},
"taxPortions": [
{
"rate": 0.1,
"amount": {
"type": "centPrecision",
"currencyCode": "EUR",
"centAmount": 634,
"fractionDigits": 2
},
"name": "Bla"
}
]
},
"perMethodTaxRate": [],
"taxedPricePortions": []
}
],
"customLineItems": [],
"discountCodes": [],
"origin": "Customer",
"shipping": [],
"shippingMode": "Single"
}
Delete Order by OrderNumber
Although it is possible to delete Orders with the manage_orders
scope, we strongly recommend doing so only for test Orders. You are responsible for deciding which Orders, if any, can be deleted in your production Project.
If a DiscountCode with a maxApplications
or maxApplicationsPerCustomer
limit has been applied to the Order, the deleted Order is still counted towards that limit.
Deleting an Order produces the OrderDeleted Message.
manage_orders:{projectKey}
region String ​ | Region in which the Project is hosted. |
projectKey String ​ |
|
orderNumber String ​ |
|
version Int ​ | Last seen version of the resource. |
expand | The parameter can be passed multiple times. |
dataErasure Boolean ​ | To erase all related personal data in compliance with GDPR, set to Default: false ​ |
application/json
curl -X DELETE https://api.{region}.commercetools.com/{projectKey}/orders/order-number={orderNumber}?version={version} -i \
--header "Authorization: Bearer ${BEARER_TOKEN}"
{
"type": "Order",
"id": "92f5a867-bf19-47ab-982c-6720a03a3921",
"version": 1,
"createdAt": "2017-01-04T19:54:49.797Z",
"lastModifiedAt": "2017-01-04T19:54:49.797Z",
"totalPrice": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"orderState": "Open",
"syncInfo": [],
"returnInfo": [],
"refusedGifts": [],
"taxMode": "External",
"inventoryMode": "None",
"taxRoundingMode": "HalfEven",
"customerId": "7297c742-d8b0-484b-aadc-1d0ba6769dc9",
"businessUnit": {
"typeId": "business-unit",
"key": "ba-france-123"
},
"lineItems": [
{
"id": "7297c742-d8b0-484b-aadc-1d0ba1869dc9",
"productId": "c5c75935-595a-4cc3-a80e-24e9a9c55094",
"name": {
"en": "MyProduct"
},
"productType": {
"typeId": "product-type",
"id": "a5c7e173-9754-4f02-9b18-a600896ae0e1",
"version": 21
},
"productSlug": {
"de": "neues-produkt-slug-1234678",
"en": "new-product-slug-12345678"
},
"variant": {
"id": 1,
"sku": "some-sku-123",
"prices": [
{
"value": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"id": "6d36dc85-6131-495d-9f20-d00f411d4124"
}
],
"images": [],
"attributes": [
{
"name": "text",
"value": "attribute-value"
},
{
"name": "enum",
"value": {
"key": "test",
"label": "test"
}
}
],
"assets": []
},
"price": {
"id": "6d36dc85-6131-495d-9f20-d00f411d4124",
"value": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
}
},
"quantity": 1,
"discountedPricePerQuantity": [],
"taxRate": {
"name": "Bla",
"amount": 0.1,
"includedInPrice": false,
"country": "DE",
"subRates": []
},
"state": [
{
"quantity": 1,
"state": {
"typeId": "state",
"id": "7c2e2694-aefe-43d7-888e-6a99514caaca"
}
}
],
"priceMode": "Platform",
"lineItemMode": "Standard",
"totalPrice": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"taxedPrice": {
"totalNet": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"totalGross": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1100
},
"taxPortions": [
{
"rate": 0.1,
"amount": {
"type": "centPrecision",
"currencyCode": "EUR",
"centAmount": 634,
"fractionDigits": 2
},
"name": "Bla"
}
]
},
"perMethodTaxRate": [],
"taxedPricePortions": []
}
],
"customLineItems": [],
"discountCodes": [],
"origin": "Customer",
"shipping": [],
"shippingMode": "Single"
}
Delete Order in Store
Delete Order in Store by ID
Although it is possible to delete Orders with the manage_orders
scope, we strongly recommend doing so only for test Orders. You are responsible for deciding which Orders, if any, can be deleted in your production Project.
If a DiscountCode with a maxApplications
or maxApplicationsPerCustomer
limit has been applied to the Order, the deleted Order is still counted towards that limit.
If the Order exists in the Project but does not have a store
specified, or the store
field references a different Store, this method returns a ResourceNotFound error.
Deleting an Order produces the OrderDeleted Message.
manage_orders:{projectKey}
manage_orders:{projectKey}:{storeKey}
region String ​ | Region in which the Project is hosted. |
projectKey String ​ |
|
storeKey String ​ |
|
id String ​ |
|
version Int ​ | Last seen version of the resource. |
expand | The parameter can be passed multiple times. |
dataErasure Boolean ​ | To erase all related personal data in compliance with GDPR, set to Default: false ​ |
application/json
curl -X DELETE https://api.{region}.commercetools.com/{projectKey}/in-store/key={storeKey}/orders/{id}?version={version} -i \
--header "Authorization: Bearer ${BEARER_TOKEN}"
{
"type": "Order",
"id": "92f5a867-bf19-47ab-982c-6720a03a3921",
"version": 1,
"createdAt": "2017-01-04T19:54:49.797Z",
"lastModifiedAt": "2017-01-04T19:54:49.797Z",
"totalPrice": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"orderState": "Open",
"syncInfo": [],
"returnInfo": [],
"refusedGifts": [],
"taxMode": "External",
"inventoryMode": "None",
"taxRoundingMode": "HalfEven",
"customerId": "7297c742-d8b0-484b-aadc-1d0ba6769dc9",
"businessUnit": {
"typeId": "business-unit",
"key": "ba-france-123"
},
"lineItems": [
{
"id": "7297c742-d8b0-484b-aadc-1d0ba1869dc9",
"productId": "c5c75935-595a-4cc3-a80e-24e9a9c55094",
"name": {
"en": "MyProduct"
},
"productType": {
"typeId": "product-type",
"id": "a5c7e173-9754-4f02-9b18-a600896ae0e1",
"version": 21
},
"productSlug": {
"de": "neues-produkt-slug-1234678",
"en": "new-product-slug-12345678"
},
"variant": {
"id": 1,
"sku": "some-sku-123",
"prices": [
{
"value": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"id": "6d36dc85-6131-495d-9f20-d00f411d4124"
}
],
"images": [],
"attributes": [
{
"name": "text",
"value": "attribute-value"
},
{
"name": "enum",
"value": {
"key": "test",
"label": "test"
}
}
],
"assets": []
},
"price": {
"id": "6d36dc85-6131-495d-9f20-d00f411d4124",
"value": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
}
},
"quantity": 1,
"discountedPricePerQuantity": [],
"taxRate": {
"name": "Bla",
"amount": 0.1,
"includedInPrice": false,
"country": "DE",
"subRates": []
},
"state": [
{
"quantity": 1,
"state": {
"typeId": "state",
"id": "7c2e2694-aefe-43d7-888e-6a99514caaca"
}
}
],
"priceMode": "Platform",
"lineItemMode": "Standard",
"totalPrice": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"taxedPrice": {
"totalNet": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"totalGross": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1100
},
"taxPortions": [
{
"rate": 0.1,
"amount": {
"type": "centPrecision",
"currencyCode": "EUR",
"centAmount": 634,
"fractionDigits": 2
},
"name": "Bla"
}
]
},
"perMethodTaxRate": [],
"taxedPricePortions": []
}
],
"customLineItems": [],
"discountCodes": [],
"origin": "Customer",
"shipping": [],
"shippingMode": "Single"
}
Delete Order in Store by OrderNumber
Although it is possible to delete Orders with the manage_orders
scope, we strongly recommend doing so only for test Orders. You are responsible for deciding which Orders, if any, can be deleted in your production Project.
If a DiscountCode with a maxApplications
or maxApplicationsPerCustomer
limit has been applied to the Order, the deleted Order is still counted towards that limit.
If the Order exists in the Project but does not have a store
specified, or the store
field references a different Store, this method returns a ResourceNotFound error.
Deleting an Order produces the OrderDeleted Message.
manage_orders:{projectKey}
manage_orders:{projectKey}:{storeKey}
region String ​ | Region in which the Project is hosted. |
projectKey String ​ |
|
storeKey String ​ |
|
orderNumber String ​ |
|
version Int ​ | Last seen version of the resource. |
expand | The parameter can be passed multiple times. |
dataErasure Boolean ​ | To erase all related personal data in compliance with GDPR, set to Default: false ​ |
application/json
curl -X DELETE https://api.{region}.commercetools.com/{projectKey}/in-store/key={storeKey}/orders/order-number={orderNumber}?version={version} -i \
--header "Authorization: Bearer ${BEARER_TOKEN}"
{
"type": "Order",
"id": "92f5a867-bf19-47ab-982c-6720a03a3921",
"version": 1,
"createdAt": "2017-01-04T19:54:49.797Z",
"lastModifiedAt": "2017-01-04T19:54:49.797Z",
"totalPrice": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"orderState": "Open",
"syncInfo": [],
"returnInfo": [],
"refusedGifts": [],
"taxMode": "External",
"inventoryMode": "None",
"taxRoundingMode": "HalfEven",
"customerId": "7297c742-d8b0-484b-aadc-1d0ba6769dc9",
"businessUnit": {
"typeId": "business-unit",
"key": "ba-france-123"
},
"lineItems": [
{
"id": "7297c742-d8b0-484b-aadc-1d0ba1869dc9",
"productId": "c5c75935-595a-4cc3-a80e-24e9a9c55094",
"name": {
"en": "MyProduct"
},
"productType": {
"typeId": "product-type",
"id": "a5c7e173-9754-4f02-9b18-a600896ae0e1",
"version": 21
},
"productSlug": {
"de": "neues-produkt-slug-1234678",
"en": "new-product-slug-12345678"
},
"variant": {
"id": 1,
"sku": "some-sku-123",
"prices": [
{
"value": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"id": "6d36dc85-6131-495d-9f20-d00f411d4124"
}
],
"images": [],
"attributes": [
{
"name": "text",
"value": "attribute-value"
},
{
"name": "enum",
"value": {
"key": "test",
"label": "test"
}
}
],
"assets": []
},
"price": {
"id": "6d36dc85-6131-495d-9f20-d00f411d4124",
"value": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
}
},
"quantity": 1,
"discountedPricePerQuantity": [],
"taxRate": {
"name": "Bla",
"amount": 0.1,
"includedInPrice": false,
"country": "DE",
"subRates": []
},
"state": [
{
"quantity": 1,
"state": {
"typeId": "state",
"id": "7c2e2694-aefe-43d7-888e-6a99514caaca"
}
}
],
"priceMode": "Platform",
"lineItemMode": "Standard",
"totalPrice": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"taxedPrice": {
"totalNet": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1000
},
"totalGross": {
"type": "centPrecision",
"fractionDigits": 2,
"currencyCode": "EUR",
"centAmount": 1100
},
"taxPortions": [
{
"rate": 0.1,
"amount": {
"type": "centPrecision",
"currencyCode": "EUR",
"centAmount": 634,
"fractionDigits": 2
},
"name": "Bla"
}
]
},
"perMethodTaxRate": [],
"taxedPricePortions": []
}
],
"customLineItems": [],
"discountCodes": [],
"origin": "Customer",
"shipping": [],
"shippingMode": "Single"
}