Glossary - POS Orders
❗️Legacy Attributes
Certain attributes appear in the order payload but should not be referenced as part of an integration and are marked as 'LEGACY PARAMETER'
Certain attributes appear in the order payload but should not be referenced as part of an integration and are marked as 'LEGACY PARAMETER'
ⓘ Order Data
Please note that all the fields marked with ( * ) will always be present in the order payload and contain data.
Please note that all the fields marked with ( * ) will always be present in the order payload and contain data.
Parameters | Meaning | Type |
---|---|---|
_created * | Order created timestamp is in UTC yyyy-MM-ddTHH:mm:ssZ | string |
_updated * | Updated order timestamp is in UTC yyyy-MM-ddTHH:mm:ssZ | string |
_id * | Unique identifier of the order in Deliverect. Please note cancel requests get a separate order _id (see cancellation guide here) | string |
account * | Unique customer account ID in Deliverect | string |
channelOrderId * | The full unique ID from the delivery channel. Together with the channel is guaranteed to be unique for 48h after pickup. | string |
channelOrderDisplayId * | Alternative order ID set by ordering channel, primarily for convenience and readability. This is not unique and typically a shortened version of channelOrderId consisting of 4-5 alphanumeric characters, although may go up to 12 characters. | string |
channelOrderKey | Alternative ID when is supported | string |
posId | The POS order ID | string |
posReceiptId | Provided by the POS in response to incoming orders as a reference to a specific POS receipt. | string |
posLocationId | Location ID set in Deliverect to identify the POS (used as part of POS Registration action) | string |
location * | Unique ID for the POS to identify the store location | string |
channelLink * | Unique identifier of the channel (merchant store) in Deliverect | string |
status * | Order status (see list here) | integer |
statusHistory | All status history at time of order injection | array [object] |
statusHistory.timeStamp | All timestamps are in UTC yyyy-MM-ddTHH:mm:ssZ | string |
statusHistory.status | Order status (full list here) | integer |
statusHistory.response | In case of error, it will be populated here | string |
statusHistory.source | Source of status update 1 =POS2 =Channel and5 = Internal | integer |
packaging | object | |
packaging.includeCutlery | Specifies if cutlery should be included or not | boolean |
by | Order source (if known) e.g. 'app' or 'mobile' not the same as"channel" that specifies the ordering platform (see guide here | string |
orderType * | Type of order (see full list here) | integer |
channel * | Unique ID of the channel (see GET Integrated channels) | integer |
pos | Unique ID of the POS | integer |
rating | LEGACY PARAMETER | array of objects |
pickupTime | Pickup time order timestamp is in UTC yyyy-MM-ddTHH:mm:ssZ | string |
estimatedPickupTime | Estimated pickup time order timestamp is in UTC yyyy-MM-ddTHH:mm:ssZ LEGACY PARAMETER | string |
deliveryTime | Delivery time order timestamp is in UTC yyyy-MM-ddTHH:mm:ssZ | string |
deliveryIsAsap | Signifies if the order is required as soon as possible | boolean |
courier | Details of courier | array [object] |
courier.firstName | Courier's first name | string |
courier.lastName | Courier's last name | string |
courier.phoneNumber | Courier's phone number | string |
courier.deliveryBy | Identifies who is delivering an order. There are only two possible variations; •If ordering platform is handling delivery, they'd specify their channel name e.g. "Order.com" • If restaurant is managing self delivery or fulfilment is handled by 3rd party, "restaurant" must be specified (essential for integrated Dispatch services to work) | string |
courier.status | See here | integer |
courierUpdateHistory | array [object] | |
courierUpdateHistory.status | See here all the Statuses | integer |
courierUpdateHistory.received | Timestamp when the update was received | string |
courierUpdateHistory.courier | Courier info updates | object |
courierUpdateHistory.arrivalTime | Courier arrival time | string |
courierUpdateHistory.deliveryTime | Courier delivery time | string |
courierUpdateHistory.source | The source from where the update is coming1 =POS2 =Channel and5 = Internal | integer |
customer | customer is the end-consumer | object |
customer.name | Name of the customer | string |
customer.companyName | Company name | string |
customer.phoneNumber | e.g "+31618776767" | string |
customer.phoneAccessCode | Phone access code used to contact channel support (e.g. 1123) | string |
customer.email | email address where provided | string |
customer.note | note from the customer (e.g. "Call once you arrive") | string |
customer.tin | tax identification number | string |
deliveryAddress | Provided address for an order | object |
deliveryAddress.street | This includes the street number where provided e.g. "Stationsstraat 79e" | string |
deliveryAddress.postalCode | e.g. "3811 MH" | string |
deliveryAddress.city | e.g. "Amersfoort" | string |
deliveryAddress.country | e.g. "Netherlands" | string |
deliveryAddress.coordinates.coordinates | Longitude and Latitude expressed as below;"coordinates": { "coordinates": [ 9.124598503112793, 45.50004196166992 ] } | array |
deliveryAddress.source | "source" is sent to POS where address information exists. "source" should help POS to handle address variations from different countries. | string |
deliveryAddress.extraAddressInfo | e.g. (second floor) | string |
orderIsAlreadyPaid * | Statement of whether an order was paid online or not | boolean |
taxTotal | taxTotal is the sum of deliveryTax + serviceChargeTax + deliveryCostTax . | integer |
taxes | All taxes to an order | array [object] |
taxes.name | e.g. VAT | string |
taxes.taxClassId | e.g 0, 1 or 2 | integer |
taxes.total | The composite total of all taxes | integer |
taxRemitted | Some ordering platforms collect and pay taxes and share this info with us as a value-remitted tax. | integer |
payment | object | |
payment.amount * | Total amount tendered | integer |
payment.type * | Payment method applied (full list here) | integer |
payment.due | Any outstanding amount to be collected from the customer if there is a cash (unpaid) order. | integer |
payment.rebate | This includes any discounts offered by the channels. POS may need this information for reporting purposes. The ordering customer needs to pay the amount without the rebate, but the restaurant will receive the total amount from the channel. | integer |
payment.commissionType | The type of commission rate charged can be categorised by the channel | string |
note | Overall note for an order | string |
items | All the items included in a order | array [object] |
items.plu * | Unique reference for the product | string |
items.name * | The name of the Product and the Modifier | string |
items.kitchenName | An optional additional name for the product that will be sent through with the order | string |
items.price * | Price set for the Product and the Modifier | integer |
items.quantity * | Quantity of item ordered, for subItems quantity, see guide here | integer |
items.productType * | Specific type of item here | integer |
items.remark | A note specific to an individual item | string |
items.isInternal | Non-applicable to generic POS integrations | boolean |
items.subItems | All subitems are items associated with the product ordered. The quantity is multiplied by however many top-level items are ordered see guide here | array [object] |
items.subitems.inBundle | Indicates the subItems is contained inside a bundle | boolean |
items.productTags | Indicates the tags contained inside a product | array |
items.isCombo | Indicates a product sold is part of a combo | boolean |
items.sortOrder | The 'stepped' order of any auto-applied items, where 0 is the first item to be listed (see guide here) | integer |
items.discountReferenceIds | An array of identifiers for each discount applied to an item (see guide here) | array [integer] |
decimalDigits | Precision of order and payment amounts | integer |
numberOfCustomers | Indicates how many diners (applicable to table ordering) | integer |
channelOrderRawId | Deliverect internal ID of an order | string |
channelOrderHistoryRawIds | LEGACY PARAMETER | array [string] |
serviceCharge | Service charge applied | integer |
deliveryCost | Delivery cost applied | integer |
bagFee | A surcharge applied for the packaging | integer |
tip | A tip intended for the restaurant operator | integer |
driverTip | A tip intended for the driver/courier | integer |
discountTotal | Ordering platforms may offer multiple forms of discount e.g. % discount. A discount total is sent as a minus value representing the deduction from the total order (see guide here) | negative integer |
discounts | All applied discounts within an order | array [object] |
discounts.type | Mapped channel discount type from the list of Discount Types in Deliverect. | string |
discounts.provider | The issuer of the discount i.e. the one who bears the discounted amount. | Enum |
discounts.name | The name of the discount. | string |
discounts.channelDiscountCode | The unique discount code used by the channel | string |
discounts.referenceId | A unique identifier of the discount, where applicable, this will show against items included in discount | integer |
discounts.value | It is the flat amount of money or percentage covered by the discount which is stored with precision 2, so $1.50 -> 150 ,# 25.1% -> 2510 | integer |
discounts.amount | Actual amount discounted e.g. 10% off on $50 bill, the value will be 1000 and amount will be 500 . | integer |
discounts. amountRestaurant | The amount of the restaurant's contribution to the discount | integer |
discounts. amountChannel | The amount of the channel's contribution to the discount | integer |
capacityUsages | LEGACY PARAMETER | array [string] |
recent | LEGACY PARAMETER | boolean |
resolvedBy | LEGACY PARAMETER | string |
brandId | Appears where customer operates multiple brands from one location Get account brands | string |
testOrder | only applicable as 'true ' in staging environment via menu preview orders | boolean |
timezone | e.g. "Europe/London" (see TZ list here) | string |
date | Order created date in format YMD | integer |
tags | Custom tag(s) applied to the store location, typically a brand name e.g. "tags": ["Best Burger"] | array [string] |