Skip to main content
Un menú responde una pregunta: ¿qué se vende? Lo que cambia es dónde. La carta del local no es la de delivery, la del aeropuerto no es la de la sucursal del centro, y a las dos de la mañana no se vende lo mismo que al mediodía. Sostener cinco cartas en paralelo, producto por producto, es donde se cuelan los errores que después alguien descubre en un ticket. Esta pantalla existe para que tengas muchas cartas distintas sin mantenerlas cinco veces. Navega a Restaurant OS → Menú y Productos → Menús.
Listado de menús en vista de árbol

Lo mínimo que hay que saber

1. Ya tienes un menú, aunque no lo hayas creado. Es el Golden, y contiene todo tu catálogo. Se crea solo cuando cargas productos, y no se puede eliminar.2. Un menú custom hereda del Golden y solo guarda las diferencias. No es una copia: si mañana agregas un producto al catálogo, el custom también lo tiene. Lo único que guarda es en qué se aparta.3. El tipo de fulfillment se elige al crear el menú y no se puede cambiar nunca más. Es el único campo sin vuelta atrás de esta pantalla.

El camino simple

No necesitas crear ningún menú para empezar a vender. Cargas tus productos en el catálogo y el Golden se arma solo con todos ellos. Ese es tu menú, y sirve para todos los canales hasta que aparezca una razón para que no sirva. El Golden viene marcado con la etiqueta Golden, no tiene fulfillment asignado —sirve para todos— y no se puede eliminar: es el catálogo entero, el piso del que cuelga todo lo demás.
Si vendes lo mismo en todos lados, esto es todo lo que necesitas. El resto del manual es para cuando aparece la segunda carta.

Golden y custom: dos maneras de tener un menú

Por qué “hereda” y no “copia”. Una copia se congela el día que la haces: tres meses después le faltan los veinte productos que entraron al catálogo desde entonces, y nadie lo nota hasta que un cliente pregunta. Un menú custom no tiene ese problema porque no guarda productos, guarda diferencias. Lo que no cambiaste sigue viniendo del padre, siempre al día.Es la misma lógica de las listas de precios conectadas, aplicada a la estructura en vez de al precio.

Crear un menú custom

Botón Crear menú custom, arriba a la derecha. Son cuatro campos y solo uno es difícil.
Diálogo de creación de un menú custom

El campo que importa: Base menu

De quién hereda decide cuánto trabajo vas a tener de aquí en adelante.
La herencia llega hasta tres niveles: Golden → custom → custom. No hay un cuarto. El selector solo te ofrece los menús que todavía pueden ser padres; si un menú no aparece en la lista, es porque colgar algo de él pasaría el límite.
Al confirmar con Create and edit menu el menú se crea y te deja directamente en el editor.

El fulfillment se elige una sola vez

El tipo de fulfillment no se puede cambiar después de crear el menú. Si creaste el menú de la madrugada como pickup cuando era para delivery, no hay forma de corregirlo: hay que crear otro menú y volver a armarlo.El propio diálogo lo dice antes de que confirmes: “The menu belongs to a single fulfillment type and it cannot be changed later”. Es la línea que conviene leer dos veces.
Un mismo vendor puede tener varios menús para el mismo fulfillment —tres menús de delivery, por ejemplo, uno por franja horaria o por zona—. Lo que no puede es un menú que sirva para dos fulfillments a la vez. El único que sirve para todos es el Golden, que no tiene fulfillment asignado.

Qué te dice el listado

El listado es un árbol: los menús custom cuelgan de su padre y se pliegan y despliegan. Así se ve de un vistazo quién hereda de quién. Debajo del estado pueden aparecer dos avisos: sync pending (se mandó y el canal todavía no confirmó) y sync failed (el canal rechazó el envío). Los dos se resuelven en la pantalla de Asignación de menús, no aquí. Arriba tienes búsqueda por nombre y tres filtros: tipo, estado y fulfillment.
Si buscas el listado de asignaciones aquí, ya no está. Vivía en una pestaña de esta pantalla y se mudó a Asignación de menús, que es una pantalla propia y hace bastante más.

Armar el menú: la pestaña Structure

El editor tiene tres pestañas —Structure, Overrides e History— y en Structure es donde se trabaja.
Pestaña Structure del editor de menús
  • Add category y Add (dentro de cada categoría) abren un buscador del catálogo — ofrecen lo que ya existe en Productos y Categorías. Lo que agregas se suma a este menú y no toca a nadie más.
  • Se reordena arrastrando. Las categorías entre sí y los productos dentro de cada categoría. El orden que dejas es el orden en que el cliente ve la carta.
  • Dos vistas del mismo menú: Visual, para acomodar y ver cómo queda, y Table, para revisar muchos productos de corrido con sus precios y sus marcas.

Guardar es todo lo que hay que hacer

Esta es la parte que sorprende a todo el mundo: en el editor no hay botón de publicar. El menú mantiene su estructura al día solo con guardar. Lo que antes eran botones de publicar, sincronizar y previsualizar dentro del editor se mudó entero a la pantalla de asignaciones, porque publicar no es una propiedad del menú: es una decisión sobre en qué tienda y en qué canal se usa. Mientras tengas cambios sin guardar verás el chip ámbar Unsaved changes. Con Save draft pasa a Draft saved.
Si te vas del editor con cambios sin guardar, se pierden y nadie te pregunta nada. A diferencia de Listas de precios, esta pantalla no tiene una guarda que te detenga al salir: el chip Unsaved changes es todo el aviso que hay.Guarda antes de cambiar de pestaña, de menú o de pantalla.

Sacar no es lo mismo que ocultar

Dos acciones que se parecen y hacen cosas distintas. La diferencia aparece cuando quieres volver atrás. La propia interfaz lo resume: “Removed products are taken out of this menu entirely. To keep a product but not show it, use Hide instead.”
Nada de esto sirve para “se acabó a mitad del servicio”. Sacar u ocultar un producto aquí es una decisión de carta, permanente hasta que alguien la deshaga a mano. Si lo que pasó es que se terminaron las papas a las dos de la tarde, eso se resuelve en Agotados, que vuelve solo al cierre y no te obliga a acordarte.

Lo que puedes cambiar solo en este menú

Un menú custom puede apartarse del padre en varias cosas a la vez. Cada campo que cambias queda marcado con un chip azul Override, y todas las diferencias juntas se ven en la pestaña Overrides.
Pestaña Overrides con las diferencias respecto del menú padre
La pestaña Overrides encabeza con “Inherits from <menú padre> — this tab shows only the differences” y separa tres bloques: diferencias de producto, productos sacados y overrides de categoría. Cada uno tiene Reset, y arriba está Reset all: devuelven ese campo —o todos— al valor del padre.
El chip Price que verás ahí no es un cambio del menú. Es la diferencia entre lo que cuesta el producto en la lista de precios con la que estás mirando el menú y su precio en el catálogo, más la cuenta de precios de opciones de modificadores fijados en esa lista. Aparece junto a los demás para que veas todas las diferencias en un solo lugar, pero se corrige en la lista de precios, no en el menú.
La pestaña Overrides solo aparece en los menús custom. El Golden no hereda de nadie, así que no tiene diferencias que mostrar.
Las sugerencias de upselling y cross-selling se ven desde la fila del producto, pero son de solo lectura: hoy se heredan siempre del producto y no se pueden cambiar por menú.

Las dos lentes: precios y día

Dos selectores arriba del editor que cambian lo que ves, no lo que el menú es.

Prices from — la lente de precios

Muestra los precios de la lista que elijas, y te deja editarlos ahí mismo sin salir del menú. Útil para revisar la carta con los ojos del canal: “así se ve el menú de delivery con la lista de delivery”.
El selector Prices from abierto, con la lente de día sobre la estructura del menú
Si la lista elegida está conectada a otra, cada celda muestra su marca —Formula o Fixed— y arriba el conteo de cuántas hay de cada una.
Cambiar de lente con precios sin guardar los descarta. Aparece el aviso Unsaved prices y la única salida es Discard and switch. Guarda antes de cambiar de lista.
Lo que la lente no hace: no cambia la lista del menú. Mirar los precios de otra lista no reasigna nada. Qué lista usa cada tienda se decide en Asignación de menús.

Day — la lente de día

Day y Time filtran la vista para mostrarte cómo queda la carta ese día a esa hora. Las categorías con horario propio que no cubren ese momento desaparecen, y arriba se lee cuántas quedaron hidden by schedule. Es solo un filtro: no edita horarios ni cambia el menú. Los horarios se cargan en las categorías y los productos, no aquí.

El precio no vive en el menú

Un menú dice qué se vende y en qué orden. Nunca cuánto cuesta. El precio vive en las listas de precios, y el que se aplica sale de la lista asignada a esa tienda y ese canal.Por eso dos tiendas pueden usar exactamente el mismo menú y cobrar distinto: mismo menú, distinta lista. Y por eso subir un precio no requiere tocar ningún menú.

Un menú no vende hasta que se asigna

Terminaste de armar el menú, guardaste, y no pasó nada. Es correcto: guardar no publica. Un menú recién sale a vender cuando alguien dice en qué tienda, en qué canal y para qué fulfillment se usa, y aprieta Sync. Eso ocurre en Asignación de menús, y es también donde se resuelven los avisos de sync pending y sync failed que ves en el listado.

Recetas: cómo se resuelven los casos reales

Después de las 22:00 la cocina trabaja con media brigada y no puede sostener toda la carta.
  1. Crear menú custom. Nombre: Madrugada.
  2. Base menu: Golden Menu — arranca con todo y le quitas lo que no va.
  3. Fulfillment type: el que corresponda. Revisa dos veces: no se cambia después.
  4. En Structure, saca con Remove from menu todo lo que la cocina no puede hacer de noche.
  5. Save draft.
  6. Ve a Asignación de menús y asígnalo a las tiendas que abren de madrugada.
Los productos que quedaron siguen heredando del Golden: si mañana cambia la ficha de uno, el menú de madrugada se entera solo.
Son dos cosas distintas y se resuelven en dos pantallas distintas.
  1. La carta: crea un menú custom que herede del Golden y saca lo que no se vende en el aeropuerto.
  2. Los precios: crea una lista de precios conectada a la base, con =P*1.15.
  3. En Asignación de menús, a la tienda del aeropuerto asígnale ese menú y esa lista.
No hace falta tocar precios dentro del menú. Son ejes independientes a propósito: el mismo menú puede convivir con cinco listas distintas.
Las milanesas llegan frías y decidieron no venderlas más por delivery.
  1. Abre el menú custom de delivery (no el Golden: el local se queda como está).
  2. Busca el producto y usa Remove from menu.
  3. Save draft.
  4. En Asignación de menús, sincroniza las ternas que usan ese menú.
En el Golden el producto sigue intacto, y por lo tanto en el salón se sigue vendiendo. Si más adelante cambias de idea, está en la pestaña Removed del diálogo de agregar, con Restore.
  1. Crear menú custom con Base menu → No parent (empty menu).
  2. Agrega las categorías con Add category y los productos con Add.
  3. Acomoda el orden arrastrando.
  4. Save draft y asigna en la otra pantalla.
Este menú no hereda de nadie: lo que entre al catálogo mañana no va a aparecer aquí solo. Es la contrapartida de arrancar vacío, y es la razón por la que conviene elegir esta opción solo cuando de verdad no hay nada que compartir.
Un agregador suele querer menos productos y fotos propias.
  1. Crea un menú custom que herede del Golden, con el fulfillment que corresponda.
  2. Saca los productos que no van en ese canal.
  3. Donde haga falta otra foto o un nombre más comercial, edítalos: quedan marcados con el chip Override y no tocan la ficha original.
  4. Los precios, aparte: una lista conectada a la base que compense la comisión.
  5. Asigna menú y lista a la terna de ese canal, y sincroniza.
Todo lo que no cambiaste sigue heredando. El día que subas una foto nueva al catálogo, este menú la toma sola — salvo en los productos donde pusiste una propia.

Errores que salen caros

Elegir mal el fulfillment al crear el menú. No se puede corregir. Hay que crear otro menú y volver a armarlo entero.
Irse del editor con cambios sin guardar. No hay ninguna pregunta al salir: el trabajo se pierde en silencio. El chip Unsaved changes es el único aviso.
Usar Remove from menu para un producto que se acabó hoy. Sacarlo es una decisión de carta y se queda ahí hasta que alguien lo restaure a mano. Para lo temporal está Agotados, que vuelve solo.
Creer que guardar el menú lo publica. Guardar deja la estructura al día; el canal no se entera de nada hasta que alguien sincroniza en Asignación de menús.
Arrancar con No parent (empty menu) por costumbre. Un menú sin padre no hereda: los productos nuevos del catálogo nunca van a aparecer solos, y seis meses después la carta está incompleta sin que nada lo avise.

Glosario


Preguntas frecuentes

Guardar no publica. El canal recibe el menú recién cuando alguien sincroniza la terna correspondiente en Asignación de menús.
No se puede. El campo es definitivo desde el momento en que se crea el menú. La salida es crear otro menú con el fulfillment correcto y volver a armarlo.
Revisa de quién hereda ese menú. Si nació con No parent (empty menu), no hereda de nadie y los productos nuevos hay que agregarlos a mano con Add. Si hereda del Golden, debería aparecer solo; si no está, fíjate si alguien lo sacó con Remove from menu — estará en la pestaña Removed, con Restore.
Sí. Un vendor puede tener varios menús para el mismo fulfillment: uno por franja horaria, por zona o por marca. Lo que no existe es un menú que sirva para dos fulfillments a la vez — para eso está el Golden, que no tiene ninguno asignado.
Porque es el catálogo. Es donde aterrizan los productos que cargas y el punto de partida del que heredan los demás menús. Eliminarlo dejaría a los custom heredando de la nada.

Lo que viene

  • La pestaña History, hoy vacía. El banner ya anticipa el alcance: eventos de publicación, overrides, estructura y asignaciones, con la auditoría completa planificada para una segunda etapa.
  • Duplicar un menú y ver su JSON — las acciones están en el menú del editor, todavía deshabilitadas.
  • Horarios del menú desde esta pantalla: hoy la lente de día solo filtra, y los horarios se cargan en categorías y productos.
  • Sugerencias por menú: hoy el upselling y el cross-selling se heredan siempre del producto y no se pueden cambiar para un menú en particular.