IT - сфера хороша тем, что ты можешь сегодня настраивать фильтрацию на маркетплейсе бытовой электроники, а завтра уже озаботишься проверкой физ.лица для страховой компании. Многозадачность и разноплановость — наше всё.
Как Андрей Долгушин (наш тимлид) помогал службе безопасности одной крупной страховой компании расскажем ниже.
На входе: крупная страховая компания (NDA), ручной ввод данных и проверка по базам на предмет: мошенничества, задолженности перед СК, банкротства, участия в ДТП и т.д.
Задачи:
Сократить время обработки заявок
Автоматизировать и ускорить процесс проверки страхуемых (физ. лица, юр. лица, транспортные средства и полуприцепы)
Весь процесс мы поделили на этапы:
Распознавание изображений со сканов документов
Автозаполнение данных
Проверка данных по внутренним и внешним сервисам
Заявки в систему заводятся сотрудниками страховой компании несколькими путями
Создана служебная почта, которая автоматически проверяется на предмет новых писем, из которых уже формируются заявки. Если в письме присутствуют xlsx файлы, то данные файлы уходят на специальный парсер, где проверяется соответствие заданному шаблону и обрабатываются в соответствии с ним.
Если в письме присутствуют изображения, то они добавляются в очередь на дальнейшее распознавание. Все остальные файлы крепятся в заявку как есть.
Про сам парсер:
Для каждого типа объекта описана «схема» парсера — набор правил (как соотносить поля между шаблоном и заданной моделью данных, их связь между собой, обязательность и правила заполнения).
Внутренняя форма на сайте
Сотрудник руками заполняет соответствующие поля. При заполнении он может добавить изображения, они распознаются, минуя очередь и пред заполняют поля, в помощь пользователю. Ему останется только проверить корректность введенных данных и подтвердить сохранение.
Было принято использовать сервис DBrain, сам процесс распознавания поделен на 2 этапа:
Upload (Загрузка).
На первом этапе происходит загрузка файла, получается id задачи в системе DBrain. Т.к. неизвестно какого размера пользователь может загрузить файл, и чтобы не поперхнулся ни dbrain, ни мы, ожидая ответа (а мы помним, что наша задача ускорить процесс обработки), файл предварительно сжимается до определенного размера (примерно до 1 МБ).
Recognize (Распознавание)
На втором этапе, проверяется готовность выполнения этой задачи и забирается результат распознавания. Но самая большая боль всяких сервисов распознавания — это соответствие исходного и распознанного текста. Чтобы не получить неактуальную «абракадабру» — мы изначально задали, так называемые «настройки уверенности» — настройки, которые позволяют определить уровень распознавания.
Итак, мы получили распознанные данные. Что дальше?
После того как документы распознаны необходимо их соотнести с имеющимися данными и при необходимости объединить. Так, в нашем списке может, например, оказаться несколько документов принадлежащих одному лицу (объекту) и необходимо их объединить, обогатить информацией.
Для каждого документа определен список полей при совпадении по которым он считается эквивалентным другому: для физ.лица — это ФИО и дата рождения, для юр. лица — ИНН, ОГРН и тд. Все данные проверяются и соединяются в карту страхуемого.
3. Проверка данных по внутренним и внешним сервисам
Проверка — это огромный пласт работы, которую сотрудники выполняли вручную по 7 сервисам. Какие-то проверки проводили сами менеджеры, какие-то отдавали в службу безопасности. Процесс трудозатратен, занимаем уйму времени нескольких сотрудников.
Проверка выполнялась по критериям:
Для физических лиц:
Также предусмотрели проверку разрешения на работу: в случае, если клиент является иностранным гражданином - в список требуемых документов для подтверждения платежеспособности добавляется разрешение на работу. Для этого система автоматизировано подает обращения в ГУВМ МВД для получения сведений.
Если у объекта присутствуют водительские права, они также попадут под проверку. Система проверит подлинность прав, их действительность. Сотруднику будет доступен список найденных штрафов с указанием даты, причины и суммы нарушения.
Если неоплаченные штрафы не были вовремя оплачены и перешли к судебным приставам, то сотруднику также будет предоставлен перечень исполнительных производств.
Пример проверки физ. лица
*проект под NDA, представлены прототипы
Для транспортного средства и полуприцепов:
Пример проверки ТС
*проект под NDA, представлены прототипы
Для юридических лиц:
Система собирает данные об объекте: выписки из ЕГРЮЛ, ЕГРИП, участие в судебных делах, задолженностях. Для выполнения поиска достаточно ввести данные компании. Система сигнализирует о ненадежном финансовом состоянии, банкротстве или отсутствии активности.
Статистка платежей.
Предоставили возможность проверки по криетериям:
Поскольку у нас уже есть заполненные и предзаполненные данные - передать их во внешние сервисы для проверки достаточно легко. Мы написали rest и soap клиенты и шаблон компонента для вывода информации. Теперь вместо ручной последовательной проверки и передачи еще и в службу безопасности - система проверяет по всем сервисам данные параллельно.
Пример проверки юр. лица
*проект под NDA, представлены прототипы
Весь процесс регистрации и проверки страхуемого лица занимает теперь 20 мин.