
The minimum you need to know
1. You already have a menu, even if you never created one. It’s the Golden, and it holds your whole catalog. It is created on its own when you add products, and it cannot be deleted.2. A custom menu inherits from the Golden and only stores the differences. It is not a copy: if you add a product to the catalog tomorrow, the custom menu has it too. The only thing it stores is where it departs.3. The fulfillment type is chosen when you create the menu and can never be changed. It is the one field on this screen with no way back.
The simple path
You don’t need to create any menu to start selling. You load your products into the catalog and the Golden builds itself out of all of them. That is your menu, and it serves every channel until a reason appears for it not to. The Golden carries the Golden label, has no fulfillment assigned — it serves all of them — and cannot be deleted: it is the entire catalog, the floor everything else hangs from.Golden and custom: two ways to have a menu
Why “inherits” and not “copies”. A copy freezes on the day you make it: three months later it is missing the twenty products that entered the catalog since, and nobody notices until a customer asks. A custom menu doesn’t have that problem because it doesn’t store products, it stores differences. Whatever you didn’t change still comes from the parent, always current.It is the same logic as linked price lists, applied to structure instead of price.
Creating a custom menu
Create Custom Menu, top right. Four fields, and only one of them is hard.
The field that matters: Base menu
Who it inherits from decides how much work you’ll have from here on.Inheritance goes three levels deep: Golden → custom → custom. There is no fourth. The selector only offers menus that can still be parents; if a menu isn’t in the list, it’s because hanging something off it would cross the limit.
The fulfillment type is chosen once
One vendor can have several menus for the same fulfillment type — three delivery menus, say, one per time slot or per zone. What it cannot have is one menu serving two fulfillment types at once. The only one that serves them all is the Golden, which has no fulfillment assigned.What the list tells you
The list is a tree: custom menus hang off their parent and fold and unfold. That way you see at a glance who inherits from whom.
Two notices can appear under the status: sync pending (it was sent and the channel hasn’t confirmed) and sync failed (the channel rejected it). Both are resolved on the Menu assignment screen, not here.
At the top you have search by name and three filters: type, status and fulfillment.
If you’re looking for the assignments list here, it’s gone. It used to live in a tab on this screen and moved to Menu assignment, which is a screen of its own and does considerably more.
Building the menu: the Structure tab
The editor has three tabs — Structure, Overrides and History — and Structure is where the work happens.
- Add category and Add (inside each category) open a catalog search — they offer what already exists in Products and Categories. What you add goes into this menu and touches nobody else.
- You reorder by dragging. Categories among themselves, and products inside each category. The order you leave is the order the customer sees.
- Two views of the same menu: Visual, to arrange things and see how they look, and Table, to review many products in a row with their prices and their badges.
Saving is all you have to do
This is the part that surprises everyone: there is no publish button in the editor. The menu keeps its structure current just by saving. What used to be publish, sync and preview buttons inside the editor moved entirely to the assignments screen, because publishing is not a property of the menu: it’s a decision about which store and which channel uses it. While you have unsaved changes you’ll see the amber Unsaved changes chip. Save draft turns it into Draft saved.Removing is not the same as hiding
Two actions that look alike and do different things. The difference shows up when you want to undo.
The interface says it itself: “Removed products are taken out of this menu entirely. To keep a product but not show it, use Hide instead.”
What you can change for this menu only
A custom menu can depart from its parent in several things at once. Every field you change is marked with a blue Override chip, and all the differences together show up on the Overrides tab.
The Overrides tab opens with “Inherits from <parent menu> — this tab shows only the differences” and splits into three blocks: product differences, removed products and category overrides. Each has Reset, and Reset all sits at the top: they return that field — or all of them — to the parent’s value.
The Price chip you’ll see there is not a menu change. It is the difference between what the product costs on the price list you are viewing the menu through and its catalog price, plus the count of modifier option prices fixed on that list. It shows up alongside the rest so you can see every difference in one place, but it is corrected on the price list, not on the menu.
The Overrides tab only appears on custom menus. The Golden inherits from nobody, so it has no differences to show.
The two lenses: prices and day
Two selectors above the editor that change what you see, not what the menu is.Prices from — the price lens
It shows the prices from whichever list you pick, and lets you edit them right there without leaving the menu. Useful for reviewing the menu through the channel’s eyes: “this is how the delivery menu looks with the delivery list”.
What the lens does not do: it does not change the menu’s list. Looking at another list’s prices reassigns nothing. Which list each store uses is decided in Menu assignment.
Day — the day lens
Day and Time filter the view to show you how the menu looks on that day at that hour. Categories with their own schedule that doesn’t cover that moment disappear, and the count of how many are hidden by schedule appears at the top. It is only a filter: it doesn’t edit schedules and doesn’t change the menu. Schedules are set on categories and products, not here.Price does not live in the menu
A menu says what is sold and in what order. Never how much it costs. Price lives in the price lists, and the one that applies comes from the list assigned to that store and that channel.That’s why two stores can use exactly the same menu and charge differently: same menu, different list. And it’s why raising a price requires touching no menu at all.
A menu doesn’t sell until it’s assigned
You finished building the menu, you saved, and nothing happened. That’s correct: saving does not publish. A menu only goes on sale when somebody says which store, which channel and which fulfillment type it’s used for, and presses Sync. That happens in Menu assignment, which is also where the sync pending and sync failed notices you see in the list get resolved.Recipes: how the real cases get solved
Removing a product from delivery without touching dine-in
Removing a product from delivery without touching dine-in
The schnitzels arrive cold and they decided to stop selling them for delivery.
- Open the delivery custom menu (not the Golden: dine-in stays as it is).
- Find the product and use Remove from menu.
- Save draft.
- In Menu assignment, sync the rows using that menu.
Mistakes that cost money
Glossary
Frequently asked questions
I got the fulfillment type wrong, how do I change it?
I got the fulfillment type wrong, how do I change it?
You can’t. The field is final from the moment the menu is created. The way out is to create another menu with the right fulfillment type and build it again.
What’s coming
- The History tab, empty today. The banner already hints at the scope: publish, override, structure and assignment events, with the full audit planned for a second stage.
- Duplicating a menu and viewing its JSON — the actions are in the editor menu, still disabled.
- Menu schedules from this screen: today the day lens only filters, and schedules are set on categories and products.
- Per-menu suggestions: today upselling and cross-selling are always inherited from the product and can’t be changed for one menu in particular.

