> ## Knowledge Base Index
> Fetch the complete knowledge base index at: https://support.eatos.com/sitemap.xml
> Use this file to discover available pages before exploring further.
> Pure-Markdown content can be obtained by appending a '.md' suffix to the content URLs listed in the sitemap (without the trailing slash).

# Guide on Constructing a Menu


### Introduction

This document will walk you through the process of creating your restaurant menu for your Point-of-Sale. It is designed in a step-by-step guide or in a recommended order to easily organize your menu offerings. Each sheet has sample entries to reference and make it easier for you to build your restaurant menu.

---

### Table of Contents

* [ **Default Modifiers** ](#3-default-modifiers) 
* [ **Modifiers** ](#3-modifiers) 
* [ **Add-Ons** ](#3-add-ons) 
* [ **Groups** ](#3-groups) 
* [ **Products** ](#3-products) 
* [ **Categories** ](#3-categories) 
* [ **Menu** ](#3-menu) 
* [ **Printers** ](#3-printers) 
* [ **Taxes** ](#3-taxes) 
* [ **Service Charges** ](#3-service-charges) 
* [ **Discounts** ](#3-discounts) 

---

${youtube}[Menu Build](oP7fNJXx-RI)

---

|| **Important Notes**

* Fill each sheet of the Excel document – note that all sheets are essential to successfully create your restaurant menu
* Follow the sample format shown in each section
* Only use **Semicolon** ( ; ) to separate each data value within the excel **No Commas**
* Please follow the syntax demonstrated in the sample menu
* The data within is very case sensitive; always ensure to be consistent with the naming conventions
* Always input **0 or $0.00** in the amount column; no value or leaving it blank will cause system errors
* **Taxes**, **Discounts**, **Service Charge** & **Printers** can be configured at the eatOS dashboard and POS device

If you have a question or need assistance, please don't hesitate to contact your implementation team.

---

### Default Modifiers

The best way to begin creating your restaurant menu is by listing all the default modifiers for each of your products. Using the Excel menu template (to easily manage listings), list all of the default modifiers in the **Name** column of the **Ingredients** sheet.

![Ingredients](https://storage.crisp.chat/users/helpdesk/website/74260be74e639800/image_1ux6oec.png)

![Default Modifier](https://storage.crisp.chat/users/helpdesk/website/-/7/4/2/6/74260be74e639800/image_set47b.png)

|| **Important Required Values**
* **Name** = Custom Default Modifier Name
* **Option 1 Name** = Regular / Normal
* **Option 1 Price** = 0
* **Type** = 1 (Always ensure to input **1** within this column (Type), leaving blank will cause system errors

---

### Modifiers

After you have listed all your default modifiers, our next step is to create modifiers. From the modifiers sheet, list all of the Modifiers in the Name column.

|| Important Note Setting **Mandatory = True** – makes it a forced modifier

This means the customer will be required to select **One** item before tapping **Add** or adding the items to the order

Setting **Mandatory = False** – means customers are not required to select an item

Enable **Modifier option** and set the selection capacity of multiple modifiers at the eatOS dashboard Menu Modifiers section can be controlled either on the POS or the dashboard.

![Modifier](https://storage.crisp.chat/users/helpdesk/website/74260be74e639800/image_orjy4z.png)

![Modifier on POS](https://storage.crisp.chat/users/helpdesk/website/74260be74e639800/image_1yieb26.png)

|| Important Required Values

* **Name** = Custom Modifier Name
* **Mandatory** = True / False
* **Options Allowed**= True / False
* **Multiple Options** = True / False
* **Options Quantity** = Custom Quantity (input how many options a customer can choose from a modifier)
* **Option 1 Name** = Regular
* **Option 1 Price** = Custom Price

---

### Add-Ons

Begin to list all add-ons in the Name column from the **Add-Ons** sheet. If add-ons have **Multiple Options** set value on **Multiple Options** = True

|| **Important Note**  Setting **Mandatory = True** – makes it a forced add-on

* This means the customer will be required to select **One** item before tapping **Add** or adding the items to the order

Setting **Mandatory = False** – means customers are not required to select an item

It is recommended to always set **Mandatory = False** to prevent any end-user error in completing orders.

![Add-Ons](https://storage.crisp.chat/users/helpdesk/website/74260be74e639800/image_9ryjv3.png)

![Add-Ons on POS](https://storage.crisp.chat/users/helpdesk/website/74260be74e639800/image_fsnp1s.png)

|| **Important Required Values**

* **Name** = Custom Add-Ons Name
* **Mandatory** = True / False
* **Options Allowed** = True / False
* **Multiple Options** = True / False
* **Options Quantity** = Custom Options Quantity
* **Option 1 Name** = Regular or Custom Option Name
* **Option 1 Price** = Custom Price

---

### Groups

Now that you have listed your modifiers and add-ons, you can set a name for **Group** your modifiers and add-ons from your listings. **Grouping** Your modifiers and add-ons allow you to present them in an organized manner.

|| **Important Note**

* Ensure to label the **Type** column correctly, as this may cause errors in displaying products on your Point-Of-Sale.
* Only use **Semicolons** ( ; ) to separate values within Excel rows.

![Groups](https://storage.crisp.chat/users/helpdesk/website/74260be74e639800/image_12njlzr.png)

![](https://storage.crisp.chat/users/helpdesk/website/74260be74e639800/image_14qqdwi.png)

|| **Important Required Values**

* **Name** = Custom Group Name
* **Elements** = Insert all modifiers/add-ons for a group, separated by a semicolon. See the sample for reference
* **Type** = Assign group as **Add-On** or **Modifier**

**Group modifier** can share individual modifiers and add-ons. A product may have multiple modifier groups assigned, and a modifier group can also be assigned to more than one product.
---

### Products

The **products** section provides complete details of your menu. On the **Product** sheet, input all **Important Required Values** for each column to work properly.

|| **Important Note**

* Only use **Semicolons** ( ; ) to separate data values within Excel rows for ingredients, modifiers, and add-ons
* Okay to use **Commas** (,) **only** for product description at the description column

![Products](https://storage.crisp.chat/users/helpdesk/website/74260be74e639800/image_wdsf39.png)

![Products on POS](https://storage.crisp.chat/users/helpdesk/website/74260be74e639800/image_185rkzo.png)

|| **Important Required Values**

* **Product Name** = Custom Product Name (use the same names for Printer Display Name & Menu Display Name)
* **Description** = Custom Product Description (may use commas as separator)
* **Ingredients** = Custom Product Ingredients (separate each using **Semicolons** ) Ex. Almonds;Avocado;Cranberries
* **Modifiers & Add-Ons** = Custom Product Modifiers / Add-ons (separate each using **Semicolons** )
* **Groups** = Custom Group Modifier / Add-ons
* **Variant 1 Name** = Regular / Custom Variant Name
* **Variant 1 SKU** = 1
* **Variant 1 Price** = Custom Product/Variant Amount
* **Variants** = If the product has more than one **Type** of offering on the same product, you may distinguish them using variants as shown above

---

### Categories

On the Categories sheet, assign **Products** within **Categories**. This section allows you to create **Parent & Child** Categories. It is important to note the difference between the parent category column and the category column itself.

|| **Important Note**

**Parent Categories** will be named individually in the **Category** column.
* No entry is required in the **Parent** column
**Child Category** will be named within the category column and followed by being assigned to the individual named **Parent** categories.
* Insert parent category within **Parent Column**

![Categories](https://storage.crisp.chat/users/helpdesk/website/74260be74e639800/image_bc2q0b.png)

![Categories on POS](https://storage.crisp.chat/users/helpdesk/website/74260be74e639800/image_1otx4bd.png)

|| **Important Required Values**

**a.** **Category** = Custom Category Name
**b.** **Parent** = Custom Parent Name (insert only for respective child category)
**c.** **Products** = Assign **All products** for each child category separated by **Semicolon** ( ; )
**d.** **Position** = Custom Number Entry (reflects which parent or child category will be displayed first in their respective order)

---

### Menu

Create or provide a **Menu Name** for your Menu(s). From the Menu sheet, create **Menus** with their specified parameter and products.

![Menu](https://storage.crisp.chat/users/helpdesk/website/74260be74e639800/image_1o2pucf.png)

|| **Important Required Values**

* **Menu Name** = Custom Menu Name
* **Start Date** = Custom Start Date (configure using the eatOS dashboard or on the Point-of-Sale Device)
* **End Date** = Custom End Date (configure using eatOS dashboard or on Point-of-Sale Device)
* **Active** = **True** – reset through the eatOS dashboard or on the POS device
* **Position** = Custom Number (will reflect placement on POS device)
* **Days** = Custom Weekday Entry (separate using **Semicolon** )
* **Open Time** = Custom Time Entry (configure open time at eatOS dashboard or on Point-of-Sale Device)
* **Close Time** = Custom Time Entry (configure close time at eatOS dashboard or on Point-of-Sale Device)
* **Categories** = Insert respective **Parent category** name separate entry using **Semicolon**
---

**Printers/Taxes/Service Charge/Discounts**

To easily assign and create **Printers, Taxes, Service Charge** , and **Discounts**, we recommend adding and configuring topics to the eatOS dashboard or your POS device.

Below are sample entries on Excel when exported from your dashboard:

---

### Printers

![](https://storage.crisp.chat/users/helpdesk/website/74260be74e639800/image_d1aywh.png)

|| **Important Required Values**

* **Name** = Custom Printer Name
* **Serial Number** = Printer Serial Number
* **Type** = Printer

---

### Taxes

![Taxes](https://storage.crisp.chat/users/helpdesk/website/74260be74e639800/image_rt45gm.png)

![](https://storage.crisp.chat/users/helpdesk/website/74260be74e639800/image_1jxjf6d.png)

|| **Important Required Values**
* **Tax Name** = Custom Tax Name
* **Type** = Exclusive
* **Value** = Input Tax Amount / Tax Percentage
* **Mode** = Input Value Mode **(% or $)** 
* **Tax Apply for** = Input Order Type to Apply Tax (separated by SEMICOLON)
---

### Service Charges

![Service Charges](https://storage.crisp.chat/users/helpdesk/website/74260be74e639800/image_kgxpb4.png)

![](https://storage.crisp.chat/users/helpdesk/website/74260be74e639800/image_7kjp5n.png)

|| **Important Required Values**

* **Service Charge Name** = Custom
* **Type** = Exclusive
* **Value** = Input Tax Amount / Tax Percentage
* **Mode** = Input Value Mode ( **% or $**)
---

### Discounts

![Discounts](https://storage.crisp.chat/users/helpdesk/website/74260be74e639800/image_qwziw7.png)

![](https://storage.crisp.chat/users/helpdesk/website/74260be74e639800/image_dwkbb1.png)

|| **Important Required Values**

* **Discount Name** = Custom Discount Name
* **Required PIN** = Set – Required PIN - True to require the employee to enter a **PIN** to apply discount Input **FALSE** to not require a PIN
* **Discount Value** = Input Discount Amount / Discount Percentage
* **Value Mode** = Input Value Mode ( **% or $**)
* **Products** = Input applicable products

[ **Back to Top**](#3-introduction) 