Автозаполнение данных пассажиров по документу: как внедрили OCR в терминал агентских продаж

25 сентября 2026 • Валерия Казаченко

Этот кейс будет интересен, если:

  • сотрудники вручную переносят в систему данные из сканов документов 
  • ручной ввод замедляет работу и повышает риск ошибок 
  • приходится обрабатывать разные типы документов и форматы данных 
  • нужно безопасно работать с документами с персональными данными

В терминале агентских продаж крупной российской авиакомпании мы автоматизировали ввод данных пассажиров по фото и сканам документов. Сервис распознает данные и заполняет форму, а кассиру остается сверить результат с оригиналом.

От первого прототипа до промышленной эксплуатации прошло около трех месяцев. За несколько месяцев после запуска больше половины продающих агентов стали использовать новую функцию в ежедневной работе.

Контекст задачи

Мы развиваем терминал агентских продаж для крупной российской авиакомпании. Это веб-приложение, в котором кассиры агентств создают бронирования и выписывают билеты. Одно из направлений развития продукта — сокращать время, которое кассир тратит на рутинные операции.

При создании бронирования нужно вручную заполнить данные каждого пассажира: ФИО, дату рождения, пол, гражданство, тип, номер и срок действия документа. При этом пассажиры часто заранее присылают документы по почте или в мессенджерах. У кассира уже есть фотография или скан с нужными сведениями, но их все равно приходится переносить в систему вручную.

Мы предложили использовать для этой операции OCR, технологию оптического распознавания текста. Вместе с нашей ML-командой за две недели собрали прототип, получили положительную обратную связь и перешли к разработке версии для промышленной эксплуатации.

Зачем автоматизировать ввод данных пассажира

Ручное заполнение формы занимает время, особенно если кассир оформляет сразу несколько пассажиров. И скорость здесь влияет не только на удобство работы.

Пока кассир вводит данные группы пассажиров, выбранные места на рейсе могут выкупить. Ошибка в фамилии или номере документа потребует последующей корректировки бронирования и может привести к обращению в контакт-центр. А при обслуживании клиентов у стойки время заполнения формы влияет и на очередь.

Как работает распознавание

Перед проектированием мы посмотрели, как кассиры получают документы и работают с ними при оформлении бронирования. Отдельный сценарий для OCR не создавали: загрузку встроили непосредственно в форму пассажира.

1) Для каждого пассажира загружается свой документ

Мы отказались от массовой загрузки документов. В таком сценарии кассиру пришлось бы дополнительно сопоставлять файлы с пассажирами и отслеживать, какой документ распознан полностью, какой частично, а какой не обработан.

Вместо этого у каждого пассажира в форме есть собственная зона загрузки. Документ можно выбрать на компьютере или перетащить в окно. Терминал принимает JPEG, PNG и PDF.

2) Результат распознавания сразу виден кассиру

Распознавание занимает несколько секунд, поэтому во время обработки кассир видит индикатор процесса. После этого по каждому пассажиру появляется один из трех статусов:

  • Заполнено - все обязательные поля распознаны. 
  • Частично заполнено - часть данных распознать не удалось. Форма сразу подсвечивает поля, которые нужно заполнить вручную. 
  • Не заполнено - документ обработать не удалось. 

Кассир может загрузить другой файл или продолжить ввод вручную. Статусы позволяют сразу понять, что делать дальше, а ошибка распознавания не блокирует оформление: кассир может исправить или дополнить данные вручную и продолжить работу.

3) Результат можно сразу сверить с документом

Автозаполнение не отменяет проверку данных кассиром. Поэтому рядом с формой остается превью загруженного документа. Его можно увеличить и повернуть, чтобы сравнить оригинал с распознанными значениями.

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

1921

Какие документы поддерживает сервис

В первую версию включили четыре типа документов:

  • общегражданский паспорт РФ; 
  • заграничный паспорт РФ; 
  • национальные паспорта и ID-карты иностранных граждан; 
  • заграничные паспорта иностранных граждан международного формата ICAO 9303. 

Очередность определяли по реальной структуре продаж. Сначала охватили документы взрослых пассажиров из России и СНГ, на которых приходится больше всего бронирований, затем Китай и остальные направления.

При этом документы отличаются не только внешне. Нужные сведения в них могут быть представлены обычным текстом, в машиночитаемой зоне или в штрих-коде. Поэтому для разных типов документов сервис использует разные источники данных.

Для заграничных паспортов основной источник - MRZ, машиночитаемая зона в нижней части страницы документа. Данные из визуальной части используются как запасной вариант. Для национальных паспортов и ID-карт сервис использует MRZ или штрих-код PDF417 либо QR, если они есть, а при их отсутствии распознает визуальную зону.

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

Как работаем с персональными данными 

Сервис получает изображения документов, удостоверяющих личность, поэтому требования к безопасности учитывали при проектировании самого процесса обработки. После загрузки документ проходит проверку и передается на распознавание в Yandex Vision OCR. Сам файл мы не сохраняем, а распознанные данные используем для заполнения формы пассажира и отдельно также не храним. Yandex Vision работает на инфраструктуре Yandex Cloud, которая соответствует требованиям 152-ФЗ и аттестована по первому, наивысшему уровню защищенности персональных данных УЗ-1. Переданные изображения на стороне сервиса не сохраняются и не используются для обучения моделей.

До отправки файла на распознавание система проверяет его тип и размер. Принимаются JPEG, PNG и PDF размером до 10 МБ. Формат определяется по содержимому файла, а не только по его расширению. Например, исполняемый файл, которому просто присвоили расширение .jpg, будет отклонен и не попадет в сервис распознавания.

Персональные данные не сохраняются и в логах. В них нет ФИО, номеров документов, дат рождения и других значений распознанных полей. Система фиксирует только технический результат: какие поля удалось заполнить, а какие нет.

Маскируются и названия загружаемых файлов, поскольку пользователи могут указывать в них фамилию пассажира

Как контролируем работу OCR после запуска

В Grafana собрали дашборд, который показывает количество успешных, частичных и неуспешных распознаваний в разрезе агентств и типов документов. По нему можно оценивать использование функции и видеть, с какими документами работают чаще.

Дополнительно анализируем пользовательские сценарии через Вебвизор: как кассиры работают с загрузкой документов и на каких этапах процесса есть возможности для улучшения. Так можно оценивать работу функции после релиза, не запрашивая у пользователей повторно сами документы.

Что изменилось после запуска

Для кассира. Оформление бронирования занимает меньше времени, особенно при работе с группами пассажиров. Данные из документов заполняются автоматически, кассиру остается проверить их корректность.

Для бизнеса. Быстрее проходит один из самых долгих этапов оформления, особенно при работе с группами пассажиров. Снижается и риск ошибок ручного ввода, которые приводят к корректировкам бронирований и обращениям в контакт-центр.

Недавние публикации

Еще по теме

Похожие бизнес-задачи и решения, которые мы нашли, проверили и внедрили