Skip to main content
Los horarios a nivel de menú controlan cuándo un menú compuesto completo está activo. Los horarios a nivel de producto restringen aún más la ordenabilidad — útil para ítems de happy hour, especiales de almuerzo o productos de temporada que permanecen en el catálogo pero no siempre son comprables.

Qué incluye este ejemplo

Request

Define availability.schedules en el producto. Usa la misma forma semanal que en los horarios de menú: exactamente 7 entradas day_of_week (monday–sunday), cada una con un array periods. Los periodos abiertos usan start_time / end_time; closed es opcional (por defecto false); start_date / end_date opcionales acotan una ventana con fechas. Usa null cuando el producto no tenga restricción horaria. Ver Horarios.
product-special-schedule.json

Puntos clave

  • Horarios de menú vs producto. El menú permanece activo todo el día. La cerveza se oculta fuera de 17:00–19:00 entre semana aunque la categoría y el menú sigan visibles.
  • Semana completa requerida. Los fines de semana siguen presentes con "periods": [] (cerrado todo el día). Semanas parciales fallan la validación.
  • Las categorías también pueden tener horario. Usa categories[].availability.schedules cuando una sección completa deba aparecer solo en ciertas horas.
  • Indisponibilidad temporal. Para 86 puntuales, prefiere availability.status: OUT_OF_STOCK con out_of_stock_until en lugar de reconstruir horarios.
  • Overrides por contexto. Para cambiar horarios de un producto en un canal, tienda, tipo de fulfillment o menú concreto sin un upsert completo de menú, llama a Update product con ?store_id, ?channel_id, ?fulfillment_id y/o ?menu_id, enviando availability.schedules en el body del producto de menú.

Relacionado

Sync de menús — horarios

Niveles de horario: menú, categoría y producto

Menú multi horario

Dos menús daypart en un upsert