Skip to content

Update Order

Request

Updates a fulfilment order. Top-level fields you omit keep their current values, with one exception: billing_address must be sent on every request, as a complete address, and becomes the order's billing address. A request without it currently fails with a server error.

An address or products list you send replaces the current one whole, so send complete addresses and the full product list.

To cancel the order, send status cancelled. The status can only change while the order is pending, problematic or wms_on_hold, so an order cannot be cancelled once picking has started.

An order can be updated while it is pending, problematic, wms_on_hold or picking_started. In any later status the update is rejected.

Security
BearerAuth or OAuth2
Path
idstringrequired

The order id returned when the order was created.

Bodyapplication/json
billing_addressobject(AddressRequest)required

An address on an order request.

carrierstring

Changes the carrier. Omit it to keep the current value.

incotermstring

Changes the Incoterm of an export. Omit it to keep the current value.

origin_addressobject(AddressRequest)

An address on an order request.

payment_amountnumber

Changes the amount to collect. Omit it to keep the current amount.

payment_modestring(PaymentMode)

pre_paid when you have already taken payment, paid_on_delivery when the courier collects it.

Enum:"pre_paid""paid_on_delivery"
productsArray of objects(OrderProductUpdate)

Replaces the order's products. Each line may override catalogue values for this order. Omit it to keep the current products.

service_kindstring(ServiceKind)

The delivery service of an order.

Enum:"partner_next_day""partner_same_day""partner_4hr""partner_export""partner_store""partner_return"
shipping_addressobject(AddressRequest)

An address on an order request.

statusstring

Send cancelled to cancel the order. The status can only change while the order is pending, problematic or wms_on_hold, and only to cancelled, pending, problematic or wms_on_hold. Any other value or transition is rejected. Omit it to leave the status unchanged.

Enum:"cancelled""pending""problematic""wms_on_hold"
curl -i -X PATCH \
  'https://platform-api.quiqup.com/api/fulfilment/orders/{id}' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "billing_address": {
      "address1": "Villa 12, Street 4",
      "address2": "Al Wasl",
      "city": "Dubai",
      "country_code": "AE",
      "email": "sara.ahmed@example.com",
      "first_name": "Sara",
      "last_name": "Ahmed",
      "phone": "+971500000001",
      "state": "Dubai"
    },
    "status": "cancelled"
  }'

Responses

Success response

Bodyapplication/json
billing_addressobject(CreateFulfilmentOrderAddressResponse)

An address on an order.

carrierstring

The carrier the order ships with.

created_atstring, (date-time)

When the order was created.

currencystring

Three-letter ISO 4217 code for payment_amount.

delivery_optionsArray of strings

Special delivery requirements, for example customer_identification_photo.

errorsArray of objects

Problems recorded against the order, each as a set of key and value strings.

idstring

The order id, a number sent as a string. It is the id you pass to GET and PATCH, and order.* webhooks carry the same number as payload.id.

incotermstring

The Incoterm of an export.

initial_order_idstring

For a return, the original order's id.

is_returnboolean

Whether this is a return order.

notesstring

Delivery instructions for the courier.

origin_addressobject(CreateFulfilmentOrderAddressResponse)

An address on an order.

parcelsArray of objects(ParcelResponse)

The parcels the warehouse packed the order into.

partner_order_idstring

Your own reference for the order.

payment_amountnumber

What the courier collects from the customer.

payment_modestring(PaymentMode)

pre_paid when you have already taken payment, paid_on_delivery when the courier collects it.

Enum:"pre_paid""paid_on_delivery"
picking_order_createdboolean

True once the order has been sent to the warehouse for picking.

productsArray of objects(OrderProductResponse)

List of products included in the order.

referencesArray of objects(OrderReference)

The references attached to the order when it was created.

service_kindstring

The delivery service: partner_next_day, partner_same_day, partner_4hr, partner_export, partner_store or partner_return. A return order reports partner_return.

shipping_addressobject(CreateFulfilmentOrderAddressResponse)

An address on an order.

statusstring(OrderStatus)

Status of an order. pending (created, and waiting for or in the warehouse), problematic (a stock or warehouse problem that needs attention), wms_on_hold (held in the warehouse system) and picking_started occur only on fulfilment orders. From ready_for_collection the order follows the shared order lifecycle.

Enum:"pending""ready_for_collection""picking_started""out_for_collection""out_for_return""at_depot""received_at_depot""in_transit""out_for_delivery""collection_failed"
status_reasonstring

Why the order is in its current status, for example the warehouse error behind problematic.

tracking_urlstring

Tracking page for the order.

tracking_url_advancestring

Tracking page with more detail.

updated_atstring, (date-time)

When the order was last changed.

uuidstring

The order UUID. order.* webhooks carry it as payload.uuid.

Response
{ "billing_address": { "address1": "string", "address2": "string", "city": "string", "coordinate": { … }, "country": "string", "country_code": "string", "created_at": "2019-08-24T14:15:22Z", "email": "string", "first_name": "string", "ksa_national_address": "string", "last_name": "string", "name": "string", "notes": "string", "phone": "string", "postcode": "string", "state": "string", "updated_at": "2019-08-24T14:15:22Z" }, "carrier": "string", "created_at": "2019-08-24T14:15:22Z", "currency": "string", "delivery_options": [ "customer_identification_photo" ], "errors": [ { … } ], "id": "string", "incoterm": "string", "initial_order_id": "string", "is_return": true, "notes": "string", "origin_address": { "address1": "string", "address2": "string", "city": "string", "coordinate": { … }, "country": "string", "country_code": "string", "created_at": "2019-08-24T14:15:22Z", "email": "string", "first_name": "string", "ksa_national_address": "string", "last_name": "string", "name": "string", "notes": "string", "phone": "string", "postcode": "string", "state": "string", "updated_at": "2019-08-24T14:15:22Z" }, "parcels": [ { … } ], "partner_order_id": "string", "payment_amount": 0, "payment_mode": "pre_paid", "picking_order_created": true, "products": [ { … } ], "references": [ { … } ], "service_kind": "string", "shipping_address": { "address1": "string", "address2": "string", "city": "string", "coordinate": { … }, "country": "string", "country_code": "string", "created_at": "2019-08-24T14:15:22Z", "email": "string", "first_name": "string", "ksa_national_address": "string", "last_name": "string", "name": "string", "notes": "string", "phone": "string", "postcode": "string", "state": "string", "updated_at": "2019-08-24T14:15:22Z" }, "status": "pending", "status_reason": "string", "tracking_url": "string", "tracking_url_advance": "string", "updated_at": "2019-08-24T14:15:22Z", "uuid": "string" }