Skip to main content

Order classification

Every order in Future Ordering carries three classification fields that describe what kind of order it is, where it came from, and how the guest will receive it. Understanding these fields is essential for selecting the correct menu and building integrations that behave correctly across different fulfilment scenarios.

Order type

The orderTypeId field identifies the type chosen by the guest at the start of an order's flow. It drives store-level configuration such as which menu is presented.

orderTypeId is always present on an order - it is never absent or unknown. The field is case-insensitive and accepts the following values:

ValueDescription
eatinThe guest will consume their order at the venue.
takeawayThe guest will take their order away from the venue.
deliveryThe order will be delivered to the guest.
note

In some legacy contexts, order type may be referred to as order class. The two terms refer to the same concept.

Sales channel

The salesChannel object describes the channel through which the order was placed. Use this field to identify the originating client and adapt integration behaviour accordingly.

The type property indicates the channel:

ValueDescription
browserThe order was placed in a web browser.
mobileAppThe order was placed in a mobile application.
kioskThe order was placed at a self-service kiosk.
externalThe order originated from an external system.

Depending on the channel, salesChannel can carry additional metadata. For browser and mobile app orders, this includes the user agent string, client version, and operating system.

{
"type": "mobileApp",
"webClientVersion": "9.3.8",
"operatingSystem": "iOS",
"mobileAppVersion": "10.0.29",
"userAgentString": "Mozilla/5.0 (iPhone; CPU iPhone OS 18_7 like Mac OS X)..."
}

Collection details

The collectionDetails object describes how the order will be collected. The type property specifies the fulfilment method:

ValueDescription
pickupThe guest collects the order at a designated pickup point.
curbsideThe order is brought to the guest's vehicle outside the venue.
drivethruThe guest collects the order at a drive-through window.
pickuplockerThe order is placed in a locker for self-service collection.
roomserviceThe order is delivered to a room (for example, in a hotel or stadium.)
tableserviceThe order is delivered to a table at the venue.

Depending on the type, collectionDetails may include additional properties. For example, a pickup order can include a pickupZone identifying where in the venue the guest should collect the order:

{
"type": "pickup",
"pickupZone": "Counter 3 — Main entrance"
}

A curbside order may include vehicle details supplied by the guest, which the venue uses to identify the car on arrival.

note

In some cases, collectionDetails may include a guest's personal data and will require special client permissions to read. See Obtaining an API Client for more information.