Ошибки — что показывать кассиру
Каждая ошибка приходит в одном формате — с готовым текстом для кассира:
{ "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-коды
Заголовок раздела «HTTP-коды»| 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 |
Подписка не оплачена |
Все коды с текстами на трёх языках — в справочнике ошибок.