Create an order
Create an order in Propeller from an external system like an ERP or marketplace, including line items, addresses, payment and shipping data.
Endpoint
POST /v2/orders
Request
{
"userId": 174112,
"email": "customer@example.com",
"currency": "EUR",
"language": "NL",
"type": "dropshipment",
"status": "NEW",
"items": [
{
"class": "product",
"productId": 408,
"quantity": 3,
"sku": "WBH-PRO-500",
"name": "Wireless Bluetooth Headset Pro",
"originalPrice": 89.95,
"price": 89.95,
"priceTotal": 269.85,
"taxPercentage": 21,
"taxCode": "H",
"isBonus": "N"
}
],
"paymentData": {
"net": 269.85,
"gross": 326.52,
"tax": 56.67,
"taxPercentage": 21,
"method": "invoice",
"status": "unknown",
"overruled": "N"
},
"postageData": {
"method": "DELIVERY",
"taxPercentage": 21,
"gross": 6.95,
"net": 5.74,
"tax": 1.21,
"carrier": "PostNL",
"partialDeliveryAllowed": "N",
"overruled": "N"
},
"total": {
"gross": 276.80,
"net": 332.26,
"tax": 55.46,
"discountType": "N",
"discountValue": 0
},
"addresses": [
{
"type": "invoice",
"firstName": "Jan",
"lastName": "de Vries",
"company": "Voorbeeld B.V.",
"street": "Keizersgracht",
"number": "100",
"postalCode": "1015AA",
"city": "Amsterdam",
"country": "NL",
"gender": "M",
"icp": "N"
},
{
"type": "delivery",
"firstName": "Jan",
"lastName": "de Vries",
"company": "Voorbeeld B.V.",
"street": "Keizersgracht",
"number": "100",
"postalCode": "1015AA",
"city": "Amsterdam",
"country": "NL",
"gender": "M",
"icp": "N"
}
]
}
Response
{
"id": 20130,
"uuid": "019d1f84-c51e-733f-9043-cb02100d2cb8",
"status": "NEW",
"type": "dropshipment",
"email": "customer@example.com",
"currency": "EUR",
"language": "NL",
"date": "2026-03-24T11:04:48.159Z",
"createdAt": "2026-03-24T11:04:48.159Z",
"postageData": {
"method": "DELIVERY",
"taxPercentage": 21,
"gross": 6.95,
"net": 5.74,
"tax": 1.21,
"partialDeliveryAllowed": "N",
"overruled": "N",
"carrier": "PostNL"
},
"paymentData": {
"net": 269.85,
"gross": 326.52,
"tax": 56.67,
"taxPercentage": 21,
"method": "invoice",
"status": "unknown",
"overruled": "N"
},
"total": {
"gross": 276.80,
"net": 332.26,
"tax": 55.46,
"discountValue": 0,
"discountType": "N"
},
"addresses": [
{
"type": "invoice",
"firstName": "Jan",
"lastName": "de Vries",
"company": "Voorbeeld B.V.",
"street": "Keizersgracht",
"number": "100",
"postalCode": "1015AA",
"city": "Amsterdam",
"country": "NL",
"id": 34861,
"orderId": 20130
},
{
"type": "delivery",
"firstName": "Jan",
"lastName": "de Vries",
"company": "Voorbeeld B.V.",
"street": "Keizersgracht",
"number": "100",
"postalCode": "1015AA",
"city": "Amsterdam",
"country": "NL",
"id": 34862,
"orderId": 20130
}
],
"userId": 174112,
"exportedAt": null,
"exportStatus": "",
"exportMessage": null
}
How it works
The request requires a valid userId that exists in Propeller. The items array contains line items with product references, quantities and pricing. Each item needs class set to product, a productId or sku to identify the product, and pricing fields including originalPrice, price, priceTotal and taxPercentage. The addresses array must include at least one invoice and one delivery address. If the order is imported from an external system and should not be re-exported, set exportStatus to exported on creation to prevent export loops.