Перейти к содержимому

Ошибки — что показывать кассиру

Каждая ошибка приходит в одном формате — с готовым текстом для кассира:

{
"error": {
"code": "BRIDGE_PAYMENT_MISMATCH",
"title": "Сумма оплаты не совпадает с суммой чека",
"action": "Проверьте суммы наличных и карты в кассовой программе…",
"message": "Оплата 999999 тийин не равна сумме к оплате по позициям 1000000 тийин"
}
}
Поле Кому Что это
title кассиру Что случилось — одной фразой
action кассиру Что сделать
code логу, поддержке Код из справочника ошибок — по нему ищут решение
message программисту Подробности: суммы, ответ модуля, поля с ошибкой
issues программисту Только у BRIDGE_INVALID_REQUEST: какие поля чека неверны

Язык текстов — заголовок Accept-Language: ru, uz-latn или uz-cyrl. Без заголовка — язык, выбранный в приложении.

Тексты для новых кодов модуля поддержка добавляет в своей панели — приложение получает их сразу, обновлять кассовую программу не нужно. Поэтому показывайте title и action из ответа, а не свои тексты по code.

HTTP Когда Что делать программе
400 Неверный чек: поля, суммы, оплата Ошибка в данных — исправить в кассовой программе
401 Нет или неверный X-Api-Key Взять ключ в приложении, раздел «API»
402 Касса отключена (LICENSE_*) Показать текст; чек не записан
403 Запрос из браузера со стороннего сайта Отправлять запросы из своей программы, не со страницы сайта
404 Чека нет в журнале —
409 Номер занят, чек пробивается или исход неизвестен См. повторы
422 Фискальный модуль отказал (OFD1_*, OFD2_*) Показать текст; чек не пробит — см. повторы
502 Модуль или сервис маркировки ответил непонятно Повторить; если не проходит — в поддержку
503 Приложение не настроено, FiscalDriveAPI не запущен, нет связи с сервером Показать текст — там написано, что запустить
504 ФМ не ответил вовремя Показать текст; повтор вернёт 409 до проверки кассиром
Код Причина
BRIDGE_PAYMENT_MISMATCH Оплата не равна сумме позиций минус скидки — см. суммы
BRIDGE_INVALID_REQUEST Не хватает поля или неверный формат — смотрите issues
BRIDGE_FISCAL_DRIVE_API_UNAVAILABLE Служба FiscalDriveAPI не запущена
BRIDGE_RECEIPT_STATE_UNKNOWN ФМ не ответил, кассир должен проверить чек
LICENSE_EXPIRED Подписка не оплачена

Все коды с текстами на трёх языках — в справочнике ошибок.