AI-powered Menu Manager

Manage restaurant menus — with a Copilot

Import, edit, and publish beautiful, accurate menus. Variants are first-class, prices are minor units, and bulk changes are safe. Tell the AI what you want changed — we translate it into precise actions.

Try: “Increase all Kebabs by 50 minor units”
Open Copilot
admin Menu Manager
Preview
Admin preview and options modal
Real data connected to the Playground DB
Why FoodlyOn

Clarity, safety, and speed for real menus

Time‑saving bulk tools
Edit hundreds of option prices or variant orders in a single pass — with previews, CSV export, and logs.
Safe by design
Minor‑unit pricing, snapshots, and an action log make every change auditable and reversible.
AI that speaks JSON
The Copilot emits strict actions, not scripts — perfect for approvals and rollbacks.
faster bulk option edits
0
price decimals — only precise minor units
1‑click
snapshots before/after large changes

Import menus fast

Pull from an existing shop, then normalize to variants and groups.

  • Map categories and items automatically
  • Detect variants and sizes reliably
  • Preview before applying

Bulk price updates

Mass inc/dec/set with previews, CSV export, and snapshots.

  • Filter by name/price/group
  • Set or increment in minor units
  • CSV preview + audit log

Option templates

Reuse groups across variants; clone with one click.

  • Create once, attach anywhere
  • Duplicate with options
  • Reorder with drag-and-drop

Schedule changes

Disable Deep Dish after 23:00 or set promos for weekends.

  • Time-based availability windows
  • Category or item scope
  • Preview before publish
  1. Import your current menu or start fresh.
  2. Edit items, variants, and option groups with live preview.
  3. Use Copilot for natural-language updates and price changes.
  4. Publish, take a snapshot, and share your menu.
Open Menu Manager Preview Menu
{ "actions": [ { "type": "CreateCategory", "name": "Kebabs" }, { "type": "CreateItem", "category_id": 1, "name": "Chicken Shawarma" }, { "type": "CreateVariant", "item_id": 1, "name": "Large", "price_minor": 1099 } ] }
The Copilot produces strict, validated JSON actions. Prices are integers (minor units).
Copilot Examples

Natural prompts → precise JSON actions

Increase category prices
“Increase all Kebabs by 50 minor units”
{ "actions": [ { "type":"UpdateVariantPrice", "variant_id": 123, "price_minor": 1149 } ] }
Time-based availability
“Disable Deep Dish after 23:00”
{ "actions": [ { "type":"ToggleItemAvailability", "item_id": 456, "is_available": false } ] }
Attach option templates
“Attach Pizza Toppings to all Pizzas”
{ "actions": [ { "type":"AttachGroupToItem", "item_id": 789, "group_id": 55 } ] }
Move & rename
“Move Chicken Shawarma to Kebabs, then rename category to Kebabs & Wraps”
{ "actions": [ { "type":"MoveItemToCategory", "item_id": 321, "to_category_id": 12 }, { "type":"RenameCategory", "category_id": 12, "new_name":"Kebabs & Wraps" } ] }

Import integrations

Import menus directly from partner platforms to jump‑start your setup.

  • Category and item mapping with diff preview
  • Variant size detection and price normalization
  • Option group reconciliation
Just Eat Wolt Uber Eats More soon

OCR from PDFs & photos

Upload a PDF or photo of a printed menu. We’ll detect items, prices, and groups, then let you confirm before import.

  • Table detection with multi-language support
  • Minor-unit price parsing + currency awareness
  • Human-in-the-loop corrections and approvals
  • Price parsing to integer minor units
  • Category + variant inference
  • Human‑in‑the‑loop validation

Frequently asked questions

Do I need to set prices twice?
No — all prices live on variants in integer minor units. Items compute “from” prices automatically.
Can I undo large changes?
Yes. Use snapshots before/after and rely on the action log or CSV exports to audit edits.
What if the Copilot is unsure?
It asks one disambiguation question. No destructive changes happen without explicit confirmation.

Ready to modernize your menu?

Try the demo or sign in to manage your own.