M cenaly.ru
🚀 Getting Started

📱 QR Menu

Categories, items, photos, multilingual, allergens

Documentation

QR Menu — Complete Guide

What is a QR menu?#

A QR menu is a digital version of your venue's menu, available to guests via a QR code. The guest scans the code with their phone camera and instantly sees the full menu with photos, descriptions, prices, and translations into their language.

Advantages over a paper menu#

Paper menu Meni QR menu
Price updates Reprint (1–3 days, from €50) Instant, free
Languages 1–2, manual translation 27 languages, auto-translation
Photos Expensive printing Unlimited, free
Hygiene Physical contact Contactless
Allergens Small print Interactive filtering
Analytics Not possible Popularity, views
Annual cost €200–500+ From €0

Location (your venue)
├── Category: Breakfasts
│   ├── Item: Fried eggs with bacon
│   ├── Item: Pancakes with berries
│   └── Item: Granola with yogurt
├── Category: Salads
│   ├── Item: Caesar
│   └── Item: Greek salad
├── Category: Mains
│   └── ...
├── Category: Desserts
│   └── ...
└── Category: Drinks
    ├── Subcategory: Hot drinks
    ├── Subcategory: Cold drinks
    └── Subcategory: Alcoholic drinks

Category management#

Creating a category#

  1. Go to Menu+ Add category
  2. Enter the name in the primary language
  3. Upload a category photo (recommended 800×600px)
  4. Set the display order (drag & drop)

Editing#

  • Click the category name to edit
  • Translate names manually or use auto-translation
  • Changes are saved automatically

Deleting#

  • Click the 🗑 icon — the category and all its items will be deleted
  • This action is irreversible — confirm deletion in the dialog

Adding an item#

  1. Inside a category, click + Add item
  2. Fill in the fields:
Field Required Description
Name Dish/drink name
Description Ingredients, preparation method, weight
Price Price in the venue's currency
Photo Dish photo (recommended)
Allergens Allergen labeling
Variants Sizes/portions with different prices
Add-ons Additional ingredients
Tax group Which rate the storefront uses for this item: "Standard" or a group from your locations' tax tables (rates are set in Commerce → Taxes)

Dish photos#

  • Format: JPEG, PNG, WebP, HEIC/HEIF (iPhone photos), AVIF, GIF, BMP, TIFF, SVG, ICO; file size up to 10 MB
  • Recommended size: 800×600px or larger
  • AI enhancement: the system automatically optimizes the photo (brightness, contrast, cropping)
  • AI generation: if there's no photo, AI can generate an image based on the dish name

Variants (sizes/portions)#

Let guests choose a size or portion:

  • Small portion — 200g — ₽350
  • Medium portion — 350g — ₽500
  • Large portion — 500g — ₽700

Add-ons#

Additional ingredients or options:

  • Extra cheese — +₽80
  • Spicy sauce — +₽50
  • Gluten-free — +₽100

Multilingual support#

How auto-translation works#

  1. You enter the name and description in the primary language
  2. The system automatically translates into all selected languages (up to 27)
  3. You can edit any translation manually
  4. Manual edits take priority over auto-translation

Supported languages#

English, Russian, Georgian, German, French, Spanish, Italian, Portuguese, Dutch, Polish, Turkish, Arabic, Chinese, Japanese, Korean, Hindi, Thai, Vietnamese, Indonesian, Malay, Filipino, Ukrainian, Hebrew, Persian, Swahili, Amharic, Nepali.

How is the guest's language determined?#

  1. The system checks the guest's browser language
  2. If that language is enabled in the menu — it's shown in that language
  3. If not — it's shown in the venue's primary language
  4. The guest can switch the language manually

Design and branding#

Brand identity#

  • Logo — displayed in the menu header
  • Cover — banner at the top of the menu
  • Colors — the system adapts to your brand colors

Venue information#

The menu automatically displays:

  • Venue name
  • Address
  • Opening hours (if provided)
  • Contact details

QR code#

Generation#

  1. Go to the QR codes section, Guests / menu tab
  2. Configure:
    • QR code color
    • Logo in the center
    • Dot style (square/rounded)
  3. Download in PNG or SVG format

Where to place the QR code#

  • On tables — stickers, table tents, inserts under glass
  • At the entrance — near the host stand
  • On business cards — for promotional purposes
  • In Instagram/TikTok — link to your menu
  • On delivery packaging — for repeat orders

NFC stands#

In addition to QR codes, Meni supports NFC — a guest can tap their phone on a stand for instant access to the menu without scanning.


Updating the menu#

  • All changes (prices, descriptions, photos) take effect instantly
  • No need to reprint QR codes — they remain the same
  • Change history is saved

Content tips#

  1. Add photos — items with photos are viewed 3× more often
  2. Write descriptions — ingredients, weight, and preparation method help guests choose
  3. Specify allergens — this is an EU requirement and care for guests
  4. Update prices — instant updates without reprinting
  5. Use categories — a logical structure simplifies navigation

Stop list (out-of-stock items)#

If a dish or ingredient runs out, you can instantly hide the item from guests:

  1. In Menu, find the item
  2. Toggle Available → the item becomes inactive
  3. Guests will not see this item in the digital menu
  4. When the ingredient is back — turn it on again

Bulk stop list#

  • Select multiple items → ActionsHide selected
  • Morning stop list: the manager checks availability → disables unavailable items
  • KDS automatically removes hidden items from the kitchen screen

Notifications#

  • Staff receive a push notification when an item is added to the stop list
  • If someone tries to order a hidden item (cache) — the system will show the message "Dish temporarily unavailable"

Different menus for different times of day:

Setup#

  1. MenuSchedule+ Add schedule
  2. Set the time: breakfast (07:00–11:00), lunch (11:00–16:00), dinner (16:00–23:00)
  3. Assign categories/items to each schedule

How it works#

  • During the specified time, guests see only items from the current schedule
  • Outside the schedule — the full menu is shown
  • You can create special menus: business lunch, brunch, bar menu, kids' menu

Holiday and seasonal menus#

  • Create menus for holidays (New Year, February 14, Easter)
  • Set active dates
  • The menu will automatically turn on/off

Combo sets#

A combo set is a menu item that bundles several dishes under one price: "Burger + fries + drink", a business lunch, a kids' set.

The guest sees the combo as one item with a single name, description, photo and price, and adds it in one tap. The kitchen screen (KDS) expands the set into its dishes, so cooks see each element on its own line at the right station; with inventory connected, the ingredients of every dish in the set are written off from their own recipes.

Combo slots — "build your own lunch"#

Besides a fixed-composition set there are combo slots: the guest picks one option from each slot. The classic business lunch — "Soup: borscht / cream soup", "Main: cutlet / fish", "Drink: tea / compote".

What you configure How it works
Slot a name ("Drink", "Soup") with translations
Slot options menu dishes the guest chooses from
Option surcharge an optional add-on to the combo price (e.g. +2 for fresh juice)
Required whether a choice in this slot is mandatory
Default option pre-selected, so the guest can just add the set

The final price = combo price + surcharges for the chosen options.

The guest's choice travels into the order line, so the kitchen sees the actual dishes and stock is written off for exactly those, not for an "average lunch".

Combo availability window#

If a set is only relevant at certain hours — a lunch set from 12:00 to 15:00 — give it an availability schedule. See Schedule and Happy Hour.


AI menu concierge#

Guests don't always know what they want, and scrolling 120 items takes a while. The AI concierge takes a request in plain words — "something light, no onions, under 30 GEL" — and answers with two or three specific dishes from your menu, with prices and descriptions.

The concierge works only from your catalogue: it does not invent dishes and does not suggest anything that is not on the menu. A suggested dish can be added to the cart straight from the answer.


Family cart#

When several people share a table, everyone can add dishes from their own phone while the order stays one.

How it works: one guest (the "host") shows the QR code of their order, the others scan it and join. Each joiner sees and edits their own part, the host sees the whole order with a note of who added what. The hierarchy is strictly two levels, and up to ten people can join one order.

For the venue this beats several separate orders: one kitchen ticket, one bill, one round of serving.


Guest dietary profile#

In the menu filters the guest marks their dietary tags (vegetarian, halal, gluten-free…) and the allergens to exclude. The choice is saved on the device for this venue and survives a page reload and a return visit: a regular with a nut allergy doesn't have to tick it every time.

The profile lives only in the guest's browser and is not tied to their identity. More about the tags themselves — Allergens.


Upsell on the storefront and at checkout#

Three surfaces where the menu suggests adding more:

  • "Add to your order" at checkout — a curated row of dishes that you define yourself (the heading and the item list are configurable);
  • "Frequently bought together" — computed from your own orders, with no manual setup;
  • "Goes well with" on a dish card — related items.

The same principle works at the till — an upsell prompter for the waiter, see POS.


Order history and “Repeat order”#

A guest sees their previous orders at this venue — the “My orders” item in the storefront menu. The history is kept in the guest's browser (the last ten orders per venue), so it works without any sign-up: a regular who takes the same lunch repeats it in two taps. A signed-in guest additionally sees the server-side history of their orders.

The “Repeat” button rebuilds the basket — same options, modifiers and picks inside a combo. Before anything is added, the contents are checked against the current menu:

  • items that were withdrawn or put on the “86” stop list do not go into the basket — the guest sees a clear warning about which dishes are unavailable right now;
  • prices are taken as they are today, not from the past order, so a dish that went up will not go through at the old price;
  • everything else lands in the basket and the guest goes straight to checkout.

The history builds itself when an order is placed — there is nothing to switch on. A restaurant storefront gets it exactly like a shop storefront, with no separate customer account required.


NFC — contactless menu#

NFC (Near Field Communication) is an alternative to a QR code. The guest taps their phone on an NFC stand and instantly sees the menu.

NFC benefits#

  • Faster than QR (no need to open the camera)
  • Works even with the screen off (on some devices)
  • Premium impression

NFC setup#

  1. Order NFC stands (recommended: NTAG215, NTAG216)
  2. In the admin panel → QR & NFCWrite NFC
  3. Tap the phone on the stand → write the menu link
  4. Place the stands on tables

Compatibility#

  • iPhone (XS and newer) — works automatically
  • Android (with NFC) — works with an unlocked screen

AI features for the menu#

AI dish photo generation#

No dish photo? AI will create a realistic image:

  1. In the item editor, click ✨ AI Generate photo
  2. AI uses the dish name and description for generation
  3. If images have already been generated for similar requests, the "Ready-made AI images" dialog opens first: pick one with "Use this" or click "Generate new"
  4. A new generation returns one image and puts it into the card right away — there is no grid of variants to choose from
  5. To set the style up front, open the "Generation settings" panel with the chevron next to the button: background, angle, lighting, mood and an extra description added to the prompt

Recommendations:

  • Write a detailed description for better results
  • Specify plating style: "on a white plate", "rustic", "fine dining"
  • Generated photos can be replaced with real ones at any time

AI photo enhancement#

Uploaded photos are automatically improved:

  • Brightness and contrast correction
  • Background removal (if needed)
  • Web optimization (conversion to WebP)
  • Cropping to the required aspect ratio

AI dish descriptions#

AI can generate an appealing description:

  1. Enter the dish name and main ingredients
  2. Click ✨ Generate description
  3. AI creates an appetizing description tailored to your venue's style
  4. Edit if necessary

AI translations#

All texts are automatically translated into 27 languages using AI:

  • Translation takes context into account (culinary terminology)
  • You can edit any translation manually
  • New translations apply instantly

What you need to get started#

  • A location with a name and an address — the storefront is signed with them.
  • Categories and items with prices — the fast way to fill them in is import: from a photo of a paper menu, from an Excel file or from a website (Migrate to us).
  • A QR code — printed in the QR codes and devices section: as sheets, posters or one at a time.
  • Storefront languages — translation is automatic, you only pick the languages.
  • Item photos — not mandatory, but they are what sells.

Limitations#

  • On the free plan there is a limit on the number of items. It is soft: you can always edit what exists, but creating items beyond the limit is blocked. A batch import does not refuse outright — it loads as many as fit and explains the remainder with a banner.
  • AI features on the item card are billed to the AI balance — when it runs out you will see a banner rather than silence.
  • A separate menu per channel is something we deliberately do not build. For an aggregator or a kiosk you can override prices and hide items, but you cannot assemble "a completely different menu".
  • On the Russian brand there is no image resizing — photos are served as they are, so heavy files are worth shrinking before upload.
  • The menu editor is a very large window. Our internal clarity review gives it 2 out of 5: there are dozens of toolbar tools, and it is cramped for a newcomer.

Troubleshooting#

The guest sees an old menu. The storefront is served through a CDN: wait and reload the page with the cache cleared.

An item is missing from the storefront. Check in order: hidden at this location, outside its schedule window, on the 86 list, or the price is not filled in.

A new item cannot be created. The plan limit has been reached — editing remains available.

A translation did not appear. Languages are chosen in the storefront settings; after adding a language the menu is not translated instantly.

A photo uploads but looks heavy. On the Russian brand there is no resizing — shrink the image before uploading.


  • Schedule and Happy Hour — time-based availability of dishes and menus, happy hour, seasonal menus.
  • Kitchen (KDS) — how combo orders appear in the kitchen and split across stations.
  • Inventory — writing off ingredients when dishes and combos are sold.
  • Allergens — allergen and diet tags behind the guest dietary profile.
  • Orders — calling a waiter, pre-order slots and paying at the table.
  • POS — the waiter's upsell prompter and splitting the bill.