Когда API ФНС подводит
kkt-online уходит на обслуживание ночью и таймаутит в субботний пик. Акция в ТЦ как раз в выходные, и конверсия падает в самый жаркий день.
Без fallback горячая линия тонет в жалобах «сайт не принимает чек». Основной путь — проверка чека через API ФНС. OCR — страховка, а не замена.
Как устроен fallback в Промо.Про
При timeout API система предлагает сфотографировать чек. Tesseract.js работает в браузере через WASM. Данные не уходят на сторонний OCR-сервис.
Распознаются ФД, ФН, ФП, сумма, дата и ИНН. Заявка получает статус «на верификации». Повтор к ФНС идёт каждые тридцать минут, до двадцати четырёх часов. Участник видит «принято на проверку», а не красный экран.
Где OCR ошибается
Термочек стандартного формата распознаётся хорошо. Смятый, мокрый чек или блик на QR снижают точность до шестидесяти–семидесяти процентов. Ручная касса с нестандартным шрифтом уходит в ручную модерацию.
В условиях акции пропишите: «сфотографируйте на белом фоне» и лимит двух попыток OCR. Иначе участники заливают десять размытых фото, и очередь у оператора растёт.
Ручная модерация
Если confidence ниже восьмидесяти процентов, заявка помечается флагом в кабинете. Director видит фото и поля, подтверждает или отклоняет. Каждое действие попадает в audit log.
Полный сценарий без стойки описан в статье о промо-акции без очередей. OCR добавляет операторскую нагрузку в пик. Закладывайте смену модератора на воскресенье.
FAQ
OCR обрабатывается на сервере клиента или на стороннем?
Tesseract.js работает в браузере участника. Фото чека хранится на сервере клиента для модерации. Сторонних OCR-сервисов нет.
Можно ли отключить OCR и оставить только API ФНС?
Да, в настройках акции. Тогда при timeout участник ждёт восстановления ФНС или повторяет попытку позже.