Главная Интеграции Синхронизация меню, цен и стоп-листов с кассой

Синхронизация меню, цен и стоп-листов с кассой

Обновлено Nov 12, 2026

Включается по обращению в поддержку.

Возможности

Что приходит из кассы

  • Категории меню, блюда, группы модификаторов и сами модификаторы; у блюда собирается схема модификаторов по группам из выгрузки.
  • Описание, вес и пищевая ценность — у тех касс, которые их отдают.
  • Фотографии блюд и модификаторов — у тех касс, которые их отдают.
  • Порядок категорий и позиций внутри меню.
  • Цены: цена карточки, а при включённых ценах по точкам — своя цена для каждой точки; позиция, которой нет в прайсе точки, там скрывается.
  • Стоп-листы и остатки: снятое с продажи блюдо становится недоступным гостю, а количественный остаток ограничивает, сколько порций можно заказать.
  • Технические позиции кассы — группы модификаторов, которые гостю не показываются, а в заказ уезжают сами.
  • Артикул учётной системы — у подключения iiko нового типа, если задана настройка «Поле внешнего кода»: импорт меню записывает артикул из этого поля кассы во внешний код блюда и модификатора, во все копии позиции с этим кодом кассы. Артикул попадает в данные заказа как внешний код позиции и модификатора. Если у позиции в кассе артикула нет, её внешний код не меняется. Связь с кассой хранится отдельно от внешнего кода, поэтому заказы, остатки и стоп-листы в кассу от этого не меняются.

Два способа получить внешнее меню iiko

Меню, которое в iiko заводится в iikoWeb, можно получать двумя способами: прежним и методом v3. iiko прекращает поддержку прежнего способа, поэтому меню клиентов переводят на v3. Это переключатель способа получения, а не новые возможности: в каталог приезжают те же блюда, категории, цены по точкам, модификаторы, вес, пищевая ценность и ставки НДС, что и раньше. Вес остаётся в единице позиции — у напитка в литрах он по-прежнему «1», а не «1000». Скрытые в iiko группы модификаторов, служебные вроде «в зале/с собой», в каталог не попадают.

Переключатель называется «Внешнее меню методом v3». В подключении кассы iiko он лежит в настройках, в группе «Источник меню», и работает при источнике «Внешнее меню iikoWeb». В интеграции iikoTransport он лежит в настройках интеграции, в группе «Импорт меню», и работает вместе с настройкой «Импорт меню из iikoWeb».

Меню из iiko — только внешнее меню iikoWeb

С 01.11.2026 iiko не отдаёт номенклатуру iikoOffice, и меню из iiko можно загрузить только из внешнего меню iikoWeb; внешнее меню заводят в самой iiko. Если внешнего меню в iiko нет или в настройке выбрана папка номенклатуры вместо внешнего меню, импорт из iikoWeb не начинается, а в журнале написано, что поправить, и перечислены доступные внешние меню. Импорт из iikoOffice, если iiko не отдала номенклатуру, завершается ошибкой, а не «успехом» без единого блюда. Источник меню сам не переключается: внешнее меню — другое меню, и молчаливое переключение пересобрало бы каталог. При переходе на внешнее меню категории создаются заново, у внешнего меню свои; блюда и модификаторы сопоставляются с прежними.

Три процедуры

Импорт разделён на три самостоятельные процедуры, и запускаются они порознь.

  • Меню — карточки: категории, группы модификаторов, блюда, модификаторы, фотографии. Цену карточка здесь не получает.
  • Цены — цена карточки и цены по точкам вместе со скрытием позиций, которых на точке нет.
  • Наличие — стоп-листы и остатки. Идёт само, по кругу, и согласования не требует: это оперативные данные. У подключения iiko нового типа стоп-лист, изменённый в iiko, приезжает сразу, а не при плановом опросе.

Касса предлагает, оператор решает

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

По каждой позиции видно, что предлагает касса: Новые, С изменениями (с разбором «поле: было → станет»), Без изменений, Есть кандидаты, Пропали из кассы. Оператор отвечает решением — Завести, Связать, Обновить или Пропустить; позиция без решения не трогается. По догадке не связывается ничего: кандидат подбирается по совпадению названия и ждёт подтверждения человека.

Если блюдо в кабинете лежит не в той категории, что в кассе, это тоже изменение: план показывает «С изменениями» по категории, а решения «Связать» и «Обновить» переносят блюдо в категорию кассы.

Фотография — тоже решение по позиции: рядом показаны своя картинка и картинка кассы. У новой позиции фото по умолчанию загружается, у позиции со своей картинкой остаётся своё; массовой перезаливки нет. В плане цен оператор отмечает флажками, какие строки применить — по коду целиком или по отдельной точке.

Коды в кассах

У позиции свой код в каждом подключении; без кода позиция в кассу не уедет. Код в каждом подключении свой и у других сущностей: у акции — это код скидки в кассе, а также у точки, зоны доставки, категории, модификатора и группы модификаторов. Блок «Коды в кассах» есть в карточке каждой из них. Коды позиций видны с трёх сторон: списком по подключению — с фильтрами по статусу и поиском по коду; в карточке самой позиции, где заодно видно, в каких кассах кода нет и не занят ли этот код ещё на других позициях; и на экране «Готовность» — что из каталога в эту кассу не уедет, отдельно по блюдам и по модификаторам, с числом на каждой вкладке и списком конкретных позиций без кода. Связь можно подтвердить, перепривязать или разорвать.

Видно, что не синхронизировано

Сводка показывает подключения, их точки и три раздела у каждой со статусом: Синхронно, Есть расхождения, Давно не синхронизировалось, Ошибка, Нет кода в кассе. Рядом — когда процедура проходила последний раз, когда данные сверялись и сколько расхождений тогда нашлось, а у наличия ещё и сколько позиций на стопе сейчас.

У раздела «Меню» на этот статус влияет ещё один счётчик: позиции каталога без кода в этой кассе. Если такие позиции есть, раздел показывает «Есть расхождения», даже когда план сверки полностью совпадает, — их список виден на экране «Готовность».

Ход работы виден на экране: сколько источников меню уже забрано, готовит ли касса выгрузку, чем закончилось применение и какие точки ответили ошибкой. После применения плана меню виден и ход загрузки фотографий: сколько загружено из скольких. Фото, которое не загрузилось, показано строкой с названием позиции и причиной и кнопкой «К плану импорта»; отказ записывается и в журнал интеграции кассы. Итог виден ещё сутки, а операция, не завершившаяся за сутки, показывается как «не завершилась». Строки отказов видят те, кто может править меню, остальным видно только число. Подробности каждой операции — в журнале интеграции: события, запросы и ответы собраны в один трейс, на который можно создать публичную ссылку для того, кто разбирается с кассой на своей стороне.

Что из этого видит гость

Позиция, снятая с продажи в кассе, помечается как Закончилось и в корзину не кладётся; на её возвращение можно подписаться — Узнать о поступлении. Если касса ведёт количественный остаток, гость видит, сколько порций доступно, и больше этого заказать не сможет.

Как настроить

Подключение и точки

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

Код точки в кассе задаётся не в форме подключения, а в карточке самой точки: блок «Коды в кассах» показывает её коды по подключениям. При прежней синхронизации в карточке точки рядом остаются поля «Внешний код» и «ID терминала»; оба набора могут быть включены одновременно. У части кассовых систем в форме подключения есть ещё и свои настройки, например прайс-лист или терминал. Набор полей формы задаёт сама кассовая система. Рядом с формой — действия, которые объявила касса: у iiko это «Проверить связь»; импорт и очистка меню — в разделе «Импорт из кассы». Для приёма событий из кассы над настройками есть отдельный блок: «Зарегистрировать вебхук», «Проверить вебхук», «Снять вебхук».

Импорт меню по шагам

  1. «Меню» → «Импорт из кассы». Открывается сводка: подключения, их точки и статусы процедур.
  2. Выбрать процедуру «Меню» и в сводке нажать на нужную кассу.
  3. «Обновить из кассы» — касса готовит выгрузку, рядом видно «Забираем меню из кассы» и сколько источников уже забрано. Затем строится план.
  4. В плане у каждой позиции выбрать решение: «Завести», «Связать», «Обновить» или «Пропустить». Для всего списка сразу есть «Завести все новые», «Применить все изменения» и «Связать всех кандидатов»; фильтр «Без решения» показывает, что ещё не размечено. Переключатель «С фото» добавляет к строкам выбор фотографии.
  5. «Применить решения». Рядом с кнопкой видно, что именно уйдёт.
  6. Процедура «Цены»: в сводке нажать на точку, отметить строки или «Отметить все расхождения» и нажать «Применить цены».
  7. «Готовность каталога» показывает позиции без кода этой кассы: заказ с ними в кассу не уйдёт.
  8. Проверить меню в «Категории и блюда» и нажать «Опубликовать» в разделе «Меню» — гость увидит изменения после публикации.

Что импорт не трогает

Организация может запретить импорту перезаписывать отдельные поля — название, цену, описание, категорию, порядок в меню, а также поля категорий, модификаторов и групп. Запрещённое не прячется: в плане оно показано отдельно, серым, — это расхождение с кассой, оставленное намеренно.

Отдельно задаются: в какую категорию ложится импортированное меню, заводить ли незнакомые категории и группы, отсеивать ли позиции по цене и сохранять ли порядок, установленный в меню.

Регулярность

  • Стоп-листы и остатки обновляются сами, по кругу; есть и ручной запуск, если нужно срочно.
  • Меню и цены запускает оператор. У части касс импорт меню можно поставить на ежедневный запуск в заданный час — с фотографиями или без, с перезаписью картинок и с публикацией меню сразу после импорта.
  • Данные из кассы забираются отдельным прогоном, а планы считаются по уже забранному: «Обновить из кассы» — явное действие, просмотр плана кассу не дёргает.
  • Импортированное меню появляется у гостя после публикации. Наличие и цены по точкам действуют сразу, публиковать не нужно.

Откуда брать меню в iiko

В подключении кассы iiko настройка «Откуда брать меню» предлагает один источник — «Внешнее меню iikoWeb»; номенклатуры iikoOffice и настройки «Папка номенклатуры» там больше нет, а служебные блюда (доставка, сервисный сбор, наценка, приборы) выбираются из внешнего меню. Подключение, где источником осталась номенклатура, получает отказ с подсказкой, что поменять. В интеграции iikoTransport настройка «Фильтр родительской категории» при импорте из iikoWeb задаёт внешнее меню, из которого брать меню; выбранное в ней значение теперь попадает в импорт (раньше форма сохраняла его так, что импорт его не читал). Выпадающие списки блюда доставки и блюда сервисного сбора, а также страница просмотра меню из кассы у заведений, которые загружают меню из iikoWeb, показывают внешнее меню. Цены по точкам для перехода на внешнее меню включать не нужно: без их отдельной настройки они не загружались и раньше.

Артикул в подключении iiko

Настройка «Поле внешнего кода» — текстовое поле: имя поля позиции во внешнем меню iiko, где лежит артикул (обычно sku). Пусто — внешний код не меняется, как и раньше. Настройка есть только у организаций, переведённых на новую схему подключений касс; у прежней интеграции iiko её нет.

Метод v3 для внешнего меню iiko

Настройка «Внешнее меню методом v3» по умолчанию выключена: прежний способ остаётся основным, пока iiko его не отключит. Включается по заведению, когда дилер перевёл внешнее меню клиента на v3: до этого v3 может отдавать не то меню. После включения запустите импорт меню и проверьте, что каталог и цены по точкам не изменились.

Что должно быть настроено и ограничения

Со стороны кассы

  • Нужен доступ к обмену на стороне кассовой системы: у iiko это iikoTransport с модулем доставки, у R-Keeper через ProCart — отдельно покупаемый модуль стороннего вендора и лицензия. Учётные данные выдаёт обслуживающая организация заведения.
  • Набор полей задаёт кассовая система: фотографии, пищевая ценность, вес, состав и вложенные категории приходят не отовсюду, а у части касс меню приезжает только названиями, ценами и модификаторами.
  • Кассы ограничивают частоту запросов. Меню нескольких точек забирается по очереди с паузами, а после отказа по частоте выгрузки не запускаются, пока не пройдёт назначенная пауза — до какого времени ждать, показано оператору. У внешнего меню iiko методом v3 меню запрашивается по каждой точке отдельно, поэтому у сетей обращений к iiko при загрузке меню больше. Режим «заказывать меню заранее» с v3 не нужен и не используется: меню отдаётся сразу.
  • Пустой ответ кассы считается ошибкой, а не пустым меню: каталог от этого не сносится. Недоступность одной точки не роняет остальные — ошибка показывается по этой точке.
  • Если меню какой-то точки iiko получить не удалось, итог зависит от интеграции и с методом v3 не меняется по сравнению с прежним способом. В подключении кассы iiko импорт останавливается с ошибкой, каталог не трогается. В интеграции iikoTransport импорт идёт дальше: часть меню, которую не удалось получить, пропускается. Если не пришло меню самой точки и включена настройка «Запретить блюда с нулевой ценой к продаже?», блюда этой точки скрываются целиком до следующего импорта.
  • У iiko меню берётся только из внешнего меню iikoWeb. Если организация не завела внешнее меню, с 01.11.2026 меню из iiko перестаёт обновляться; заказы и стоп-листы при этом работают.

Со стороны меню

  • Позиция без кода в кассе блокирует отправку заказа целиком: заказ с такой позицией в кассу не уходит, а в карточке заказа перечислено, каких позиций это касается.
  • Один код кассы может стоять сразу у нескольких позиций каталога. Это видно в карточке и объясняет, почему в заказ уехало не то блюдо.
  • «Синхронно» — не опрос кассы в момент открытия экрана, а результат последней сверки. Чтобы получить свежую, надо обновить данные из кассы и построить план заново.
  • В мультибренде новой корневой категории нужен бренд: пока он не выбран, ветка не заводится.
  • Цены по точкам и учёт остатков включаются отдельно и работают не со всеми кассами.
  • Первый импорт большого меню идёт долго, а смена схемы выгрузки на стороне кассы требует сначала очистить меню.
  • Ход загрузки фотографий не ускоряет саму загрузку: фото ждут своей очереди. Пока кабинет организации не переведён на новый сервер обновлений, ход обновляется опросом раз в 15 секунд, а не мгновенно.
  • Артикул из кассы записывается во внешний код блюда и модификатора. Включать его стоит только после того, как агрегаторы организации перечитали меню с новыми кодами модификаторов: до этого их заказы ищут модификатор по прежнему внешнему коду и не проходят. У организации с внешним провайдером бонусов Maxma внешний код уходит туда кодом товара, поэтому смена на артикул меняет товары в её истории покупок; включать по согласованию.

Чего нет

  • Не отправляет меню в кассу: направление одно. Ассортимент, цены и стопы правятся в кассе, а не у нас.
  • Не связывает позиции сам: кандидат по совпадению названия предлагается, но подтверждает его человек.
  • Не удаляет позицию, пропавшую из кассы: она помечается как пропавшая, а убирают её отдельно — и не у всякой кассы автоматически.
  • Не согласовывает стоп-листы: наличие применяется сразу, предпросмотра у него нет.
  • Не хранит историю синхронизаций: видно последнее состояние и последний прогон, а не то, что происходило неделю назад.
  • Не умеет отложенных изменений: импорт — это снимок меню кассы на момент запуска, а не расписание будущих цен.
  • Не отправляет заказы в кассу: это отдельная часть подключения, здесь из кассы приходят только справочные данные.
  • Не импортирует комбо из внешнего меню iiko — ни прежним способом, ни методом v3.
  • Не убирает устаревший артикул: если поле в кассе очистили, внешний код остаётся прежним, убрать его можно только вручную.

Примеры

Подключить кассу и завести меню

  1. Завести подключение: учётные данные кассы и точки, которые она обслуживает.
  2. В карточке каждой точки задать её код в кассе.
  3. Обновить данные из кассы и дождаться выгрузки.
  4. Построить план меню, разметить решения — что завести, что связать, что пропустить — и применить.
  5. Построить план цен, отметить нужные строки, применить.
  6. Проверить получившееся меню и опубликовать.

В кассе добавили и убрали блюда

  1. Заведение завело в кассе новые блюда, одно переименовало, одно убрало.
  2. В «Импорт из кассы», процедура «Меню», оператор нажимает «Обновить из кассы»: новые блюда попадают в «Новые», переименованное — в «С изменениями», убранное — в «Пропали из кассы».
  3. «Завести все новые», «Применить все изменения», затем «Применить решения».
  4. Убранное в кассе блюдо в каталоге остаётся — его снимают с продажи или удаляют вручную.
  5. Меню проверяют и публикуют; стоп-листы для этого импортировать не нужно, они обновляются сами.

Касса поменяла цены

  1. В сводке у раздела «Цены» появляется «Есть расхождения».
  2. Оператор обновляет данные из кассы и строит план цен: видно, где цена изменилась, отдельно по карточке и по каждой точке.
  3. Отмечает нужные строки и применяет — цены на витрине меняются сразу, публиковать меню не нужно.

Блюдо кончилось на кухне

  1. Повар ставит блюдо в стоп на кассе.
  2. Стоп-лист приезжает в ближайшее обновление наличия; у подключения iiko нового типа — сразу, как только касса сообщит об изменении.
  3. На витрине блюдо помечено «Закончилось» и в корзину не кладётся; гость может подписаться на его возвращение.
  4. Если ждать нельзя, оператор запускает синхронизацию наличия руками.

Связанные статьи