Glossary - Menus

📘

Menu Data

Please note that all the fields marked with ( * ) will always be present in the menu payload and contain data.

❗️

Legacy Attributes

Certain attributes appear in the menu payload but should not be referenced as part of an integration and are marked as 'LEGACY PARAMETER'

ParametersMeaningType
menu * The name of the menustring
menuTranslationstranslation of the menu name with language codes as keys (see guide here)object of strings
descriptiondescription of the menustring
descriptionTranslationstranslation of the menu description with language codes as keys (see guide here)object of strings
menuImageUrlHeader/Banner image url of the menu (more info on images here)string
menuId * internal Deliverect menu id string
menuType * Five different types of menus, with each representing the intended ordering type for which the menu is suitable;
DELIVERY_AND_PICKUP = 0
DELIVERY = 1
PICKUP = 2
EAT_IN = 3
CURBSIDE = 4
integer
channelLinkId * the id for the channelLink that this menu is published tostring
nestedModifiers * Indicates that nested modifiers are present in the menuboolean
currencycurrency of the menustring
productTagsArray of all tags that exist in the menu (see guide here)array of integers
availabilitiesThe times during which the menu should be available. This will in most cases equate to the store's opening hours.array of objects
availabilities.dayOfWeekAn integer value that indicates the day of the week for this availability (starting at 1 for Monday). integer
availabilities.startTimeA 24-hour HH:MM format notation of the start time of availability expressed in the local time of the location.string
availabilities.endTimeA 24-hour HH:MM format notation of the end time of availability expressed in the local time of the location.string
categoriesThe categories within a menuarray of objects
categories._idinternal Deliverect id of the categorystring
categories.namecategory namestring
categories.nameTranslationstranslations of the category name with language codes as keys (see guide here)object of strings
categories.description description of the categorystring
categories.descriptionTranslationstranslation of the category description with language codes as keys (see guide here)object of strings
categories.imageUrlimage url of the category (see more info on images here)string
categories.availabilitiescategory availabilitiesarray of objects
categories.availabilities.dayOfWeekAn integer value that indicates the day of the week for this categories availability (starting at 1 for Monday).integer
categories.availabilities.startTimeA 24-hour HH:MM format notation of the start time of availability expressed in the local time of the location.string
categories.availabilities.endTimeA 24-hour HH:MM format notation of the start time of availability expressed in the local time of the location.string
categories.availabilities.categoryUnique ID of the menu categorystring
categories.subProductsproducts that exist under each category, see guide here for more context on correct sorting string
categories.menu the unique ID of the menu this category belongs tostring
categories.accountthe unique ID of the account this category belongs tostring
categories.posLocationId LEGACY PARAMETERstring
categories.posCategoryType LEGACY PARAMETERstring
categories.posCategoryId LEGACY PARAMETERarray of strings
categories.subCategories LEGACY PARAMETERarray of strings
categories.sortedChannelProductIds LEGACY PARAMETER for correct sorting, see subProductsarray of strings
categories.subProductSortOrder LEGACY PARAMETER for correct sorting, see subProducts string
categories.level LEGACY PARAMETERinteger
products / modifiers
modifierGroups / bundles
*Seperate keys for "products", "modifiers", modifierGroups and bundles exist, they share many attributes as listed below and for documentation purposes, are referred to as items array of objects
items._id * Identifier of a particular item and it's location in the menu structure.string
items.plu * Unique identifier of the item, to be used when creating orders string
items.imageUrlImage associated with the item (see more info on images here)string
items.name * Item namestring
items.price * price of the iteminteger
items.bottleDepositPriceCertain regions require deposits to apply for purchases of bottled drinks, this will be included in the price, the deposit should be displayed to the consumer (see guide here)integer
items.nameTranslationstranslation of an item name with language codes as keys (see guide here)string
items.productType * PRODUCT = 1
MODIFIER = 2
MODIFIER GROUP = 3
BUNDLE = 4
integer
items.descriptionitem descriptionstring
items.descriptionTranslationstranslation of the item description with language codes as keys (see guide here)string
items.deliveryTax * sales tax specific on order type of 'Delivery' for the item. Tax rates are always stored as an int with 3 decimal digits e.g. 5% would be sent as 5000integer
items.takeawayTax * sales tax specific on order type of 'Takeaway' for the item. Tax rates are always sent as an int with 3 decimal digits e.g. 5% would be sent as 5000
items.eatInTax * sales tax specific on order type of 'Eat-in' for the item. Tax rates are always sent as an int with 3 decimal digits e.g. 5% would be sent as 5000integer
items.max * maximum number of items under a group to be purchased integer
items.min * minimum number of items under a group to be purchased integer
items.multiMax maximum quantity of any single item which can be purchased within a group (modifier group/bundles)

Also applicable to Products where it should control how many items can be added to a basket e.g. Paracetomal
integer
items.defaultQuantitythis controls the behaviour of 'pre-selected' items, where a quantity >0 should be automatically selected (typically '1') higher default quantities can also be setinteger
items.multiply * multiply is used in bundles to show this product multiple times in the GUI, 1 means one entry (so no copies)integer
items.isVariantApplicable to a product to indicate if it is a variant or not (see guide here)boolean
snoozed * Indicates whether an item is snoozed at the point of a menu being publishedboolean
items.visible LEGACY PARAMETER (the value will always be set to "true)boolean
items.productTagsAll tags which apply to this item, see complete list hereinteger
items.accountUnique customer account ID where the item is storedstring
items.referenceIdthe original PLU of the item, only for tracking sales e.g. for loyalty purposes. Not to be included in the payload for order creation.string
items.locationUnique customer location ID where the item is storedstring
items.capacityUsages LEGACY PARAMETERstring
items.subProducts list of items belonging to the groupstring
items.beverageInfoinformation specific to beveragesobject
items.beverageInfo.caffeineexpressed in mginteger
items.beverageInfo.alcoholexpressed in mginteger
items.caloriesexpressed in kcal / Calsinteger
items.caloriesRangeHighif a range is supported, the minimum would be "calories" and maximum"caloriesRangeHigh"integer
items.nutritionalInfoExpressed in grams e.g. fat, sugar, saturatedFat, carbohydrates, protein, saltetc (see this section of product guide here)integer
items.nutritionalInfo.servingSizedetails of a serving size nested object
items.nutritionalInfo.servingSize.amountthe serving size amountinteger
items.nutritionalInfo.servingSize.unitTypeWhat the serving size unit type is;
Weight = 1

Volume = 2
Count = 3
integer
items.nutritionalInfo.servingSize.countUnitDescriptionthe serving size unit descriptionstring
items.nutritionalInfo.netQuantitydetails on quantity nested object
items.nutritionalInfo.netQuantity.amountthe net quantity amountinteger
items.nutritionalInfo.netQuantity.unitTypeWhat the net quantity unit type is;
Weight = 1

Volume = 2
Count = 3
integer
items.nutritionalInfo.netQuantity.countUnitDescriptionthe net quantity unit description
items.packagingdetails on the packagingobject
items.packaging.countquantity of packaginginteger
items.packaging.reusablewhether packaging is re-usable or notboolean
items.packaging.storageInstructionsinstructions for storagestring
items.supplementalInfoadditional information about an itemobject
items.supplementalInfo.legalNamelegal name of the itemstring
items.supplementalInfo.instructionsForUseany specific instructions for usestring
items.supplementalInfo.ingredientsarray of ingredientsnested array of strings
items.supplementalInfo.additivesarray of ingredientsnested array of strings
items.supplementalInfo.prepackagedspecifies whether the item is prepackagedboolean
items.supplementalInfo.depositany specific deposit that appliesinteger
items.supplementalInfo.fboDetails of the food business operatornested object strings
items.supplementalInfo.fbo.nameFood business operator namenested object strings
items.supplementalInfo.fbo.addressFood business operator addressstring
items.supplementalInfo.fbo.brandFood business operator brand namestring
items.supplementalInfo.fbo.countryOfOriginFood business operator country of originstring
items.parentId LEGACY PARAMETER (use the subProducts parameter to understand item relationships)string
items.posCategoryIdsthe POS ID of the category this product belongs to in the POSstring
items.posProductCategoryIdthe ID of this product in the POS, internal to POS, not to be used when creating ordersstring
items.posProductIdthe ID of this product in the POS, internal to POS, not to be used when creating ordersstring
items.subProductSortOrdera list of product PLUs belonging to this product that preserves the order of these sub-Productsstring
snoozedProductsPLUs of products and modifiers that are currently snoozed and should be unavailable on the menunested objects
snoozedProducts.{snoozeKey}a unique reference for the snooze object in format "65********************1d"object
snoozedProducts.locationDeliverect location ID where the item is snoozedstring
snoozedProducts.nameItem namestring
snoozedProducts.pluItem referencestring
snoozedProducts.snoozeStartTimestamp in UTC when snooze begins yyyy-MM-dd HH:mm:ss.SSSSSSZstring
snoozedProducts.snoozeEndTimestamp in UTC when snooze ends yyyy-MM-dd HH:mm:ss.SSSSSSZstring
validations LEGACY PARAMETERarray