M masamenu.tr
⚙️ Функции

🍲 Подписки на обеды

Планы питания по календарю: подписка, пропуски дней, автогенерация заказов

Документация

Подписки на обеды (meal plans)

План питания — это не разовый заказ, а подписка: гость платит за период (неделю или месяц) и получает готовые обеды по расписанию, без повторного оформления каждый день. Формат рассчитан на столовые, тёмные кухни (dark kitchen), корпоративную доставку обедов в офис и фитнес-питание — везде, где гость ест по графику, а не эпизодически.

Раздел рассчитан только на общепит: он доступен локациям с типом бизнеса «ресторан», «кафе», «бар», «фастфуд» или «столовая» (решение 11 сентября 2026). У салона, магазина, отеля или ПВЗ карточки «Подписка на обеды» в магазине приложений нет — механика подписки на ежедневные обеды в этих бизнесах не работает.

Открыть: Админ-панель → Подписка на обеды (admin.masamenu.tr/meal-plans) — так подписан и пункт сайдбара, и заголовок страницы.

Раздел работает на международном контуре. На российском (cenaly.ru) подписки на обеды пока не поддерживаются: ни пункта в меню, ни карточки в магазине приложений там нет.


Что такое план питания#

План — это шаблон, который настраивает заведение:

  • название, описание и вариант — свободная метка вроде «стандарт», «вег», «лайт» для разных вкусовых линеек одного расписания;
  • блюда или комбо дня и их количество;
  • дни недели доставки (например, только будни);
  • длительность подписки — неделя или несколько недель (месяц ≈ 4 недели);
  • цена всего периода — обычно дешевле, чем сумма разовых заказов за те же дни;
  • окно доставки (например, «12:00–13:00»);
  • активен/выключен — неактивные планы не показываются гостю.

Админ-раздел#

На странице «Подписка на обеды» — выбор локации и две секции:

Планы — список с созданием, редактированием и удалением: форма собирает название, описание, вариант, валюту (по умолчанию — валюта локации) и цену периода, длительность в неделях, дни недели (переключатели по дням), блюда с количеством и окно доставки. Кнопка «⚙️ Сгенерировать заказы сейчас» вручную прогоняет генерацию заказов на сегодня и показывает сводку «Сгенерировано: N» — удобно для проверки, не дожидаясь автоматического крона.

Подписки — таблица оформленных подписок по локации: гость, план, период (даты начала/конца), статус (активна/на паузе/отменена/завершена), оплата (не оплачено/оплачено) и число доставленных заказов; из таблицы можно отметить период оплаченным («Отметить оплаченным»), снять отметку оплаты («Снять оплату») или отменить подписку.

Раздел нишевый и по умолчанию выключен: он появляется в меню админки после включения тумблера «Подписка на обеды» в магазине приложений. Сам тумблер виден только аккаунтам общепита (см. выше).


Витрина и оформление подписки#

Если у локации есть активные планы, на странице меню (в режиме еды/столовой) над списком блюд появляется блок «Подписка на обеды»: карточки планов с ценой за период и днями доставки, кнопка «Оформить».

Гость выбирает план, вводит имя, телефон и адрес доставки, подтверждает — подписка создаётся сразу. Онлайн-оплата за период пока не автоматизирована: после оформления гость видит статус «Ожидает оплаты» — период оплачивается на месте или по договорённости с заведением, а сотрудник отмечает оплату в админке.


Календарь подписчика#

Если гость уже оформлял подписку на этом устройстве (браузер запоминает её), при следующем визите на странице меню он видит свою подписку и календарь ближайших доставок. Для конкретного дня доступна кнопка «Пропустить» — доставка этого дня не генерируется, без отмены всей подписки.


Ежедневная генерация заказов#

Каждое утро автоматический процесс проходит по всем активным подпискам локации и для каждой, у которой сегодня день доставки (и день не пропущен и подписка не на паузе), создаёт обычный заказ на доставку — с пометкой источника «план питания». Дальше заказ идёт по тому же конвейеру, что и любой другой: кухня (KDS), монитор заказов, экран своей доставки — отдельной очереди для заказов по подписке нет.

Повторный прогон за уже обработанный день не создаёт вторую доставку — генерация идемпотентна. Подписки, у которых закончился оплаченный период, тем же прогоном помечаются завершёнными и больше не участвуют в генерации.

Состав и цена, зафиксированные в подписке в момент оформления, не меняются, даже если позже отредактировать сам шаблон плана в админке — у каждой активной подписки собственный «снимок» условий.


Оплата периода#

На сегодня оплата подписки — ручная: заведение получает деньги за период на месте (наличные/карта) или любым другим удобным способом и отмечает подписку оплаченной в таблице подписок. Автоматическое списание за следующий период при продлении подписки не подключено.


Что нужно для запуска#

  • Тип бизнеса локации — общепит (ресторан, кафе, бар, фастфуд, столовая): у остальных вертикалей карточки в магазине приложений нет.
  • Включённый тумблер «Подписка на обеды» в магазине приложений — раздел нишевый и по умолчанию выключен.
  • Позиции меню, из которых собираются обеды — план строится по вашему каталогу.
  • Расписание выдачи или доставки — дни недели и время, по которым генерируются заказы.
  • Способ оплаты периода — оплату администратор отмечает вручную.

Ограничения#

  • Только для общепита. Салону, магазину, интернет-магазину, отелю и ПВЗ раздел не предлагается: карточка в магазине приложений у них скрыта (решение 11.09.2026).
  • На российском бренде (cenaly.ru) подписки на обеды не поддерживаются — ни раздела, ни карточки в магазине приложений.
  • Автосписания за период нет. Регулярный биллинг осознанно не делали: оплату периода отмечает администратор.
  • Раздел выключен по умолчанию и включается тумблером.
  • Это подписка, а не разовый предзаказ — для разовых заказов на время есть слоты предзаказа в обычном чекауте.

Устранение неполадок#

Пункта «Подписка на обеды» нет в меню. Раздел не включён — включите его в магазине приложений.

Карточки «Подписка на обеды» нет в магазине приложений. Проверьте тип бизнеса локации: карточка показывается только общепиту (ресторан, кафе, бар, фастфуд, столовая) и только на международном бренде.

Заказы на день не сгенерировались. Проверьте расписание подписки и пропуски дней в календаре подписчика: пропущенный день заказа не создаёт.

Гость оплатил, а период отмечен неоплаченным. Отметку оплаты ставит администратор вручную — автоматического списания за период нет.

На российском бренде раздела нет. Так и есть — контур пока не поддерживается.


Связанные разделы#

  • Заказы — куда попадают сгенерированные по расписанию заказы
  • Кухня (KDS) — обработка заказов подписки наравне с обычными
  • Своя доставка — экран курьера, который развозит обеды по подписке

Частые вопросы#

Что если гость забыл пропустить день и не будет дома?#

Заказ на этот день всё равно сгенерируется по расписанию — пропустить доставку заранее можно в календаре подписчика, либо связаться с заведением напрямую.

Изменение плана в админке повлияет на уже оформленные подписки?#

Нет — у каждой подписки свой набор блюд, цена и дни, зафиксированные при оформлении; правки шаблона в «Планах» действуют только на новые подписки.

Оплата подписки списывается автоматически каждый период?#

Пока нет — оплата вручную: заведение получает деньги за период и отмечает подписку оплаченной в админке.

Была ли статья полезной?