Restaurant Commerce — меню, Ordering, KDS, Kiosk и POS

Reven Ordering, KDS, Kiosk и POS используют одно меню, одинаковые правила ценообразования и общую запись заказа. Поэтому проданную или изменённую позицию меню не нужно вручную обновлять в каждом канале.

Проверено 2026-09-24

Reven Ordering, KDS, Kiosk и POS используют одно меню, одинаковые правила ценообразования и общую запись заказа. Поэтому проданную или изменённую позицию меню не нужно вручную обновлять в каждом канале.

Меню

Пользователь с правом menu:manage может управлять:

  • локацией, меню, публикацией и порядком категорий;
  • названием позиции, SKU, описанием, ценой, сравнительной ценой и изображением;
  • метками Vege, Vegan, New и Bestseller и уровнем остроты;
  • показом позиции в дополнительных категориях;
  • станциями приготовления;
  • группами модификаторов и минимальным/максимальным числом выборов;
  • вариантами, доплатой, значением по умолчанию, активностью и статусом sold out;
  • вместимостью заказов, базовым lead time и зонами доставки.

SKU важен для связей между локациями и ваучеров на конкретную позицию. Он должен быть стабильным и уникальным в выбранной клиентом модели.

Ordering и обработка заказа

Публичный клиент или оператор POS выбирает обслуживание на месте, самовывоз или доставку, доступную для адреса/зоны. В публичном Ordering, Kiosk и POS место этого выбора можно настроить перед меню или в конце корзины, если заведению нужно сначала собрать позиции. Позиции можно сразу добавлять в выбранном количестве, а затем менять количество кнопками минус/плюс в корзине или текущем POS-билете. Сервер заново рассчитывает цены, количество, модификаторы, стоимость доставки или другой сбор за выполнение, например упаковку навынос, минимум, купоны, ваучеры и сумму платежа. Расчёт нельзя основывать на значении, переданном только браузером.

14 августа 2026 года проверено визуальное изменение публичного Ordering на mobile: CTA-кнопки корзины и добавления позиции принудительно используют цвет текста primary-foreground, чтобы сохранять контраст в брендированных темах. Изменение не меняет логику корзины, checkout или статусы заказов.

14 августа 2026 года также проверено изменение навигации категорий в публичном Ordering на mobile: шапка заведения прокручивается вместе со страницей, а панель категорий остаётся закреплённой сверху экрана. Изменение улучшает доступ к категориям во время просмотра меню и не меняет корзину, checkout, оплату или статусы заказов.

После корректной оплаты заказ может быть принят автоматически или ожидать сотрудника. В ручном режиме сотрудник принимает его и указывает обещанное время. Типичная последовательность: оплачен → принят → готовится → готов → завершён. Возврат требует orders:manage и проверки каждого tender и использованного преимущества.

Страница статуса заказа приватная — вход по токену из URL, а токен не повторяется в метаданных — поэтому для неё задано noindex, nofollow. Она показывает сохранённые модификаторы и начисленные сборы из записи заказа, чтобы клиент мог проверить выбор после оплаты. Когда заказ достигает completed, страница показывает встроенную приватную анкету Guest Experience, но только если модуль guest_experience активен и включён триггер заказов. Статусы cancelled, refunded и все незавершённые анкету не показывают. Страница опрашивается каждые несколько секунд и останавливается на терминальном статусе, поэтому анкета появляется при завершении без ручного обновления. Покупка ваучера в киоске технически является заказом completed, но не реальным приёмом пищи, поэтому страница статуса и серверный resolver одинаково её пропускают.

KDS

KDS показывает активные заказы и позиции по станциям приготовления. Сотрудники с kds:operate обновляют этап работы. Экран должен работать на выделенном устройстве, а процедура заведения — учитывать потерю сети и ручную передачу заказа.

Kiosk

Гость может начать заказ еды или, если настроено, отдельную покупку ваучера. Для еды он выбирает или подтверждает способ получения, позиции и модификаторы, может отсканировать карту Loyalty, купон или ваучер, затем оплачивает оставшуюся сумму.

Панель Kiosks используется для однократной регистрации устройства и контроля соединения, терминала, фискального принтера, сканера, бумаги и последней ошибки. Локальный агент устанавливает исходящее соединение с Reven и хранит секрет устройства вне frontend-кода.

В production адаптер терминала должен поддерживать статус, идемпотентный старт, запрос результата, reversal и refund; фискальный адаптер — состояние устройства, бумагу, фискализацию и проверку результата. Неоднозначный результат необходимо проверить по reference провайдера. Нельзя «вслепую» запускать второй платёж. Оплаченный заказ передаётся в работу только после обязательной фискализации, если такой сценарий активен.

POS

POS использует общее меню для заказов у стойки, по телефону и вручную перенесённых из marketplace. Для пользователя с несколькими локациями POS открывает локацию с доступным меню; вручную выбранная локация без меню отправляет сотрудника в настройку меню. POS может иметь собственный config продукта pos и наследует отсутствующие поля из ordering, поэтому шаг выбора типа заказа и сборы можно держать общими или разделить специально для POS. Доступность терминальной оплаты зависит от установленного провайдера и устройства. При вводе внешнего заказа сотрудник должен сохранить его reference и не создавать параллельный онлайн-платёж.

Границы решения

Reven v1 сам по себе не является сертифицированной польской фискальной кассой. Клиент сохраняет требуемый законом фискальный процесс, если объём внедрения не включает конкретную утверждённую интеграцию. Драйверы в пакете агента могут быть симуляторами; production-статус подтверждается для конкретного терминала и принтера.

Проверки перед запуском

  1. Создайте заказ для обслуживания на месте, самовывоза и каждой зоны доставки.
  2. Проверьте базовую цену, модификаторы, сбор, минимум, ваучер/купон и остаток к оплате.
  3. Проверьте успешный и отклонённый платёж, повторный webhook и возврат.
  4. Проверьте автоматический и ручной режим, KDS и обещанное время.
  5. На реальном киоске проверьте idle/reset, сканер, терминал, фискализацию, отсутствие бумаги, потерю сети и восстановление.

При интеграции с LoyaltyPlant киоск хранит проверенную сессию клиента на сервере. В REGULAR можно начать с карты или корректного подарка; удалённый подарок не включается в итоговый чек. Ошибка оплаты не разрешает повторное списание: перед новым заказом нужно завершить предыдущую попытку и снова отсканировать карту. Фактическое начисление баллов проверяется у поставщика, а не по успешному ответу фонового задания.