ошибки api лояльности

Ошибки API и обмена с сервером лояльности

Раздел описывает ошибки уровня API и сетевого обмена между кассой и сервером ReMarked: ошибка 520, недоступность сервера/БД, отсутствие успешного ответа. Диагностика ведётся по логам API лояльности.

Где искать логи. app_logsloyalty_api_e.log (и опционально loyalty_api_rr.log). В файле _e запрос ищется по Request-Id.


Ошибка 520 в запросах к лояльности

Симптом. В ответах API лояльности возвращается код 520.

Диагностика.

  1. Открыть loyalty_api_e.log (опционально loyalty_api_rr.log).
  2. Найти запрос по Request-Id.
  3. Посмотреть тип ошибки.

Распространённые причины.

  • mes:Item Is Not Found line:998 — в базе нет блюда из заказа. Блюдо добавили в iiko, но не перезагружали терминал. Решение: перезапустить iiko (достаточно одного терминала в заведении или чейне).
  • Can Not Refill Cashback Bonus — ошибка пополнения кэшбэка.

Не удалось получить успешный ответ от сервера Remarked

Симптом. Касса сообщает «Не удалось получить успешный ответ от сервера Remarked». В большинстве случаев такая ошибка возникает массово у нескольких клиентов — это значит, что наш сервер недоступен либо отправляет некорректные ответы плагину.

Причины.

  • Нет интернета на кассе.
  • Сервер ReMarked недоступен.

Решение.

  1. Уточнить, есть ли интернет на кассе.
  2. Проверить пинг с кассы до app.remarked.ru.
  3. Если интернет есть и пинг идёт — снять логи и передать на разбор в отдел ПЛ.

Дополнение. Ошибка может быть вызвана тем, что гость не соответствует условиям ПЛ — например, у гостя несколько конфликтующих категорий, применяемых к карте.


«Система лояльности. Произошла ошибка при отправке запроса» (БД ReMarked недоступна)

Симптом. На кассе: «Система лояльности. Произошла ошибка при отправке запроса». (На R-Keeper аналог — «Сервер ReMarked ответил ошибкой».)

Причина. Недоступна БД ReMarked, поэтому на кассу возвращается ошибка о недоступности плагина.

Решение. Написать в чат ПЛ и приложить:

  • скриншот ошибки;
  • № поинта, на котором ошибка;
  • Shard, на котором расположен поинт.