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'
ⓘ Order 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 are processed as new orders with "status": 100 and bearing original 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 channelOrderIdconsisting 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. Retrieve all Ids per account via GET Channel Links

string

status *

Order status (see list here)

integer

statusHistory

All status history at time of order injection

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=POS 2=Channel and 5= Internal

integer

packaging

object

packaging.includeCutlery

Specifies if cutlery/utensils 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

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

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 coming 1=POS 2=Channel and 5= 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

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 . It will be sent as an integer with 2 decimal digits e.g. 1 euro would be sent as 100.

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. It will be sent as an integer with 2 decimal digits e.g. 1 euro would be sent as 100.

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. It will be sent as an integer with 2 decimal digits e.g. 1 euro would be sent as 100.

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

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. It will be sent as an integer with 2 decimal digits e.g. 1 euro would be sent as 100.

integer

items.bottleDepositPrice

Where a deposit fee has been applied this will show the cost applied

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

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)

decimalDigits

Decimal 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

serviceCharge

Service charge applied It will be sent as an integer with 2 decimal digits e.g. 1 euro would be sent as 100.

integer

deliveryCost

Delivery cost applied It will be sent as an integer with 2 decimal digits e.g. 1 euro would be sent as 100.

integer

bagFee

A surcharge applied for the packaging It will be sent as an integer with 2 decimal digits e.g. 1 euro would be sent as 100.

integer

tip

A tip intended for the restaurant operator It will be sent as an integer with 2 decimal digits e.g. 1 euro would be sent as 100.

integer

driverTip

A tip intended for the driver/courier

It will be sent as an integer with 2 decimal digits e.g. 1 euro would be sent as 100.

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)

It will be sent as an integer with 2 decimal digits e.g. 1 euro would be sent as 100.

negative integer

discounts

All applied discounts within an order

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 list of provider types in Deliverect

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.

It will be sent as an integer with 2 decimal digits e.g. 1 euro would be sent as 100.

integer

discounts. amountRestaurant

The amount of the restaurant's contribution to the discount It will be sent as an integer with 2 decimal digits e.g. 1 euro would be sent as 100.

integer

discounts. amountChannel

The amount of the channel's contribution to the discount

It will be sent as an integer with 2 decimal digits e.g. 1 euro would be sent as 100.

integer

capacityUsages

LEGACY PARAMETER

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"]