Menu Sync (POST)

e.g. {{YourSetwebhookUrl}}/menu_update

Your channel will receive this type of request every time a user pushes a menu from within Deliverect.

📘

Glossary

You can create and push a test menu to your channel from your Deliverect test account, which will simulate a real scenario where customers decide to change/update their menu.

Product types

When receiving the menu JSON, you will note each product has a specific type as follows;

Product TypeInteger ValueInteger Value
ProductA 'top level' item on a menu (can also be grouped within a modifier group or bundle)1
ModifierOptions selectable when ordering a product, typically modifications of the product2
Modifier GroupA grouping of modifiers (can also group products)3
BundleCan only contain products which are offered as part of a 'Meal Deal' and which Deliverect will set to zero value4

Modifiers and modifier groups

To explain what modifiers and modifier groups are, consider the following example.

Say that a restaurant sells a product "Build your own pizza" and the restaurant wants to offer the first topping i.e., "Pepperoni" and also the ability to add extra topping "Bacon" and "Mushroom" which has a price.

In Deliverect, this will be modeled using modifiers and modifier groups. Each topping is a modifier, which will end up looking like this in the JSON sent in a menu push request:


  "modifiers": {
    "63578d7b678870d57eb70996": {
                    "name": "Pepperoni",
                    "productType": 2,
                    "plu": "PEPP-#O0#-",
                    "price": 0,
                        }
...
 "63578d7b678870d57eb7099d": {
                    "name": "Bacon",
                    "productType": 2,
                    "plu": "BAC-#O1#-",
                    "price": 100,
                        }   
...
"63578d7b678870d57eb7099f": {
                    "name": "Mushroom",
                    "productType": 2,
                    "plu": "MUSH-#O1#-",
                    "price": 100,

To group the different choices (modifiers), we create a modifier group. The group should have a customer-facing name (e.g., "Choose your First Topping")

The IDs of the modifiers corresponding to each topping are in the subProductsarray,

"modifierGroups": {

"63578d7b678870d57eb7099b": {
                    "name": "Choose your First Two Toppings",
                    "productType": 3,
  ...
                    "plu": "FREE-TOP",
                    "subProducts": [
                        "63578d7b678870d57eb70996",
                        "63578d7b678870d57eb70997",
                        "63578d7b678870d57eb70998",
                        "63578d7b678870d57eb70999",
                        "63578d7b678870d57eb7099a"
                    ],
                    "max": 2,
                    "min": 2,
                    "multiMax":2
...
                },

Minimum, Maximum, Multi-Max

In the example above, you will see the "max", "min" and "multiMax" attributes, these represent certain ordering constraints set when ordering from this group of options.

Certain scenarios as follows can be expected, depending on different configurations of these attributes;

Optional Choice

Where a choice is optional, then you should expect"min": 0to be set.

Required Choice

Where a choice is required, then you should expect"min": 1to be set

Maximum Total Limit (per group)

If customers want to limit the total number of extra toppings to five within any one product selection, you would expect "max": 5.

Maximum Total Limit (per individual option)

If customers want to limit the total number of any one topping to two you would expect "multiMax": 2

Nested Modifiers

These are modifiers that are part of a modifier group which is nested within another modifier group. In the specific example, Chicken Sate, you can select your dish and add a modifier from Rice or Noodles selection. After you do that, you will be asked to choose additional modifiers, like the sate or hot sauce which are nested.

  • Product Type: 1 Chicken Sate
    • Product Type 3: Rice Selection
      • Product Type 2: White Rice
        • Product Type 3: Choose a Sauce
          • Product Type 2: Sate Sauce
          • Product Type 2: Hot Sauce

Bundles

Bundles groups together product options in much the same way a modifier group, groups together modifiers. Also, like a modifier group, a bundle could never be sold on it's own, as it will always belong within a subProducts array.

Using the example below, the product "Burger Combo (Drink Not Included)" represents a typical meal deal which includes the bundle "Burger Selection" that consists of three burger options. It could include any number of bundles and also can be configured with additional modifier groups e.g. upsells like 'Add a Drink? (not included)'

Note that each burger option is a product type 1, which means that these burgers could be available to order on their own elsewhere in a menu where they would have their own price set.

As it is set within a bundle however, Deliverect will ensure that channels receive them with zero price. The only price that would then apply is the cost of the Burger Combo itself *see note below on nesting modifier groups.

The first part of the JSON will look like the following, where the bundle is set within the subProducts array.

"6336b884013cfff666ab5131": {
                    "name": "Burger Combo (Drink not Included)",
                    "productType": 1,
...
                    "plu": "P-BRGR",
                    "price": 950,
...
                    "subProducts": [
                        "6336b884013cfff666ab5132",
                    ],
  ...
            },

The bundle "Burger Selection" is then specified as below and which can include minimum maximum and multiMax attributes.

"bundles": {
                "6336b884013cfff666ab5132": {
                    "name": "Burger Selection",
                    "productType": 4,
...
                    "plu": "BNDL-BRG",
...
                    "subProducts": [
                        "6336b884013cfff666ab5133-B",
                        "6336b884013cfff666ab5134-B",
                        "6336b884013cfff666ab5135-B"
                    ],
                    "max": 1,
                    "min": 1,
...
                },
"6336b884013cfff666ab5134-B": {
                    "name": "Cheeseburger",
                    "productType": 1,
  ...
                    "plu": "P-BURG-CHE###",
                    "price": 0,
                }

📘

Bundle Products > Modifier Groups

Although bundle products will default to being zero priced items, modifier groups can be set which offer additional priced options e.g."Fries Selection" where different product options can be sold.

Multi-select modifiers

In some cases, it must be possible for modifiers in a modifier group to be selected more than once.

Have a look at the JSON menu push example. Look for the modifier group with PLU 2744, more specifically, how max and multiMax are used.

The max field gets a value of two, which indicates the maximum number of modifiers. As there are only two modifiers in the group, this in itself wouldn't make much of a difference when the modifiers are only selectable once.

Adding multiMax indicates that modifiers in this modifier group should be selectable more than once. Because it has a value of two, each modifier should be selectable at most two times.

Maximum Total Limit per Product

Sometimes, merchants would like to restrict the number of products that can be sold within one order. For example, think of medicine products where only one of the medications is allowed to be sold per customer order. This will show in the menu push under the product information with the multiMax value. For example, "multiMax": 1, under a product (not a modifier or option), means that this product can only be sold one time in a given order basket.

To test this scenario, you can add this in the menu sample of your test account, using the Deliverect menu builder. For example, if the product can only be sold one time, then go to Edit menu and edit the product by adding 1 under "Max order limit".

Bottle Deposit

In some countries it is mandatory to charge a deposit for glass bottles and to record this in a POS.

Deliverect can support this by allowing a single 'Bottle Deposit' product with unique PLU to exist in an account.

With this PLU mapped within the POS settings, any order for a product stored with bottledeposit will then also add the specific bottle deposit product to the order sent to the POS.

A channel receiving a product with a bottle deposit will not need to make additional calulcations, as the product price will be inclusive of any deposit price specified. The deposit amount is included for reference and can be displayed to end-users if required "bottleDepositPrice"

"products": {
            "6**f578fa205bc3eca854***": {
                "name": "Ginger Beer",
                "description": "Australia's favourite ginger beer!",
                         ...
                "_id": "6**f645fa205bc3eca854***",
                "account": "6**f894fa205bc3eca854***",
                "location": "6**f241fa205bc3eca854***",
                "productType": 1,
                "plu": "DRNK-03",
                "multiply": 1,
                 ...
                "price": 500,
                "bottleDepositPrice": 100,
                 ...
            }
        },

Product tags: consumable types and allergens

A product can have one or more product tag and these are stored with key productTags. Product tags are used to indicate consumable types and or allergens, which your channel should show in menus to customers.

See a link here for the complete list of allergens with corresponding tag value:

See example snipper below which shows a "Chicken Sate" product as containing Nuts and Eggs via the array of productTags

},
            "62334e600cf177afb8bad2b1": {
                "name": "Chicken Sate",
                "description": "Product contains nuts",
                ...
                ],
                "productTags": [
                    104,
                    109
                ],
                "posCategoryIds": [
                    "SATE"
                ]
                ...
            },

Calories

If the calories are sent from the POS or added in Deliverect, it will be sent to channel in Menu Push as per the sample below

ParameterMeaning
caloriesThis is the base calorie amount, where a maximum calories is set, this should be interpreted as the 'minimum'
caloriesRangeHighThe maximum calorie amount of an item
},
            "62334e600cf177afb8bad2b1": {
                    "name": "Cheeseburger",
                    "description": "Burger with Cheese",
                     ...
                    "calories": 500,
                    "caloriesRangeHigh": 750,
                    "price": 900,
                    ...
                }

Nutritional Information

If nutritional information is sent by the POS, you will also receive it for each product via the menu push. The unit of the values is gram.

Notice, that ingredients and additives are lists of strings. You may or may not receive food business information (fbo) depends on local regulation.

[
"products": {
...     "name": "Coca Cola",
        "beverageInfo": {
            "caffeine": 10,
            "alcohol": 0
        },
        "calories": 180,
        "caloriesRangeHigh": 0,
....
        "nutritionalInfo": {
            "fat": 3,
            "sugar": 10,
            "saturatedFat": 21,
            "carbohydrates": 10,
            "protein": 0,
            "salt": 0,
            "servingSize": {
                "amount": 330,
                "unitType": 1,
                "countUnitDescription": "ml"
            },
            "netQuantity": {
                "amount": 1,
                "unitType": 1,
                "countUnitDescription": "bottle"
            }
        },
        "packaging": {
            "count": 1,
            "reusable": false,
            "storageInstructions": "Keep refrigerated"
        },
        ....
        "productTags": [
            7,
            10,
            128
        ],
...
        "supplementalInfo": {
            "legalName": "Coke",
            "instructionsForUse": "Serve chilled",
            "ingredients": [
                "Carbonated Water",
                "Sugar"
            ],
            "additives": [
                "E150d - Sulphite ammonia caramel",
                "E338 - Phosphoric acid",
                "E951 - Aspartame"
            ],
            "prepackaged": true,
            "deposit": 15,
            "fbo": {
                "name": "Coca-Cola GmbH Germany",
                "address": "Stralauer Allee 4, 10245 Berlin, Germany"
            }
        },
...
    }
]

Menu types

There are five different types of menus, with each representing the intended ordering type for which the menu is suitable.

NameInteger Value
Delivery and pickup0
Delivery1
Pickup2
Eat-in3

Currency

See a list of the currency types we will send within a published menu here

Availabilities

With every menu pushed, there will be a list of availabilities that indicate when customers can order from the menu online. Ideally, your channel API makes it so this doesn't close the store outside of those hours but limits when food can be picked up/delivered (see also the note near the end of this subsection).

A single entry in this list of availabilities looks like the code snippet below.

{
    "dayOfWeek": "1",
    "startTime": "13:00",
    "endTime": "21:30"
}

For a single entry, the fields are dayOfWeek, startTime, and endTime. An explanation of their use is in the table below.

FieldUse
dayOfWeekAn integer value that indicates the day of the week for this availability (starting at 1 for Monday).
startTimeA 24-hour HH:MM format notation of the start time of an availability.
endTimeA 24-hour HH:MM format notation of the end time of an availability.

📘

Menu Availability vs Busy Mode

The availabilities of a menu should be reflected in the opening hours set per store. This should work in conjunction with stores being closed temporarily i.e. ordering from a menu should not be possible when the store is set to a 'PAUSED' status via 'Busy Mode'..

It should be clear to customers where ordering isn't possible if this is due to being outside the store's opening hours or if the store has been temporarily closed.

Day of weekInteger value
Monday1
Tuesday2
Wednesday3
Thursday4
Friday5
Saturday6
Sunday7

Have a look at the example requests below, which shows what a list of availabilities tied to a menu looks like in a complete menu push request.

Snoozed products

Each menu can have a list of snoozed products (called snoozedProducts). These contain the PLUs of products and modifiers that are currently snoozed and should be unavailable on the menu. The end date of each product snooze exists within this list in the snoozeEnd field. If you use multiple menus in one location (for different channels etc.) It's possible that a product snoozed on one menu is available on another menu in the same location.

subProducts, parentId, PLU

You can find the products that exist for each category and/or group (bundles, modifier groups) under subProducts. Do not reference the parentId parameter as this is deprecated.

📘

Note that the unique identifier for each product is the PLU and that is what you need to use when creating an order.

[
    {
        "availabilities": [
            {
                "dayOfWeek": 1,
                "endTime": "17:00",
                "startTime": "09:00"
            },
            {
                "dayOfWeek": 2,
                "endTime": "17:00",
                "startTime": "09:00"
            },
            {
                "dayOfWeek": 3,
                "endTime": "17:00",
                "startTime": "09:00"
            },
            {
                "dayOfWeek": 4,
                "endTime": "17:00",
                "startTime": "09:00"
            },
            {
                "dayOfWeek": 5,
                "endTime": "17:00",
                "startTime": "09:00"
            },
            {
                "dayOfWeek": 6,
                "endTime": "17:00",
                "startTime": "09:00"
            },
            {
                "dayOfWeek": 6,
                "endTime": "22:00",
                "startTime": "19:00"
            },
            {
                "dayOfWeek": 7,
                "endTime": "17:00",
                "startTime": "09:00"
            }
        ],
        "bundles": {},
        "categories": [
            {
                "_id": "63211fe2063a12ba6032fea7",
                "name": "Chicken",
                "description": "Delicious chicken, cooked to perfection",
                "descriptionTranslations": {},
                "nameTranslations": {},
                "account": "60c9c64662af8db836d7aa1a",
                "posLocationId": "",
                "posCategoryType": "",
                "posCategoryId": "",
                "imageUrl": "https://resizer.staging.deliverect.com/qVTtEOAvgLDOiTSPatLTgSZQ8GQdQt_pFBsFrdYXXLI/rt:fill/g:ce/el:0/cb:40dcbbd873d642759cd299be17c0ca46/aHR0cHM6Ly9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL2lrb25hLWJ1Y2tldC1zdGFnaW5nL2ltYWdlcy81ZmY2ZWUwODkzMjhjOGFlZmVlYWJlMzMvRnJpZWQtQ2hpY2tlbi0yLTItNjIyYTJjZWJkYjU5ODYwMDFlYmY1OGY3LmpwZWc=.jpg",
                "subCategories": [],
                "products": [
                    "632122cd0a6043d29e36098d"
                ],
                "availabilities": [],
                "level": 1,
                "menu": "63211fe2063a12ba6032fe9b",
                "subProducts": [
                    "632122cd0a6043d29e36098d"
                ],
                "subProductSortOrder": []
            },
            {
                "_id": "632121c6005cbce7fcea477a",
                "name": "Steaks",
                "description": "",
                "descriptionTranslations": {},
                "nameTranslations": {},
                "account": "60c9c64662af8db836d7aa1a",
                "posLocationId": "",
                "posCategoryType": "",
                "posCategoryId": "",
                "subCategories": [],
                "products": [
                    "63211fe1063a12ba6032fe6d"
                ],
                "availabilities": [],
                "level": 1,
                "menu": "63211fe2063a12ba6032fe9b",
                "sortedChannelProductIds": [],
                "subProducts": [
                    "63211fe1063a12ba6032fe6d"
                ],
                "subProductSortOrder": []
            }
        ],
        "channelLinkId": "626a**********ce3ce2",
        "currency": 4,
        "description": "A sample menu of various product configurations, enjoy! ",
        "descriptionTranslations": {},
        "menu": "Example Menu",
        "menuId": "63211fe2063a12ba6032fe9b",
        "menuImageURL": "https://resizer.staging.deliverect.com/1HDWUv0Y3D-2ZAtK07DJcF1RzA1l7bjpuTX15z5YZs4/rt:fill/g:ce/el:0/cb:40dcbbd873d642759cd299be17c0ca46/aHR0cHM6Ly9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL2lrb25hLWJ1Y2tldC1zdGFnaW5nL2ltYWdlcy81ZmY2ZWUwODkzMjhjOGFlZmVlYWJlMzMvdGFrZWF3YXktNjIyOGNlZDViMzAzZmMwM2ExNDhkZTUwLTYyMmEyYmNhOGM1MDZmMDE1YmU2MDFiNi5qcGVn.jpg",
        "menuType": 0,
        "modifierGroups": {
            "63211fe1063a12ba6032fe65": {
                "_id": "63211fe1063a12ba6032fe65",
                "name": "Choose a sauce",
                "description": "",
                "descriptionTranslations": {},
                "nameTranslations": {},
                "account": "60c9c64662af8db836d7aa1a",
                "capacityUsages": [],
                "deliveryTax": 9000,
                "eatInTax": 9000,
                "location": "61162720f1ba14ed8130f3df",
                "max": 3,
                "min": 0,
                "multiMax": 3,
                "multiply": 1,
                "plu": "MG-SAUCES",
                "posCategoryIds": [],
                "posProductCategoryId": "",
                "posProductId": "POS-ID-016",
                "productTags": [],
                "productType": 3,
                "subProducts": [
                    "63211fe1063a12ba6032fe66",
                    "63211fe1063a12ba6032fe67"
                ],
                "takeawayTax": 9000,
                "parentId": "63211fe1063a12ba6032fe68",
                "snoozed": false,
                "subProductSortOrder": []
            },
            "63211fe1063a12ba6032fe63": {
                "_id": "63211fe1063a12ba6032fe63",
                "name": "Rice Selection",
                "description": "",
                "descriptionTranslations": {},
                "nameTranslations": {},
                "account": "60c9c64662af8db836d7aa1a",
                "capacityUsages": [],
                "deliveryTax": 9000,
                "eatInTax": 9000,
                "location": "61162720f1ba14ed8130f3df",
                "max": 0,
                "min": 1,
                "multiMax": 1,
                "multiply": 1,
                "plu": "MG-RICE",
                "posCategoryIds": [],
                "posProductCategoryId": "",
                "posProductId": "POS-ID-010",
                "productTags": [],
                "productType": 3,
                "subProducts": [
                    "63211fe1063a12ba6032fe64",
                    "63211fe1063a12ba6032fe68"
                ],
                "takeawayTax": 9000,
                "parentId": "63211fe1063a12ba6032fe62",
                "snoozed": false,
                "subProductSortOrder": []
            },
            "63211fe1063a12ba6032fe6e": {
                "_id": "63211fe1063a12ba6032fe6e",
                "name": "Cooking instructions",
                "description": "",
                "descriptionTranslations": {},
                "nameTranslations": {
                    "es": "Cocinado",
                    "fr": "Cuisson",
                    "nl": "Kook instructies"
                },
                "account": "60c9c64662af8db836d7aa1a",
                "capacityUsages": [],
                "deliveryTax": 9000,
                "eatInTax": 9000,
                "location": "61162720f1ba14ed8130f3df",
                "max": 1,
                "min": 1,
                "multiply": 1,
                "plu": "MOD-01",
                "posCategoryIds": [],
                "posProductCategoryId": "",
                "posProductId": "POS-ID-002",
                "productTags": [],
                "productType": 3,
                "subProducts": [
                    "63211fe1063a12ba6032fe6f",
                    "63211fe1063a12ba6032fe70",
                    "63211fe1063a12ba6032fe71"
                ],
                "takeawayTax": 9000,
                "parentId": "63211fe1063a12ba6032fe6d",
                "snoozed": false,
                "subProductSortOrder": []
            },
            "63211fe1063a12ba6032fe72": {
                "_id": "63211fe1063a12ba6032fe72",
                "name": "Add a side",
                "description": "",
                "descriptionTranslations": {},
                "nameTranslations": {
                    "es": "Elige tu acompa\u00f1amiento",
                    "fr": "Choisissez votre garniture",
                    "nl": "Kies je bijgerecht"
                },
                "account": "60c9c64662af8db836d7aa1a",
                "capacityUsages": [],
                "deliveryTax": 9000,
                "eatInTax": 9000,
                "location": "61162720f1ba14ed8130f3df",
                "max": 0,
                "min": 1,
                "multiply": 1,
                "plu": "MOD-02",
                "posCategoryIds": [],
                "posProductCategoryId": "",
                "posProductId": "POS-ID-003",
                "productTags": [],
                "productType": 3,
                "subProducts": [
                    "63211fe1063a12ba6032fe73",
                    "63211fe1063a12ba6032fe74",
                    "63211fe1063a12ba6032fe75"
                ],
                "takeawayTax": 9000,
                "parentId": "63211fe1063a12ba6032fe6d",
                "snoozed": false,
                "subProductSortOrder": []
            }
        },
        "modifiers": {
            "63211fe1063a12ba6032fe66": {
                "_id": "63211fe1063a12ba6032fe66",
                "name": "Sate Sauce",
                "description": "",
                "descriptionTranslations": {},
                "nameTranslations": {},
                "account": "60c9c64662af8db836d7aa1a",
                "capacityUsages": [],
                "deliveryTax": 9000,
                "eatInTax": 9000,
                "location": "61162720f1ba14ed8130f3df",
                "max": 0,
                "min": 0,
                "multiply": 1,
                "plu": "SAUCE-01",
                "posCategoryIds": [],
                "posProductCategoryId": "",
                "posProductId": "POS-ID-017",
                "price": 50,
                "productTags": [],
                "productType": 2,
                "subProducts": [],
                "takeawayTax": 9000,
                "parentId": "63211fe1063a12ba6032fe65",
                "snoozed": false,
                "subProductSortOrder": []
            },
            "63211fe1063a12ba6032fe67": {
                "_id": "63211fe1063a12ba6032fe67",
                "name": "Hot Sauce",
                "description": "",
                "descriptionTranslations": {},
                "nameTranslations": {},
                "account": "60c9c64662af8db836d7aa1a",
                "capacityUsages": [],
                "deliveryTax": 9000,
                "eatInTax": 9000,
                "location": "61162720f1ba14ed8130f3df",
                "max": 0,
                "min": 0,
                "multiply": 1,
                "plu": "SAUCE-02",
                "posCategoryIds": [],
                "posProductCategoryId": "",
                "posProductId": "POS-ID-018",
                "price": 50,
                "productTags": [],
                "productType": 2,
                "subProducts": [],
                "takeawayTax": 9000,
                "parentId": "63211fe1063a12ba6032fe65",
                "snoozed": false,
                "subProductSortOrder": []
            },
            "63211fe1063a12ba6032fe6f": {
                "_id": "63211fe1063a12ba6032fe6f",
                "name": "Rare",
                "description": "",
                "descriptionTranslations": {},
                "nameTranslations": {
                    "es": "Poco hecho",
                    "fr": "Saignant",
                    "nl": "Rood"
                },
                "account": "60c9c64662af8db836d7aa1a",
                "capacityUsages": [],
                "deliveryTax": 9000,
                "eatInTax": 9000,
                "location": "61162720f1ba14ed8130f3df",
                "max": 0,
                "min": 0,
                "multiply": 1,
                "plu": "COOK-01",
                "posCategoryIds": [],
                "posProductCategoryId": "",
                "posProductId": "POS-ID-004",
                "price": 0,
                "productTags": [],
                "productType": 2,
                "subProducts": [],
                "takeawayTax": 9000,
                "parentId": "63211fe1063a12ba6032fe6e",
                "snoozed": false,
                "subProductSortOrder": []
            },
            "63211fe1063a12ba6032fe70": {
                "_id": "63211fe1063a12ba6032fe70",
                "name": "Medium Rare",
                "description": "",
                "descriptionTranslations": {},
                "nameTranslations": {
                    "es": "Al punto",
                    "fr": "\u00c0 point",
                    "nl": "Half doorbakken"
                },
                "account": "60c9c64662af8db836d7aa1a",
                "capacityUsages": [],
                "deliveryTax": 9000,
                "eatInTax": 9000,
                "location": "61162720f1ba14ed8130f3df",
                "max": 0,
                "min": 0,
                "multiply": 1,
                "plu": "COOK-02",
                "posCategoryIds": [],
                "posProductCategoryId": "",
                "posProductId": "POS-ID-005",
                "price": 0,
                "productTags": [],
                "productType": 2,
                "subProducts": [],
                "takeawayTax": 9000,
                "parentId": "63211fe1063a12ba6032fe6e",
                "snoozed": false,
                "subProductSortOrder": []
            },
            "63211fe1063a12ba6032fe71": {
                "_id": "63211fe1063a12ba6032fe71",
                "name": "Well Done",
                "description": "",
                "descriptionTranslations": {},
                "nameTranslations": {
                    "es": "Muy hecho",
                    "fr": "Bien cuit",
                    "nl": "Doorbakken"
                },
                "account": "60c9c64662af8db836d7aa1a",
                "capacityUsages": [],
                "deliveryTax": 9000,
                "eatInTax": 9000,
                "location": "61162720f1ba14ed8130f3df",
                "max": 0,
                "min": 0,
                "multiply": 1,
                "plu": "COOK-03",
                "posCategoryIds": [],
                "posProductCategoryId": "",
                "posProductId": "POS-ID-006",
                "price": 0,
                "productTags": [],
                "productType": 2,
                "subProducts": [],
                "takeawayTax": 9000,
                "parentId": "63211fe1063a12ba6032fe6e",
                "snoozed": false,
                "subProductSortOrder": []
            },
            "63211fe1063a12ba6032fe73": {
                "_id": "63211fe1063a12ba6032fe73",
                "name": "Fries",
                "description": "",
                "descriptionTranslations": {},
                "nameTranslations": {
                    "es": "Patatas fritas",
                    "fr": "Frites",
                    "nl": "Frietjes"
                },
                "account": "60c9c64662af8db836d7aa1a",
                "capacityUsages": [],
                "defaultQuantity": 1,
                "deliveryTax": 9000,
                "eatInTax": 9000,
                "location": "61162720f1ba14ed8130f3df",
                "max": 0,
                "min": 0,
                "multiply": 1,
                "plu": "SI-01",
                "posCategoryIds": [],
                "posProductCategoryId": "",
                "posProductId": "POS-ID-006",
                "price": 0,
                "productTags": [],
                "productType": 2,
                "subProducts": [],
                "takeawayTax": 9000,
                "parentId": "63211fe1063a12ba6032fe72",
                "snoozed": false,
                "subProductSortOrder": []
            },
            "63211fe1063a12ba6032fe74": {
                "_id": "63211fe1063a12ba6032fe74",
                "name": "Salad",
                "description": "",
                "descriptionTranslations": {},
                "nameTranslations": {
                    "es": "Ensalada",
                    "fr": "Salade",
                    "nl": "Salade"
                },
                "account": "60c9c64662af8db836d7aa1a",
                "capacityUsages": [],
                "deliveryTax": 9000,
                "eatInTax": 9000,
                "location": "61162720f1ba14ed8130f3df",
                "max": 0,
                "min": 0,
                "multiply": 1,
                "plu": "SI-02",
                "posCategoryIds": [],
                "posProductCategoryId": "",
                "posProductId": "POS-ID-007",
                "price": 200,
                "productTags": [],
                "productType": 2,
                "subProducts": [],
                "takeawayTax": 9000,
                "parentId": "63211fe1063a12ba6032fe72",
                "snoozed": false,
                "subProductSortOrder": []
            },
            "63211fe1063a12ba6032fe75": {
                "_id": "63211fe1063a12ba6032fe75",
                "name": "Mashed Potato",
                "description": "",
                "descriptionTranslations": {},
                "nameTranslations": {
                    "es": "Pur\u00e9 de patata",
                    "fr": "Pur\u00e9e de pommes de terre",
                    "nl": "Aardappelpuree"
                },
                "account": "60c9c64662af8db836d7aa1a",
                "capacityUsages": [],
                "deliveryTax": 9000,
                "eatInTax": 9000,
                "location": "61162720f1ba14ed8130f3df",
                "max": 0,
                "min": 0,
                "multiply": 1,
                "plu": "SI-03",
                "posCategoryIds": [],
                "posProductCategoryId": "",
                "posProductId": "POS-ID-008",
                "price": 100,
                "productTags": [],
                "productType": 2,
                "subProducts": [],
                "takeawayTax": 9000,
                "parentId": "63211fe1063a12ba6032fe72",
                "snoozed": false,
                "subProductSortOrder": []
            },
            "63211fe1063a12ba6032fe64": {
                "_id": "63211fe1063a12ba6032fe64",
                "name": "White Rice",
                "description": "White coloured rice",
                "descriptionTranslations": {},
                "nameTranslations": {},
                "account": "60c9c64662af8db836d7aa1a",
                "capacityUsages": [],
                "deliveryTax": 9000,
                "eatInTax": 9000,
                "imageUrl": "https://resizer.staging.deliverect.com/3uOAAgqi9iRQsvmi7GcnMvFgtFO7o70zKvmWMixJqjs/rt:fill/g:ce/el:0/cb:40dcbbd873d642759cd299be17c0ca46/aHR0cHM6Ly9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL2lrb25hLWJ1Y2tldC1zdGFnaW5nL2ltYWdlcy81ZmY2ZWUwODkzMjhjOGFlZmVlYWJlMzMvbmFzaXB1dGktMTYxMDI5MDE0MDQ5NC5qcGc=.jpg",
                "location": "61162720f1ba14ed8130f3df",
                "max": 0,
                "min": 0,
                "multiply": 1,
                "plu": "RICE-01",
                "posCategoryIds": [
                    "SD"
                ],
                "posProductCategoryId": "",
                "posProductId": "POS-ID-012",
                "price": 450,
                "productTags": [],
                "productType": 1,
                "subProducts": [
                    "63211fe1063a12ba6032fe65"
                ],
                "takeawayTax": 9000,
                "parentId": "63211fe1063a12ba6032fe63",
                "snoozed": false,
                "subProductSortOrder": []
            },
            "63211fe1063a12ba6032fe68": {
                "_id": "63211fe1063a12ba6032fe68",
                "name": "Yellow Rice",
                "description": "White rice with Saffron",
                "descriptionTranslations": {},
                "nameTranslations": {},
                "account": "60c9c64662af8db836d7aa1a",
                "capacityUsages": [],
                "deliveryTax": 9000,
                "eatInTax": 9000,
                "imageUrl": "https://resizer.staging.deliverect.com/ZfoFoN3Ny8OdZsXzQG8PVxrO0IpdVyBAMc4m8-qblGY/rt:fill/g:ce/el:0/cb:40dcbbd873d642759cd299be17c0ca46/aHR0cHM6Ly9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL2lrb25hLWJ1Y2tldC1zdGFnaW5nL2ltYWdlcy81ZmY2ZWUwODkzMjhjOGFlZmVlYWJlMzMvTmFzaS1rdW5pbmctMy0xNjEwMjg5NzI2OTQ2LmpwZw==.jpg",
                "location": "61162720f1ba14ed8130f3df",
                "max": 0,
                "min": 0,
                "multiply": 1,
                "plu": "RICE-02",
                "posCategoryIds": [
                    "SD"
                ],
                "posProductCategoryId": "",
                "posProductId": "POS-ID-013",
                "price": 450,
                "productTags": [],
                "productType": 1,
                "subProducts": [
                    "63211fe1063a12ba6032fe65"
                ],
                "takeawayTax": 9000,
                "parentId": "63211fe1063a12ba6032fe63",
                "snoozed": false,
                "subProductSortOrder": []
            }
        },
        "menuTranslations": {},
        "nestedModifiers": true,
        "products": {
            "63211fe1063a12ba6032fe64": {
                "_id": "63211fe1063a12ba6032fe64",
                "name": "White Rice",
                "description": "White coloured rice",
                "descriptionTranslations": {},
                "nameTranslations": {},
                "account": "60c9c64662af8db836d7aa1a",
                "capacityUsages": [],
                "deliveryTax": 9000,
                "eatInTax": 9000,
                "imageUrl": "https://resizer.staging.deliverect.com/3uOAAgqi9iRQsvmi7GcnMvFgtFO7o70zKvmWMixJqjs/rt:fill/g:ce/el:0/cb:40dcbbd873d642759cd299be17c0ca46/aHR0cHM6Ly9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL2lrb25hLWJ1Y2tldC1zdGFnaW5nL2ltYWdlcy81ZmY2ZWUwODkzMjhjOGFlZmVlYWJlMzMvbmFzaXB1dGktMTYxMDI5MDE0MDQ5NC5qcGc=.jpg",
                "location": "61162720f1ba14ed8130f3df",
                "max": 0,
                "min": 0,
                "multiply": 1,
                "plu": "RICE-01",
                "posCategoryIds": [
                    "SD"
                ],
                "posProductCategoryId": "",
                "posProductId": "POS-ID-012",
                "price": 450,
                "productTags": [],
                "productType": 1,
                "subProducts": [
                    "63211fe1063a12ba6032fe65"
                ],
                "takeawayTax": 9000,
                "parentId": "63211fe1063a12ba6032fe63",
                "snoozed": false,
                "subProductSortOrder": []
            },
            "63211fe1063a12ba6032fe68": {
                "_id": "63211fe1063a12ba6032fe68",
                "name": "Yellow Rice",
                "description": "White rice with Saffron",
                "descriptionTranslations": {},
                "nameTranslations": {},
                "account": "60c9c64662af8db836d7aa1a",
                "capacityUsages": [],
                "deliveryTax": 9000,
                "eatInTax": 9000,
                "imageUrl": "https://resizer.staging.deliverect.com/ZfoFoN3Ny8OdZsXzQG8PVxrO0IpdVyBAMc4m8-qblGY/rt:fill/g:ce/el:0/cb:40dcbbd873d642759cd299be17c0ca46/aHR0cHM6Ly9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL2lrb25hLWJ1Y2tldC1zdGFnaW5nL2ltYWdlcy81ZmY2ZWUwODkzMjhjOGFlZmVlYWJlMzMvTmFzaS1rdW5pbmctMy0xNjEwMjg5NzI2OTQ2LmpwZw==.jpg",
                "location": "61162720f1ba14ed8130f3df",
                "max": 0,
                "min": 0,
                "multiply": 1,
                "plu": "RICE-02",
                "posCategoryIds": [
                    "SD"
                ],
                "posProductCategoryId": "",
                "posProductId": "POS-ID-013",
                "price": 450,
                "productTags": [],
                "productType": 1,
                "subProducts": [
                    "63211fe1063a12ba6032fe65"
                ],
                "takeawayTax": 9000,
                "parentId": "63211fe1063a12ba6032fe63",
                "snoozed": false,
                "subProductSortOrder": []
            },
            "632122cd0a6043d29e36098d": {
                "_id": "632122cd0a6043d29e36098d",
                "name": "Chicken Sate",
                "description": "Product with Nested Modifiers - Multimax variables - Allergens (tags)",
                "descriptionTranslations": {},
                "nameTranslations": {},
                "account": "60c9c64662af8db836d7aa1a",
                "capacityUsages": [],
                "deliveryTax": 9000,
                "eatInTax": 9000,
                "imageUrl": "https://resizer.staging.deliverect.com/bUZW6YzX_CnYCg58h5jS0UoScpOS_XOa9Cgux8itGZg/rt:fill/g:ce/el:0/cb:40dcbbd873d642759cd299be17c0ca46/aHR0cHM6Ly9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL2lrb25hLWJ1Y2tldC1zdGFnaW5nL2ltYWdlcy81ZmY2ZWUwODkzMjhjOGFlZmVlYWJlMzMvc2F0YXktNjIyODRlM2M4YzUwNmYwMTViZTYwMTg0LmpwZWc=.jpg",
                "location": "61162720f1ba14ed8130f3df",
                "max": 0,
                "min": 0,
                "multiply": 1,
                "plu": "P-SATE",
                "posCategoryIds": [
                    "SATE"
                ],
                "posProductCategoryId": "",
                "posProductId": "POS-ID-009",
                "price": 450,
                "productTags": [
                    104,
                    108
                ],
                "productType": 1,
                "subProducts": [
                    "63211fe1063a12ba6032fe63"
                ],
                "takeawayTax": 9000,
                "parentId": "63211fe2063a12ba6032fea7",
                "snoozed": false,
                "subProductSortOrder": []
            },
            "63211fe1063a12ba6032fe6d": {
                "_id": "63211fe1063a12ba6032fe6d",
                "name": "Delicious Steak Frites",
                "description": "Basic Example Product with - Modifier groups - min/max variables - default selection - translations",
                "descriptionTranslations": {},
                "nameTranslations": {
                    "es": "Deliciosos Bistecs Fritos",
                    "fr": "Steak Frites D\u00e9licieux",
                    "nl": "Heerlijke Biefstuk Frites"
                },
                "account": "60c9c64662af8db836d7aa1a",
                "capacityUsages": [],
                "deliveryTax": 9000,
                "eatInTax": 9000,
                "imageUrl": "https://resizer.staging.deliverect.com/kuU4ZDC7_3JgB1X2mCr1hbG9eAy_x8rc9_Cg00P7NzY/rt:fill/g:ce/el:0/cb:40dcbbd873d642759cd299be17c0ca46/aHR0cHM6Ly9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL2lrb25hLWJ1Y2tldC1zdGFnaW5nL2ltYWdlcy81ZmY2ZWUwODkzMjhjOGFlZmVlYWJlMzMvc3RlYWstNjIyODYyNTg4YzUwNmYwMTViZTYwMThlLmpwZWc=.jpg",
                "location": "61162720f1ba14ed8130f3df",
                "max": 0,
                "min": 0,
                "multiply": 1,
                "plu": "STK-01",
                "posCategoryIds": [
                    "STK"
                ],
                "posProductCategoryId": "",
                "posProductId": "POS-ID-001",
                "price": 1500,
                "productTags": [],
                "productType": 1,
                "subProducts": [
                    "63211fe1063a12ba6032fe6e",
                    "63211fe1063a12ba6032fe72"
                ],
                "takeawayTax": 9000,
                "parentId": "632121c6005cbce7fcea477a",
                "snoozed": false,
                "subProductSortOrder": []
            }
        },
        "productTags": [
            104,
            108
        ],
        "snoozedProducts": {},
        "validations": []
    }
]
[
    {
        "menu": "Variants",
        "menuId": "61013b55c30235edf4c77de2",
        "description": "Variants menu",
        "menuImageURL": null,
        "menuType": 0,
        "availabilities": [],
        "categories": [
            {
                "name": "Pizza",
                "description": "",
                "nameTranslations": {},
                "descriptionTranslations": {},
                "_id": "61013b5ac30235edf4c77dea",
                "account": "60e4210705af4f238807f945",
                "posLocationId": "",
                "posCategoryType": "",
                "subCategories": [],
                "posCategoryId": "",
                "products": [
                    "61013317c30235edf4c77b73"
                ],
                "menu": "61013b55c30235edf4c77de2",
                "sortedChannelProductIds": [],
                "subProductSortOrder": [],
                "subProducts": [
                    "61013317c30235edf4c77b73"
                ],
                "level": 1,
                "availabilities": []
            }
        ],
        "products": {
            "61013317c30235edf4c77b75": {
                "name": "Small",
                "description": "",
                "nameTranslations": {},
                "descriptionTranslations": {},
                "_id": "61013317c30235edf4c77b75",
                "account": "60e4210705af4f238807f945",
                "pluProps": {
                    "V": true
                },
                "location": "60e4223f05af4f238807f96a",
                "productType": 1,
                "plu": "VAR-1-#V#-",
                "price": 0,
                "priceLevels": {},
                "sortOrder": 0,
                "deliveryTax": 9000,
                "takeawayTax": 9000,
                "multiply": 1,
                "posProductId": "DV-VAR-1",
                "posProductCategoryId": "",
                "subProducts": [],
                "productTags": [],
                "posCategoryIds": [
                    "DV-CAT-2"
                ],
                "max": 0,
                "min": 0,
                "capacityUsages": [],
                "parentId": "61013317c30235edf4c77b74",
                "snoozed": false,
                "subProductSortOrder": []
            },
            "61013317c30235edf4c77b76": {
                "name": "Medium",
                "description": "",
                "nameTranslations": {},
                "descriptionTranslations": {},
                "_id": "61013317c30235edf4c77b76",
                "account": "60e4210705af4f238807f945",
                "pluProps": {
                    "V": true
                },
                "location": "60e4223f05af4f238807f96a",
                "productType": 1,
                "plu": "VAR-2-#V#-",
                "price": 300,
                "priceLevels": {},
                "sortOrder": 0,
                "deliveryTax": 9000,
                "takeawayTax": 9000,
                "multiply": 1,
                "posProductId": "DV-VAR-2",
                "posProductCategoryId": "",
                "subProducts": [],
                "productTags": [],
                "posCategoryIds": [
                    "DV-CAT-2"
                ],
                "max": 0,
                "min": 0,
                "capacityUsages": [],
                "parentId": "61013317c30235edf4c77b74",
                "snoozed": false,
                "subProductSortOrder": []
            },
            "61013317c30235edf4c77b77": {
                "name": "Large",
                "description": "",
                "nameTranslations": {},
                "descriptionTranslations": {},
                "_id": "61013317c30235edf4c77b77",
                "account": "60e4210705af4f238807f945",
                "pluProps": {
                    "V": true
                },
                "location": "60e4223f05af4f238807f96a",
                "productType": 1,
                "plu": "VAR-3-#V#-",
                "price": 550,
                "priceLevels": {},
                "sortOrder": 0,
                "deliveryTax": 9000,
                "takeawayTax": 9000,
                "multiply": 1,
                "posProductId": "DV-VAR-3",
                "posProductCategoryId": "",
                "subProducts": [],
                "productTags": [],
                "posCategoryIds": [
                    "DV-CAT-2"
                ],
                "max": 0,
                "min": 0,
                "capacityUsages": [],
                "parentId": "61013317c30235edf4c77b74",
                "snoozed": false,
                "subProductSortOrder": []
            },
            "61013317c30235edf4c77b73": {
                "name": "Pinapple pizza",
                "description": "I know you don't like me, but I don't like you either.",
                "nameTranslations": {},
                "descriptionTranslations": {},
                "_id": "61013317c30235edf4c77b73",
                "account": "60e4210705af4f238807f945",
                "location": "60e4223f05af4f238807f96a",
                "productType": 1,
                "plu": "VAR-PROD-1",
                "price": 800,
                "priceLevels": {},
                "sortOrder": 0,
                "deliveryTax": 9000,
                "takeawayTax": 9000,
                "multiply": 1,
                "posProductId": "DV-VAR-PROD-1",
                "posProductCategoryId": "",
                "subProducts": [
                    "61013317c30235edf4c77b74"
                ],
                "productTags": [
                    1000
                ],
                "posCategoryIds": [
                    "DV-CAT-2"
                ],
                "isVariant": true,
                "max": 0,
                "min": 0,
                "capacityUsages": [],
                "parentId": "61013b5ac30235edf4c77dea",
                "snoozed": false,
                "subProductSortOrder": []
            }
        },
        "modifierGroups": {
            "61013317c30235edf4c77b74": {
                "name": "Choose your size",
                "description": "",
                "nameTranslations": {},
                "descriptionTranslations": {},
                "_id": "61013317c30235edf4c77b74",
                "account": "60e4210705af4f238807f945",
                "location": "60e4223f05af4f238807f96a",
                "productType": 3,
                "plu": "MG-VAR-1",
                "price": 0,
                "priceLevels": {},
                "sortOrder": 0,
                "deliveryTax": 9000,
                "takeawayTax": 9000,
                "multiply": 1,
                "posProductId": "DV-POS-5",
                "posProductCategoryId": "",
                "subProducts": [
                    "61013317c30235edf4c77b75",
                    "61013317c30235edf4c77b76",
                    "61013317c30235edf4c77b77"
                ],
                "productTags": [],
                "posCategoryIds": [
                    "DV-CAT-2"
                ],
                "isVariantGroup": true,
                "max": 1,
                "min": 1,
                "capacityUsages": [],
                "parentId": "61013317c30235edf4c77b73",
                "snoozed": false,
                "subProductSortOrder": []
            }
        },
        "modifiers": {
            "61013317c30235edf4c77b75": {
                "name": "Small",
                "description": "",
                "nameTranslations": {},
                "descriptionTranslations": {},
                "_id": "61013317c30235edf4c77b75",
                "account": "60e4210705af4f238807f945",
                "pluProps": {
                    "V": true
                },
                "location": "60e4223f05af4f238807f96a",
                "productType": 1,
                "plu": "VAR-1-#V#-",
                "price": 0,
                "priceLevels": {},
                "sortOrder": 0,
                "deliveryTax": 9000,
                "takeawayTax": 9000,
                "multiply": 1,
                "posProductId": "DV-VAR-1",
                "posProductCategoryId": "",
                "subProducts": [],
                "productTags": [],
                "posCategoryIds": [
                    "DV-CAT-2"
                ],
                "max": 0,
                "min": 0,
                "capacityUsages": [],
                "parentId": "61013317c30235edf4c77b74",
                "snoozed": false,
                "subProductSortOrder": []
            },
            "61013317c30235edf4c77b76": {
                "name": "Medium",
                "description": "",
                "nameTranslations": {},
                "descriptionTranslations": {},
                "_id": "61013317c30235edf4c77b76",
                "account": "60e4210705af4f238807f945",
                "pluProps": {
                    "V": true
                },
                "location": "60e4223f05af4f238807f96a",
                "productType": 1,
                "plu": "VAR-2-#V#-",
                "price": 300,
                "priceLevels": {},
                "sortOrder": 0,
                "deliveryTax": 9000,
                "takeawayTax": 9000,
                "multiply": 1,
                "posProductId": "DV-VAR-2",
                "posProductCategoryId": "",
                "subProducts": [],
                "productTags": [],
                "posCategoryIds": [
                    "DV-CAT-2"
                ],
                "max": 0,
                "min": 0,
                "capacityUsages": [],
                "parentId": "61013317c30235edf4c77b74",
                "snoozed": false,
                "subProductSortOrder": []
            },
            "61013317c30235edf4c77b77": {
                "name": "Large",
                "description": "",
                "nameTranslations": {},
                "descriptionTranslations": {},
                "_id": "61013317c30235edf4c77b77",
                "account": "60e4210705af4f238807f945",
                "pluProps": {
                    "V": true
                },
                "location": "60e4223f05af4f238807f96a",
                "productType": 1,
                "plu": "VAR-3-#V#-",
                "price": 550,
                "priceLevels": {},
                "sortOrder": 0,
                "deliveryTax": 9000,
                "takeawayTax": 9000,
                "multiply": 1,
                "posProductId": "DV-VAR-3",
                "posProductCategoryId": "",
                "subProducts": [],
                "productTags": [],
                "posCategoryIds": [
                    "DV-CAT-2"
                ],
                "max": 0,
                "min": 0,
                "capacityUsages": [],
                "parentId": "61013317c30235edf4c77b74",
                "snoozed": false,
                "subProductSortOrder": []
            }
        },
        "bundles": {},
        "snoozedProducts": {},
        "productTags": [
            1000
        ],
        "currency": 1,
        "validations": [],
        "nestedModifiers": false,
        "channelLinkId": "60e6ff7fdf88f64a255e9a37"
    }
]
[
    {
        "menu": "Example Menu with Bottle Deposit",
        "menuTranslations": {},
        "menuId": "6**f578fa205bc3eca854***",
        "description": "A sample menu with a bottle deposit, enjoy! ",
        "descriptionTranslations": {},
        "menuImageURL": "https://resizer.staging.deliverect.com/HwjG6mA-flKzQlrDKIffJAOAqhgtXdLD3J2rDZE0MZM/rt:fill/g:ce/el:0/cb:2dba60946d8e4deeae355789da32d52c/aHR0cHM6Ly9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL2lrb25hLWJ1Y2tldC1zdGFnaW5nL2ltYWdlcy81ZmY2ZWUwODkzMjhjOGFlZmVlYWJlMzMvdGFrZWF3YXktNjIyOGNlZDViMzAzZmMwM2ExNDhkZTUwLTYyMmEyYmNhOGM1MDZmMDE1YmU2MDFiNi5qcGVn.jpg",
        "menuType": 0,
        "availabilities": [
            {
                "dayOfWeek": 1,
                "startTime": "00:00",
                "endTime": "23:59"
            },
            {
                "dayOfWeek": 2,
                "startTime": "00:00",
                "endTime": "23:59"
            },
            {
                "dayOfWeek": 3,
                "startTime": "00:00",
                "endTime": "23:59"
            },
            {
                "dayOfWeek": 4,
                "startTime": "00:00",
                "endTime": "23:59"
            },
            {
                "dayOfWeek": 5,
                "startTime": "00:00",
                "endTime": "23:59"
            },
            {
                "dayOfWeek": 6,
                "startTime": "00:00",
                "endTime": "23:59"
            },
            {
                "dayOfWeek": 7,
                "startTime": "00:00",
                "endTime": "23:59"
            }
        ],
        "categories": [
            {
                "name": "Drinks",
                "description": "Classic beverages, straight out the fridge,",
                "nameTranslations": {},
                "descriptionTranslations": {},
                "_id": "623320b255ac900d97dadc56",
                "account": "60c9c64662af8db836d7aa1a",
                "posLocationId": "",
                "posCategoryType": "",
                "subCategories": [],
                "posCategoryId": "",
                "products": [
                    "623320b255ac900d97dadc35"
                ],
                "menu": "623320b255ac900d97dadc47",
                "sortedChannelProductIds": [],
                "subProductSortOrder": [],
                "subProducts": [
                    "623320b255ac900d97dadc35"
                ],
                "level": 1,
                "availabilities": []
            }
        ],
        "products": {
            "623320b255ac900d97dadc35": {
                "name": "Ginger Beer",
                "description": "Australia's favourite ginger beer!",
                "nameTranslations": {},
                "descriptionTranslations": {},
                "_id": "623320b255ac900d97dadc35",
                "account": "60c9c64662af8db836d7aa1a",
                "location": "61162720f1ba14ed8130f3df",
                "productType": 1,
                "plu": "DRNK-03",
                "multiply": 1,
                "posProductId": "POS-ID-031",
                "posProductCategoryId": "",
                "subProducts": [],
                "productTags": [],
                "posCategoryIds": [
                    "DRK"
                ],
                "imageUrl": "https://resizer.staging.deliverect.com/TqCZ3bm3q8nwrta4BQfUg3bo2wa0GOzWhoX9M95OS1E/rt:fill/g:ce/el:0/cb:2dba60946d8e4deeae355789da32d52c/aHR0cHM6Ly9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL2lrb25hLWJ1Y2tldC1zdGFnaW5nL2ltYWdlcy81ZmY2ZWUwODkzMjhjOGFlZmVlYWJlMzMvZ2luZ2VyYmVlci02MjI4NTU0OGRiNTk4NjAwMWViZjU4ZDEuanBn.jpg",
                "max": 0,
                "min": 0,
                "sortOrder": 0,
                "capacityUsages": [],
                "price": 500,
                "bottleDepositPrice": 100,
                "priceLevels": {},
                "deliveryTax": 9000,
                "takeawayTax": 9000,
                "eatInTax": 9000,
                "parentId": "623320b255ac900d97dadc56",
                "snoozed": false,
                "subProductSortOrder": []
            }
        },
        "modifierGroups": {},
        "modifiers": {},
        "bundles": {},
        "snoozedProducts": {},
        "productTags": [],
        "currency": 2,
        "validations": [],
        "nestedModifiers": false,
        "channelLinkId": "618d12f46bab85505ef86d87"
    }
]
{
  "success": true
}