The order object
Every field that an order endpoint returns.
Every order endpoint returns this object. Webhooks send it as data.
{
"reference": "ORD-260729-LD4Q",
"externalOrderId": "PO-88213",
"status": "assigned",
"livemode": true,
"branch": { "reference": "noerrebro", "name": "Norrebro Bakery" },
"fleet": { "name": "Copenhagen Couriers" },
"zone": { "code": "CZ-K7M2PQR4", "name": "Central Zone" },
"pickup": {
"street": "Jagtvej 12",
"city": "Copenhagen",
"postcode": "2200",
"coordinates": { "latitude": 55.6969, "longitude": 12.5461 },
"contact": { "name": "Back counter", "phone": "+4535121212" },
"instructions": "Ask at the back counter"
},
"delivery": {
"street": "Sortedam Dossering 55",
"city": "Copenhagen",
"postcode": "2100",
"coordinates": { "latitude": 55.6928, "longitude": 12.5701 },
"instructions": "Gate code 4471, second floor"
},
"customer": {
"reference": "cust_8821",
"firstName": "Alex",
"lastName": "Doe",
"companyName": null,
"email": "alex@example.com",
"phone": "+4520123456"
},
"schedule": {
"mode": "asap",
"resolved": {
"pickupTime": "2026-07-29T14:20:00+02:00",
"deliveryTime": "2026-07-29T14:50:00+02:00",
"basis": "busy_hours"
}
},
"weight": 2.5,
"numberOfPackages": 1,
"orderAmount": 249.00,
"distance": 3.4,
"co2Kg": 0.41,
"realPickupTime": null,
"realDeliveryTime": null,
"metadata": { "table": "12", "channel": "web" },
"createdAt": "2026-07-29T13:58:00+02:00",
"updatedAt": "2026-07-29T14:02:00+02:00"
}Identity
| Field | Notes |
|---|---|
reference | The Univooz id. Unique in your organization, in both modes. |
externalOrderId | Your id. Also unique in both modes. |
livemode | false for an order from a test key. |
GET, PATCH and cancel accept both identifiers.
Destination
branch, fleet and zone show where the order went.
These fields keep the values from the time of creation. If you change a branch later, old orders do not change.
Times
schedule.resolved is present for all modes, so you always know the agreed times. See
Scheduling.
realPickupTime and realDeliveryTime are what occurred. They are null until the courier
arrives.
Measurements
| Field | Notes |
|---|---|
weight | Kilograms. |
numberOfPackages | A whole number. |
orderAmount | The value of the goods. It is not a delivery price. Univooz does not price deliveries. |
distance | Kilometres, two decimals. |
co2Kg | null until the fleet selects a driver. It comes from that driver's vehicle. |
Metadata
Text keys and text values. Univooz stores them without change and returns them everywhere.
Limits: 50 keys, keys of 64 characters, values of 500 characters. Values must be text.
Univooz rejects objects inside metadata.
In a PATCH, metadata and pickupContact replace the old value. Univooz does not
merge them.
Not in the object
- No driver name and no driver position. This API gives no driver location data.
- No
request_id. That field belongs to the response, not to the order. It is absent fromdata[]in a list, and fromdatain a webhook.