A8PRO CR · Local API · Windows
Подключение A8PRO CR к вашей программе
Локальное считывание документов через совместимый картридер или паспортный сканер. Здесь — порядок подключения, команды API и комплект для разработчика.
Инструкция на русском, OpenAPI, Postman, шаблон 1С и вымышленные примеры JSON. Без установщика и ключей.
Контракт выпуска 1.1.30.0 Universal R4. Перед внедрением сверяйте версию программы, драйвер и устройство. Проверены исходники и идентичность пакета; физическое оборудование и ваша конфигурация 1С требуют отдельной приёмки.
Подготовьте рабочее место
- Согласуйте выпуск A8PRO CR, Windows, драйвер, устройство и необходимые типы документов.
- Получите установщик у A8PRO. При обновлении завершите приложение через трей и используйте ту же учётную запись Windows; не удаляйте прежнюю установку заранее.
- Проверьте лицензию, разрешение CHIP/MRZ и запуск локального сервиса на порту 9010.
- Настройте A8PRO_API_TOKEN в окружении процесса: случайный секрет не короче 32 символов. Передавайте его в X-A8PRO-Token; он читается при запуске приложения.
Запрос выполняется на компьютере со считывателем
Базовый адрес — http://localhost:9010. Для новых подключений используйте /v2/. Установленный клиент 1С обращается к этому адресу на рабочем ПК. Вызов с сервера 1С попадёт на сервер, а не на компьютер оператора. Для браузерной CRM и терминального сервера архитектуру согласуем отдельно: доступ с произвольного сайта ограничен.
http://localhost:9010X-A8PRO-Token: <local-secret>
Четыре команды API
GET /v2/status
Состояние CHIP и разрешений. 200 не доказывает исправность MRZ-устройства.
GET /v2/getInfo
Новое чтение. 200 содержит поля либо status=waiting. Сохраните scanId из заголовка.
GET /v2/getInfo/last
Последний результат в оболочке scanId / scannedAt / source / data. 204 — результата нет.
POST /v2/getInfo/ack?scanId=…
Удаление принятого результата из локального кэша. Успех — 204 без тела; повтор может вернуть 404.
Получите, проверьте, сохраните — затем подтвердите
- Запускайте одно чтение по действию оператора. CHIP имеет приоритет, MRZ используется при отсутствии карты и разрешённой функции.
- Покажите данные для проверки. HTTP 200 с status=waiting — ожидание, а не успешное считывание.
- Сохраните данные в вашей программе с защитой от повторной записи одного scanId.
- После подтверждённого сохранения отправьте ACK с тем же scanId. Не отправляйте его при простом показе результата.
Локальный сервер содержит один последний результат. Новый скан заменяет его. Срок доступности /last — 2 минуты, проверяется при запросе; это не таймер гарантированного стирания памяти. Не подставляйте /last в карточку без проверки известного scanId. Повтор /getInfo запускает новое чтение и не является идемпотентным.
Поля и форматы
ФИО: lname, fname, sname; документ: docType, docnum; ИИН: iin; орган выдачи: issuer; даты: bdate, valid_from, valid_to; гражданство: citizen; страна выдачи: issuecountry; пол: sex; место рождения: bplace; национальность: nation; MRZ-имена: mrzln, mrzfn. Все значения — строки, возможны пустые поля. Даты обычно ДД.ММ.ГГГГ, их нужно проверять. photo и sig_photo в проверенных ветках этого выпуска пустые. Названия полей отличаются от QRScan.
Обработайте ожидание и ошибки
Проверяйте HTTP-код до разбора JSON: 204 не имеет тела. 401 — токен; 403 — лицензия либо ограничения локального доступа; 429 — занято; 503 — тайм-аут, устройство или остановка; 500 — внутренняя ошибка. Тело ошибки может быть пустым. Бюджет чтения 10 секунд; клиентский тайм-аут задайте с запасом, например 15 секунд. Не выполняйте параллельные повторы.
Материалы для разработчика
Шаблон 1С предназначен для установленного клиента Windows и требует адаптации к вашей конфигурации. Он не записывает справочники и не выполняет ACK автоматически. В реальной базе 1С и с физическим устройством этот пример не запускался.
До запуска на рабочих местах
- Проверить нужные документы отдельно для CHIP и MRZ, поля, даты и кодировки.
- Проверить ожидание, потерю ответа, занятость, отсутствие устройства и лицензии.
- Проверить сохранение до ACK, повторный ACK и защиту от подстановки предыдущего клиента.
- Зафиксировать версию, оборудование, принимающую систему и результаты пилота.
Для оценки подключения укажите вашу программу, место выполнения клиента, Windows и модель считывателя. Согласуем состав решения и интерфейс выбранного выпуска.