
Lo mínimo que hay que saber
1. La unidad es la terna: tienda × canal × fulfillment. Una fila por cada combinación posible. La misma tienda aparece varias veces, una por cada canal y tipo de entrega que atiende.2. Una fila necesita menú y lista de precios. Con uno solo no se puede sincronizar: el botón queda deshabilitado.3. Asignar no publica. Publicar es Sync. Y Sync manda lo que hay en ese momento, no lo que había cuando asignaste.
El camino simple
Abriste una tienda nueva y hay que ponerla a vender:- Filtra por esa tienda con el selector Store.
- En cada fila que te interese, Assign menu.
- En la misma fila, Assign list.
- Selecciona las filas y Sync.
La matriz: una fila por combinación
Cada fila es un destino real de venta. Estas son sus columnas:
Arriba hay siete filtros —tienda, grupo, canal, fulfillment, menú, lista y estado de sync— y una búsqueda que entra por nombre de tienda, de menú o de canal. Con cuarenta tiendas y cinco canales la matriz tiene doscientas filas: los filtros no son un adorno.
Para qué sirven los grupos de tiendas. Un grupo te deja filtrar de golpe todas las tiendas de una región, una marca o un formato, y asignarles el mismo menú en una sola operación. Sin grupos, cambiar el menú de delivery de una región es marcar tiendas a mano y equivocarse en una.
Asignar en bloque
Marca varias filas con los checkboxes y aparece la barra de acciones masivas: Assign menu, Assign list y Sync, con el conteo de lo seleccionado.

La regla del fulfillment
El diálogo de asignar menú no te muestra todos los menús. Solo los que sirven para el fulfillment de esa fila, más los agnósticos —el Golden, que sirve para todos—. Es el mismo criterio que hace que el fulfillment de un menú sea definitivo: un menú de delivery en una fila de salón no significa nada.Sincronizar: lo que pasa de verdad
Sync hace tres cosas, en este orden:- Aplasta el menú. Toma la estructura del menú, le pega los precios de la lista asignada y arma una carta plana, sin herencias ni fórmulas: la lista literal de lo que se vende y a cuánto.
- Lo manda al canal. El estado pasa a Pending.
- Espera la confirmación. El canal responde después, por su cuenta, y el estado queda en Synced o Failed.

Mientras haya filas en Pending, la pantalla se refresca sola cada quince segundos. No hace falta recargar ni quedarse mirando: puedes irte y volver.
El botón queda deshabilitado —“Assign a menu and a price list first”— mientras a la fila le falte el menú o la lista. Es a propósito: sin lista, todos los precios saldrían en cero.
El aplastado es de ahora, no de ayer
No hay versiones. Sync manda el estado actual. Toma el menú y la lista tal como están guardados en ese segundo. No existe “publicar la versión del lunes” ni volver atrás a un aplastado anterior.Tiene una consecuencia práctica que conviene tener presente: si alguien dejó el menú a medio editar, eso es lo que sale. Antes de sincronizar en bloque, conviene confirmar que el menú está como debe estar.
Sincronizó, pero algo quedó afuera
Una fila puede terminar en Synced y aun así haber dejado cosas en el camino. Cuando pasa, aparece un chip de advertencias en la columna Sync.Los lotes: 50 por tanda, uno a la vez
Se pueden seleccionar todas las filas que quieras, pero cada envío procesa como máximo 50. Si seleccionaste 120, se mandan las primeras 50 y la pantalla te lo dice: “Syncing the first 50 rows; 70 left for the next round”. Además, el canal procesa un lote por vendor a la vez. Si hay un envío en curso, el siguiente espera. No es una limitación caprichosa: aplastar un menú es caro, y mandar doscientas cartas a la vez termina en timeouts y en sincronizaciones a medias, que es peor que ir por tandas. Las filas seleccionadas a las que les falta menú o lista se saltean solas, y la pantalla te dice cuántas fueron.Ver exactamente qué se mandó
El botón del ojo, View sync preview, abre el último aplastado de esa fila. Es la única manera de responder con certeza “¿qué recibió el canal?”.
- Menu — la carta como quedó: categorías, productos, precios y modificadores.
- Snapshot JSON — la misma carta en crudo.
- Sync payload JSON — exactamente lo que se le mandó al canal.
Cambiar el precio de un solo destino
Hay una pantalla aparte, Precios y disponibilidad, para ajustar precios y visibilidad de un destino puntual sin abrir el menú ni la lista completa. Trabaja sobre las ternas que ya tienen menú y lista asignados desde aquí. Vale la pena conocer su regla, porque no es obvia:- El precio que cambias ahí vive en la lista, y esa lista puede estar compartida por varios destinos.
- La visibilidad vive en el menú, que también puede estar en uso en varios destinos.
- Pero al guardar se sincroniza solo esa terna. Los demás destinos se llevan el cambio en su próximo Sync.
Recetas: cómo se resuelven los casos reales
Poner a vender una tienda nueva
Poner a vender una tienda nueva
- Filtra por la tienda con el selector Store. Van a aparecer sus filas, una por canal y fulfillment.
- Selecciona todas las que esa tienda va a atender.
- Assign list con la lista que le corresponde.
- Assign menu — recuerda filtrar por Fulfillment y hacerlo por tipo, o solo vas a poder asignar el Golden.
- Selecciona todo de nuevo y Sync.
- Espera a que los estados pasen de Pending a Synced, y revisa si alguna fila trajo advertencias.
Dejar de vender en un canal
Dejar de vender en un canal
- Filtra por ese Channel.
- Selecciona las filas.
- Assign menu → Remove assignment.
Subiste precios y quieres que lleguen al canal
Subiste precios y quieres que lleguen al canal
Después de guardar el aumento en la lista de precios:
- Filtra por Price list con la lista que tocaste. Salen todas las ternas que la usan.
- Selecciona todas.
- Sync, por tandas de 50.
Un producto no aparece en la app y nadie sabe por qué
Un producto no aparece en la app y nadie sabe por qué
Recórrelo en este orden, que va de lo más común a lo más raro:
- ¿La fila está en Synced? Si está en Failed, ahí terminó el viaje.
- ¿Hay advertencias? Si el producto no tiene precio en la lista asignada, no se mandó — es la causa más frecuente.
- Abre View sync preview → pestaña Menu. Si el producto no está ahí, no salió de Fire.
- Abre el menú asignado. Fíjate si está sacado (Removed) u oculto (Hidden).
- Revisa Agotados. Puede estar apagado por la operación del día.
Un cambio de precio, seguido de punta a punta
Subiste un producto de 10,90 a 11,99 en la lista Delivery. Esto es lo que pasa en cada eslabón:
La fila que hay que mirar es la tercera: el estado Synced no significa que lo publicado esté al día, significa que la última sincronización salió bien. Si cambiaste precios después de ese envío, el canal sigue con los anteriores hasta la próxima.
Errores que salen caros
Glosario
Preguntas frecuentes
El botón de Sync está gris
El botón de Sync está gris
A la fila le falta el menú o la lista de precios. Hacen falta los dos: sin lista, todos los precios se publicarían en cero. El tooltip lo dice: “Assign a menu and a price list first”.
La fila quedó en Failed
La fila quedó en Failed
El canal rechazó el envío. Revisa que el menú tenga productos y que la lista tenga precios, y vuelve a sincronizar esa fila sola para ver si el error se repite. En el menú también verás el banner “Sync failed — menu snapshot is outdated”.
¿Puedo volver a publicar la versión de la semana pasada?
¿Puedo volver a publicar la versión de la semana pasada?
No. No hay versionado: cada Sync aplasta el menú y la lista tal como están en ese momento. Si hay que volver atrás, hay que deshacer el cambio en el menú o en la lista y sincronizar de nuevo.
Lo que viene
- Versionado de los aplastados, para poder republicar un estado anterior sin deshacer cambios a mano.
- Estado de los canales agregadores: hoy los agregadores reciben sus eventos, pero su resultado no se refleja en el estado de sincronización que ves aquí.
- Tandas más grandes: el tope de 50 por envío es una defensa contra los timeouts, no un objetivo.

