В данной статье будет показана работа с блоком распознавания документов в MoreKIT
MoreKIT использует собственный OCR движок, которые подходит под требования Федерального закона "О персональных данных" от 27.07.2006 N 152-ФЗ
Задача
В поле контакта amoCRM будет поле, в которое будет загружен документ
При нажатии на кнопку — произойдет распознавание документа из поля, заполнятся поля документа в карточку контакта
Распознавание документов
Данный блок отдает данные о документе, принимает на себя файл с документом

Блок распознавания ИИ способен распознать следующие типы документов:
- Паспорт РФ
- Заграничный паспорт
- Водительское удостоверение
- СНИЛС
- Документ с ИНН физлица или организации
Для использования блока необходимо пополнить ИИ баланс в MoreKIT, стоимость за одно распознавание составляет 3 рубля
Пополнение ИИ баланса
Для использования ИИ блоков внутри MoreKIT необходимо пополнить ИИ баланс

Заходим в раздел О проекте —> оплата, пополняем ИИ баланс на любую сумму

Подключение amoCRM
В MoreKit в разделе Сервисы — ищем в списке сервисов amoCRM, нажимаем на кнопку Добавить, произойдет перенаправление на страницу переадресации amoCRM, где необходимо выбрать нужную CRM, которую надо подключить в MoreKit


Также в amoCRM потребуется создать поля, с которыми будет производиться работа. В данной статье примером документа будет паспорт РФ, взятый из свободных источников
Поле, в которое заливается документ должно быть с типом Файл, либо у вас должна быть публичная ссылка, по которой MoreKIT сможет скачать файл

Создание процесса
В MoreKIT создадим процесс с типом «Другое». На данный процесс будут поступать данные о сделке с виджета TapKIT при нажатии на кнопку и будет производиться распознавание документов
В проекте MoreKIT нажимаем Создать процесс, в списке процессов ищем Другое, задаем название процессу


Схема будет следующая:

Данная схема:
- Получает данные о контакте из данных виджета TapKIT
- Скачивает файл с документом
- Передает файл в блок распознавания документов
- Получает результат распонавания
- Заполняет поля контакта
Описание блоков схемы

#9 Найти контакты — получаем полные данные о контакте

#7 Получить файл — данный блок получает информацию о файле, содержащемся в поле контакта, включая ссылку на скачивание файла

#8 HTTP запрос — скачивает файл по публичной ссылке. Тип ответа указывается Файл

#5 Распознавание документа — распознает документ и возвращает данные о нем. В данных присутствует поле классификатора, по значению этого поля можно определить, какой документ распознался, если вы используете несколько типов документов
| Значение | Тип документа |
|---|---|
passport | Паспорт РФ |
foreign_passport | Заграничный паспорт |
driver_license | Водительское удостоверение |
snils | СНИЛС |
inn | Документ с ИНН физлица или организации |
unknown | Тип документа не определён |

#11 Конвертировать дату — конвертируем дату из формата %d.%m.%Y под формат amoCRM, данный блок актуален, если вам нужно заполнить поля с типом Дата

#10 Обновить контакт — обновляем поля контакта по данным из блока распознавания
Настройка TapKit
Далее — настроим виджет кнопок TapKIT. Кнопка будет размещена в карточке контакта и будет запускать процесс распознавания

Настраиваем кнопку, как на скриншоте. Адрес отправки — ссылка на процесс из первого блока в MoreKIT

Тестирование
Создадим тестовый контакт и загрузим файл с паспортом в поле

Загрузим документ. Правильность распознанных данных может зависеть от качества фотографии

Жмем кнопку распознавания и проверяем результат

Данные распознались, процесс успешно сработал
В событии MoreKIT можно также посмотреть, какие данные отдал блок распознавания

Подведем итоги
В данной статье рассмотрели, как работает распознавание документов через MoreKIT. Попробовали распознать тестовый паспорт, распознавание прошло успешно и поля контакта были заполнены