Диагностическая инструкция для администратора и поставщика интеграции. Проверки выполняйте последовательно, меняя один параметр за раз. Названия экранов и доступные функции зависят от версии iiko и внешнего приложения; перед изменениями сверяйте их с официальной документацией. Здесь изложен авторский порядок поиска причины, а не гарантированное исправление любого похожего сообщения.
Как проявляется проблема
- Получение токена завершилось успешно, но запросы справочников отклоняются.
- Ошибка появляется спустя некоторое время после запуска или только на части серверов.
Что проверить сначала
- Истёкший токен или неправильный заголовок авторизации.
- Разные наборы секретов в тестовой среде и рабочем процессе.
- Смешение примеров авторизации разных версий API.
Три точки наблюдения
Полная формулировка из статьи
Определите фактический endpoint в журнале или конфигурации поставщика. Для POST /api/1/access_token поле запроса — apiLogin; для POST /api/v2/access_token нужны appId, clientSecret и apiKey. Это разные тела запроса. Прежний метод отмечен deprecated, но из этого не следует, что его нужно самостоятельно заменить в работающем модуле: миграцию выполняет разработчик с проверкой совместимости. Получите новый токен в закрытой серверной среде и проверьте один безопасный запрос чтения. Передавайте значение через Authorization: Bearer {token}. Убедитесь, что приложение подставляет именно строку токена, а не весь JSON-ответ, имя переменной или строку с дополнительными кавычками. Не размещайте секреты в браузерном коде. Если ручная проверка проходит, сравните её с рабочим процессом. Проверьте, какой экземпляр приложения выполняет запрос, когда он загрузил конфигурацию и не использует ли отдельный устаревший кэш. При нескольких процессах результат проверки одного экземпляра не доказывает исправность остальных. Зафиксируйте разницу до перезапуска.

Маршрут диагностики
Маршрут проверок
Полная формулировка из статьи
Шаг 1. Зафиксируйте точный метод и этап сбоя. Запрос авторизации и запрос справочника должны быть записаны отдельными строками журнала. Сохраните время, HTTP-статус и идентификатор корреляции, если он получен. Сам токен, ключ организации и секрет приложения в журнал не копируйте. Это позволит передать диагностику без раскрытия доступа. Шаг 2. Определите фактический endpoint в журнале или конфигурации поставщика. Для POST /api/1/access_token поле запроса — apiLogin; для POST /api/v2/access_token нужны appId, clientSecret и apiKey. Это разные тела запроса. Прежний метод отмечен deprecated, но из этого не следует, что его нужно самостоятельно заменить в работающем модуле: миграцию выполняет разработчик с проверкой совместимости. Шаг 4. Если ручная проверка проходит, сравните её с рабочим процессом. Проверьте, какой экземпляр приложения выполняет запрос, когда он загрузил конфигурацию и не использует ли отдельный устаревший кэш. При нескольких процессах результат проверки одного экземпляра не доказывает исправность остальных. Зафиксируйте разницу до перезапуска. Шаг 6. Проверьте ответ после истечения прежнего токена, а не только немедленно после исправления. Если ошибка вернулась по расписанию, изучайте механизм обновления и передачу нового значения процессам. Если она связана с конкретным методом, отдельно проверяйте права и организацию. Одинаковый HTTP-код не доказывает одинаковую причину.
Скриншоты и фрагменты документации

Редакционная визуализация фрагмента OpenAPI, не скриншот интерфейса iikoCloud API — официальный справочник OpenAPI. Нажмите на изображение, чтобы открыть отдельно. Сверяйте источник с версией и настройками своей системы.

Редакционная визуализация фрагмента OpenAPI, не скриншот интерфейса iikoCloud API — официальный справочник OpenAPI. Нажмите на изображение, чтобы открыть отдельно. Сверяйте источник с версией и настройками своей системы.

Редакционная визуализация фрагмента OpenAPI, не скриншот интерфейса iikoCloud API — официальный справочник OpenAPI. Нажмите на изображение, чтобы открыть отдельно. Сверяйте источник с версией и настройками своей системы.
Пошаговое решение
Отмечайте выполненные проверки. Отметки действуют до перезагрузки страницы.

Иллюстрация рабочего процесса; сгенерированное фото, не интерфейс iiko. 
Иллюстрация рабочего процесса; сгенерированное фото, не интерфейс iiko.
Развилка результата
Полная формулировка из статьи
Критерий результата: Проверка считается завершённой, когда запрос чтения стабильно выполняется из того же процесса, который обслуживает гостей, и продолжает работать после планового обновления токена. В контрольном журнале должны быть видны время обновления и последующий успешный запрос без открытых секретов. Передача специалисту: Если минимальный контрольный запрос остаётся неуспешным, передайте поставщику интеграции версию приложения, время, адрес метода и обезличенный ответ. Укажите, что уже проверено и какой результат ожидался. Секреты передавайте только предусмотренным защищённым способом; в обычное обращение достаточно идентификатора корреляции и описания сценария.
Как понять, что проблема решена
Проверка считается завершённой, когда запрос чтения стабильно выполняется из того же процесса, который обслуживает гостей, и продолжает работать после планового обновления токена. В контрольном журнале должны быть видны время обновления и последующий успешный запрос без открытых секретов.
Как снизить риск повторения
Разделите настройки теста и рабочего окружения, назначьте владельца ключей и фиксируйте дату их изменения. При смене секретов обновляйте все экземпляры согласованно. Убирайте токен из снимков экрана до отправки в поддержку.
Если проблема осталась
Если минимальный контрольный запрос остаётся неуспешным, передайте поставщику интеграции версию приложения, время, адрес метода и обезличенный ответ. Укажите, что уже проверено и какой результат ожидался. Секреты передавайте только предусмотренным защищённым способом; в обычное обращение достаточно идентификатора корреляции и описания сценария.
Что передать в поддержку
Скопируйте шаблон и заполните его без паролей, API-ключей, данных карт и сведений о гостях.
Проблема: iiko API: ошибка 401 и неработающий токен — порядок проверки Версия и компонент iiko: Ресторан / рабочее место: Время сбоя и часовой пояс: Точный текст сообщения: Что ожидалось / что произошло: Какие проверки выполнены: Результат каждой проверки: Идентификатор операции (если допустимо):
Где помогает Menu 360
Menu 360 интегрируется с iiko, чтобы цифровое меню работало вместе с учётной системой ресторана. После восстановления доступа проверьте весь путь заказа и только затем включайте новые сценарии автоматических продаж и допродаж. Рекомендации соуса или десерта полезны, когда выбранные позиции корректно связаны с iiko. Разбирать ключи вручную сотруднику зала не требуется: техническую схему подключения должен сопровождать поставщик интеграции.
Вопросы и ответы
Нужны ли appId и clientSecret для любого подключения iiko?
Не для любого существующего запроса авторизации. Они обязательны в схеме /api/v2/access_token; прежняя /api/1/access_token принимает apiLogin. Версию реально работающего Menu 360 или другого модуля выясняйте по его конфигурации и документации, а не по названию методов справочников /api/1.
Bearer означает, что интеграция уже использует авторизацию v2?
Нет. Официальные методы справочников /api/1 также показывают заголовок Authorization с Bearer. Номер в пути запроса данных и способ получения токена нельзя определять друг по другу. Для диагностики отдельно запишите endpoint авторизации и endpoint неуспешного запроса.
Источники и применимость
Официальная документация служит основой проверки возможностей iiko. Последовательность диагностики и контрольные примеры разработаны редакцией Menu 360; это не подтверждение ошибки именно в вашей конфигурации.
Обсуждения похожих ситуаций
Вопросы пользователей подтверждают наличие похожих ситуаций. Советы в обсуждениях могут относиться к старым версиям или другому модулю.
- Обсуждение: iiko API: ошибка 401 и неработающий токен — порядок проверки
В 2022 году пользователь описал токен, после получения которого все дальнейшие обращения давали 401; готового подтверждённого решения в теме нет.