Restaurant menus move between platforms more often than most people expect. DeliverLogic exports its menus in a backoffice format where every product repeats once per option row — sizes, crusts, sauces and toppings each get their own row. Hyperzod imports product catalogs with option groups instead. Converting the two by hand means hours of copying and pasting, and the pricing model is different enough that manual conversion almost always gets an option price wrong. This guide explains the DeliverLogic format and how CSV Pilot converts it in one step.
What a DeliverLogic export looks like
DeliverLogic menus arrive in two shapes, and CSV Pilot detects both:
The RDS backoffice export (RID / MIID columns)
This format uses columns like RID, Restaurant, MIID, Category, Product, Base Price, Image, Availability, Active, Hidden, Quantity, and a set of option columns: Option Group, Option Group ID, Min Required, Max Allowed, Option, Option ID, Option Price, plus option cost and image columns.
The important idea is that one product spans many rows:
- The product itself is identified by
MIID— the Menu Item ID. Every row with the same MIID belongs to the same product. - Every row after the first carries one option member, like
Option Group = .sauce,Option = 460 Traditional Sauce,Option Price = 0. Base Pricerepeats on every row and belongs to the product, not to the option.Option Priceis an add-on price over the base — a whole garlic loaf at base ₹4.99 plus ₹3, a topping at plus ₹0.75, a sauce choice at plus zero.Min RequiredandMax Alloweddescribe the group: a sauce group with min 1 / max 1 is a required single choice; a toppings group with empty min/max is an optional multi-choice.ActiveandHiddencontrol whether the item should be live.
The Yelo-style import template (Product Name* / Addon ID columns)
Some DeliverLogic integrations export the Yelo template shape instead: columns like Product Name*, Product Price*, Category Name*, Product ID, Addon ID, Minimum Selection Required, Minimum Selection, MRP, Available Quantity.
In this shape:
- Every row is a full product — each size of a pizza has its own
Product IDand its ownProduct Price*. - Rows are grouped by the product's base name: the size word is stripped ("Margherita Small" → "Margherita"), so all sizes of one pizza become one product with one Size group.
- The
Addon IDcolumn marks option membership (each size has its own Addon ID). Product Price*is the full price of that row — the conversion takes the cheapest row as the base price and turns the rest into deltas.Minimum Selection Required/Minimum Selectionset REQUIRED and SINGLE vs MULTIPLE on the built group.- Products with no Addon ID stay flat — no option group is invented.
Available Quantity(when present) becomes per-variant inventory.
How the conversion works
1. Upload the menu export
Upload the DeliverLogic file in CSV Pilot. The tool detects the format and holds it unchanged until you ask — nothing is converted or modified without intent.
2. Ask to convert
Tell the agent "Convert this CSV for import." CSV Pilot then, for the RDS shape:
- Groups all rows by MIID into one product per menu item
- Uses the product's
Base Priceas the Hyperzod selling price - Builds one option group per
Option Group, cleaning the name (.saucebecomessauce) - Adds each
Optionas a variant with itsOption Priceas the delta over the base - Reads
Min Required/Max Allowedto set the group as required/single-choice or optional/multi-choice - Keeps
Active/Hiddenflags as product status, andCategoryas the category - Carries
Quantityinto product inventory, and option costs into variant cost prices
And for the Yelo template shape:
- Groups rows by category plus base name (size word stripped) into one product per menu item
- Uses the cheapest row's price as the Hyperzod selling price
- Builds a single Size group (or Options group when
Minimum Selectionis greater than one) with each Addon ID row as a variant priced as the difference over the base - Reads
Minimum Selection Required/Minimum Selectionfor REQUIRED and SINGLE vs MULTIPLE - Carries
MRP(the highest value in the group) into the compare price, andAvailable Quantityinto per-variant inventory when present
3. Review and export
The converted menu appears in the preview. Check the option groups for one pizza — the sauce group should be required single-choice, the toppings group optional multi-choice — then export for Hyperzod import.
What the conversion preserves
| DeliverLogic field | Hyperzod result |
|---|---|
| Product + Base Price (RDS) / cheapest Product Price (Yelo) | Product name + selling price |
| Option Group (RDS) / size word in name (Yelo) | Option group (name cleaned, e.g. ".sauce" → "sauce"; "Margherita Small" → Size group) |
| Option + Option Price (RDS) / Addon ID row price (Yelo) | Variant with price delta over base |
| Option Cost Floor / Default | Variant cost price |
| Min Required ≥ 1 / Minimum Selection Required > 0 | Required option group |
| Max Allowed = 1 / Minimum Selection ≤ 1 | Single-choice group; higher = multi-choice |
| Category / Active / Hidden | Category and status (Yelo template rows are always active) |
| Quantity (RDS) / Available Quantity (Yelo) | Product inventory / per-variant inventory |
A concrete example
A garlic bread item with base ₹4.99 and two options — "1/2 Loaf" (₹0) and "Whole Loaf" (₹3, cost ₹3) — becomes one product at ₹4.99 with a "whole or half loaf" option group containing both choices. A customer choosing the whole loaf pays ₹7.99. An 8-inch cheese pizza with a required sauce group (8 sauce choices at ₹0 each) and an optional toppings group (17 toppings at ₹0.75–₹1) becomes one product with two option groups, exactly the structure a customer expects when ordering.
CSV Pilot is an independent tool and is not affiliated with DeliverLogic or Hyperzod.