API referenceOrders
Change an order
PATCH /v1/orders/{reference} — change an order before the courier collects it.
PATCH
/v1/orders/{reference}{reference} is the Univooz reference or your externalOrderId.
Request
Send only the fields you want to change. Univooz keeps the fields you do not send. Send
null to clear a field.
{
"schedule": { "mode": "deliver_by", "time": "2026-07-29T16:00:00+02:00" },
"deliveryInstructions": "Leave with the concierge",
"metadata": { "table": "14" }
}| You can change | You cannot change |
|---|---|
schedule | branch |
pickupInstructions | zoneCode |
deliveryInstructions | customer |
pickupContact | externalOrderId |
metadata | |
weight | |
numberOfPackages | |
orderAmount |
To change a field in the right column, cancel the order and create a new one.
The delivery address is part of customer. You cannot change it.
Response
200 with the order object.
Errors
| Status | Code |
|---|---|
| 400 | invalid_request |
| 401 | invalid_api_key |
| 404 | order_not_found |
| 413 | request_too_large |
| 422 | order_not_amendable — the order is picked_up or later |
| 422 | field_not_amendable |
| 422 | pickup_buffer_violation, pickup_time_in_past, delivery_before_pickup, no_shift_coverage |
Notes
- A
schedulechange obeys the same rules as order creation.asapanddeliver_bycalculate new times.exactuses your times. pickupContactandmetadatareplace the old value. Univooz does not merge them, so send the complete object.- Each change sends one
order.updatedevent, for any number of fields. - An empty body changes nothing and sends no event.