Skip to content

Update Order

Request

Update a Fulfilment Order

📌 Description

This endpoint allows you to update an existing fulfilment order. Depending on the current order status, some fields may not be modifiable.

For example:

  • If the order is already out for delivery, the shipping address cannot be changed.
  • If the order has been picked and packed, modifications to products are no longer possible.
  • Orders that are cancelled or completed cannot be updated.

🔹 Use Cases

  • Updating the shipping address before the order is dispatched.
  • Modifying payment details before dispatched.
  • Adjusting product quantities before fulfilment begins.
  • Cancelling an order if it has not yet been picked and packed.
Security
OAuth2
Path
idstringrequired
Bodyapplication/json
billing_addressobject(types.AddressRequest)required
carrierstring(Carrier updates the delivery carrier for the order )

Optional: Used to specify which carrier should handle the delivery

incotermstring(Incoterm updates the international commercial terms for the order )

Optional: Used for international shipments to define delivery terms

origin_addressobject(types.AddressRequest)required
payment_amountnumber(PaymentAmount updates the amount to be collected )required
payment_modestring(types.PaymentMode)required
Enum:"pre_paid""paid_on_delivery"
productsArray of objects(Products updates the list of products to be delivered )required

For updates, products can include additional fields to override catalog values

service_kindstring(ServiceKind represents the type of delivery service )required
Enum:"partner_next_day""partner_same_day""partner_4hr""partner_export""partner_store""partner_return"
shipping_addressobject(types.AddressRequest)required
statusstring(Status updates the current status of the order )required
curl -i -X PATCH \
  'https://developer-docs.quiqup.com/_mock/openapi/api/fulfilment/orders/{id}' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "billing_address": {
      "address1": "string",
      "address2": "string",
      "city": "string",
      "coordinate": {
        "latitude": 0,
        "longitude": 0
      },
      "country": "string",
      "country_code": "string",
      "email": "string",
      "first_name": "string",
      "ksa_national_address": "string",
      "last_name": "string",
      "name": "string",
      "notes": "string",
      "phone": "string",
      "postcode": "string",
      "state": "string"
    },
    "carrier": "string",
    "incoterm": "string",
    "origin_address": {
      "address1": "string",
      "address2": "string",
      "city": "string",
      "coordinate": {
        "latitude": 0,
        "longitude": 0
      },
      "country": "string",
      "country_code": "string",
      "email": "string",
      "first_name": "string",
      "ksa_national_address": "string",
      "last_name": "string",
      "name": "string",
      "notes": "string",
      "phone": "string",
      "postcode": "string",
      "state": "string"
    },
    "payment_amount": 0,
    "payment_mode": "pre_paid",
    "products": [
      {
        "barcode": "string",
        "country_of_origin": "string",
        "dangerous_goods": true,
        "dimensions": {
          "height": 0,
          "length": 0,
          "unit": "string",
          "width": 0
        },
        "hs_code": "string",
        "quantity": 0,
        "selling_price": 0,
        "sku": "string",
        "weight": 0,
        "weight_unit": "string"
      }
    ],
    "service_kind": "partner_next_day",
    "shipping_address": {
      "address1": "string",
      "address2": "string",
      "city": "string",
      "coordinate": {
        "latitude": 0,
        "longitude": 0
      },
      "country": "string",
      "country_code": "string",
      "email": "string",
      "first_name": "string",
      "ksa_national_address": "string",
      "last_name": "string",
      "name": "string",
      "notes": "string",
      "phone": "string",
      "postcode": "string",
      "state": "string"
    },
    "status": "string"
  }'

Responses

Success response

Bodyapplication/json
billing_addressobject(types.CreateFulfilmentOrderAddressResponse)
carrierstring(Delivery carrier for the order )
created_atstring, (date-time)(Timestamp when the order was created )
currencystring(3-letter ISO currency code (e.g., AED, SAR) )
delivery_optionsArray of strings(Special delivery requirements )

Possible values: leave_at_door, customer_identification_photo

Items Value:"customer_identification_photo"
errorsArray of objects(Array of error messages if any issues occurred )
idstring(Unique identifier for the fulfilment order )
incotermstring(International commercial terms for the order )
initial_order_idstring(Reference to the original order ID for returns )
is_returnboolean(Indicates if this is a return order )
notesstring(Additional delivery instructions or comments )
origin_addressobject(types.CreateFulfilmentOrderAddressResponse)
parcelsArray of objects(List of parcels associated with the order )
partner_order_idstring(Your unique reference for the order )
payment_amountnumber(Total amount to be collected from the customer )
payment_modestring(types.PaymentMode)
Enum:"pre_paid""paid_on_delivery"
picking_order_createdboolean(Indicates if a picking order has been created )
productsArray of objects(List of products included in the order )
referencesArray of objects(External identifiers attached to the order at creation (label/value pairs). )

Echoes back whatever was sent in the create request's `references`.

service_kindstring(Type of delivery service requested )

Possible values: partner_next_day, partner_same_day, partner_4hr, partner_export, partner_store

shipping_addressobject(types.CreateFulfilmentOrderAddressResponse)
statusstring(OrderStatus represents the possible states of an order )
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(Reason for the current status (e.g., why an order was cancelled) )
tracking_urlstring(URL for basic order tracking )
tracking_url_advancestring(URL for advanced order tracking with more details )
updated_atstring, (date-time)(Timestamp when the order was last updated )
uuidstring(UUID of the fulfilment order )
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" }