Обзор Microblink BlinkCard: распознавание платёжных карт, liveness-проверки, платформы и лицензирование
Microblink BlinkCard — не настольная программа для открытия PDF и не самостоятельный «сканер карт» для конечного пользователя, а коммерческий SDK, который разработчик встраивает в мобильное или веб-приложение. Его задача — захватить платёжную карту камерой, распознать реквизиты, вернуть структурированный результат и дать приложению дополнительные сигналы о том, что перед камерой находится физическая карта, а не её изображение на экране или фотокопия. В актуальной ветке v3000 Microblink перевела продукт на сессионную архитектуру, сохранила нативные SDK для Android и iOS, выпустила новый браузерный пакет и обновила обёртки для React Native и Flutter. Поэтому BlinkCard имеет смысл оценивать прежде всего как компонент платёжного, антифрод- или onboarding-процесса, а не как замену обычному просмотрщику документов.
| Параметр | Актуальное положение |
|---|---|
| Разработчик | Microblink |
| Тип продукта | SDK для распознавания кредитных и дебетовых карт, извлечения данных и liveness-проверок |
| Основные платформы | Android, iOS, Web; актуальные обёртки React Native и Flutter |
| Текущая линия | v3000; на дату проверки Android и iOS — 3000.0.1, Web — 3000.0.8, React Native и Flutter — 3000.0.0 |
| Модель обработки | Основное распознавание выполняется локально; лицензия периодически валидируется через сеть, а BIN intelligence относится к сетевому обогащению данных |
| Лицензирование | Коммерческая лицензия и ключ; бесплатный trial выдаётся после регистрации, фиксированная публичная цена не заявлена |
| Ключевой результат | PAN, срок действия, имя держателя, IBAN, CVV при разрешённой настройке, сведения о платёжном аккаунте, liveness-статусы и при необходимости изображение карты |
Скачать Microblink BlinkCard
Новейшая версия для Виндовс, macOS и Линукс. Удобный редактор PDF под российские реалии.
У BlinkCard нет единого установочного файла для Windows, macOS или Linux. Это библиотека для разработчиков, и безопасный путь получения зависит от целевой платформы. На Android актуальная ветка распространяется через Maven Central как модули blinkcard-core и blinkcard-ux. На iOS основной механизм — Swift Package Manager или ручное подключение XCFramework из официального репозитория релизов. Для Web текущий пользовательский пакет называется @microblink/blinkcard и устанавливается через npm, Yarn или pnpm; старый пакет @microblink/blinkcard-in-browser-sdk помечен как deprecated и не должен быть отправной точкой для новой интеграции.
Для React Native используется пакет @microblink/blinkcard-react-native, для Flutter — blinkcard_flutter из pub.dev. Это именно обёртки над нативными компонентами, а не отдельные редакции с иной моделью распознавания. Устаревшие Cordova- и Capacitor-пакеты Microblink опубликованы, но их страницы прямо предупреждают, что репозитории больше не поддерживаются и новых релизов не будет. Для нового проекта разумно выбирать нативный SDK, Web, React Native или Flutter, а не закладываться на Cordova/Capacitor.
Официальная демонстрация доступна отдельно: BlinkCard можно попробовать в браузере или внутри приложения Microblink Identity. Демонстрационное приложение не является «мобильной версией BlinkCard» для производственной эксплуатации и не заменяет SDK или лицензию. Для разработки нужен ключ, связанный с идентификатором приложения или доменом, поэтому скачивание пакета само по себе ещё не делает сканирование рабочим.
Что такое Microblink BlinkCard
BlinkCard — продукт Microblink для автоматического захвата и OCR платёжных карт. Он предназначен для встраивания в checkout, добавления новой карты, подтверждения владения платёжным инструментом, card provisioning и антифрод-сценариев. В отличие от универсального OCR, который отдаёт текстовые блоки, BlinkCard знает структуру платёжной карты и возвращает отдельные поля: номер карты, валидность номера, срок действия, имя держателя, IBAN и другие атрибуты платёжного аккаунта. В v3000 результат может содержать массив cardAccounts, то есть модель рассчитана и на карты, где присутствует больше одного платёжного аккаунта.
Продукт активен и развивается. В 2026 году Microblink выпустила архитектурно новую линию v3000, где прежняя модель Recognizer объявлена устаревшей, а сканирование переведено на session-based API. Вместе с этим появились BIN intelligence, новый набор модулей для Web, обновлённые UX-компоненты и расширенная локализация. Для существующих клиентов важна совместимость лицензий: ключи ветки v2 могут использоваться с v3000, поэтому миграция API не требует автоматически перевыпускать лицензию.
BlinkCard следует отличать от двух соседних сущностей. Первая — Microblink Identity, бесплатное демонстрационное приложение, которое показывает технологии BlinkID, BlinkID Verify и BlinkCard. Вторая — Microblink Platform, более широкая оркестрационная платформа, где «Scan Payment Card» выступает одной из capabilities. У платформенного workflow могут быть другие правила хранения и возврата полей: например, документация Platform указывает, что CVV там не извлекается и не сохраняется, тогда как автономный BlinkCard SDK v3000 имеет настройку extractCvv и поле CVV в результате. Эти режимы нельзя описывать как одно и то же решение.
Основные функции Microblink BlinkCard
Распознавание реквизитов карты
Ветвь v3000 позволяет управлять тем, какие поля нужны приложению. В ExtractionSettings предусмотрены отдельные переключатели для IBAN, срока действия, имени держателя и CVV, а также режим, допускающий возврат номера, не прошедшего Luhn-проверку. По умолчанию извлечение основных полей включено, а принятие невалидного PAN выключено. Это полезно в реальном платёжном интерфейсе: приложение может не тратить ресурсы на ненужные поля и одновременно не принимать тестовый номер как корректную карту без явного решения разработчика.
Финальный результат включает issuing network, имя держателя, IBAN и список cardAccounts. Для каждого аккаунта возвращаются PAN, признак валидности номера, префикс, CVV, срок действия и, при наличии, метаданные вроде типа финансирования, категории карты, имени эмитента и страны эмитента. Именно в v3000 Microblink добавила BIN intelligence — сетевое обогащение, которое по BIN/PAN возвращает сведения об эмитенте и категории карты. Это расширяет продукт от «OCR для автозаполнения» к источнику риск-сигналов, но одновременно создаёт отдельную сетевую зависимость.
Двухстороннее сканирование
Современные карты часто переносят номер, имя и срок действия на разные стороны, а некоторые размещают все реквизиты на обороте. BlinkCard умеет вести сессию по обеим сторонам. Если все запрошенные поля найдены после первого изображения, SDK может завершить процесс без лишнего переворота; если нет — UX просит показать вторую сторону. Такой подход особенно важен после распространения вертикальных карт и нестандартных компоновок, которые продукт поддерживает с ветки v2.
Liveness: экран, фотокопия и карта в руке
Сильная сторона BlinkCard — не только OCR, но и набор liveness-сигналов. В настройках есть проверка изображения с экрана, проверка фотокопии и проверка того, что карта удерживается рукой. Для первых двух задаётся уровень строгости, а для hand presence — пороги соотношения размеров и перекрытия руки с картой. Итоговая структура результата содержит общий liveness-статус и статусы по сторонам. Это не заменяет авторизацию операции и не доказывает личность держателя, но даёт антифрод-системе дополнительный признак физического присутствия карты.
Анонимизация чувствительных данных
Для PAN, префикса номера, CVV, IBAN и имени держателя предусмотрены режимы анонимизации. Можно маскировать данные только на изображении, только в структурированном результате или одновременно в обоих представлениях. Для номера карты настраивается количество открытых цифр в начале и конце. Это важный механизм минимизации данных: если downstream-система использует только последние четыре цифры и результат liveness, нет необходимости распространять полный PAN по логам, аналитике и внутренним сервисам.
Готовый UX и низкоуровневый API
Для типового сценария есть готовая оболочка, которая управляет камерой, инструкциями и состояниями сканирования. На Android v3000 UX построен на Jetpack Compose, на iOS BlinkCardUX — на SwiftUI, а в Web отдельный UX Manager связывает камеру и результат движка. Если фирменный интерфейс не подходит, можно подключить только core и самостоятельно подавать кадры, обрабатывать ProcessResult, отображать подсказки и завершать сессию. Гибкость высокая, но стоимость интеграции резко возрастает: в headless-режиме на разработчике лежат камера, жизненный цикл, таймауты, обратная связь и корректное освобождение ресурсов.
Интерфейс и удобство использования
Поскольку BlinkCard — SDK, «интерфейс программы» зависит от способа интеграции. Готовый UX строится вокруг одной рабочей зоны: видеопоток камеры, рамка/направляющие, динамическая подсказка и состояние завершения. Система сообщает, если карта слишком далеко или близко, если показана не та сторона, если изображение размыто или не проходит требуемые проверки. В v3000 release notes заявлена поддержка 56 языков интерфейсных строк и улучшения доступности, включая screen reader support.
Для конечного пользователя правильная интеграция обычно требует меньше действий, чем ручной ввод: показать карту, при необходимости перевернуть её и проверить заполненные данные. Для разработчика порог освоения выше. Нужно понимать разницу между инициализацией SDK, scanning session, per-frame ProcessResult и финальным BlinkCardScanningResult. В v3000 это стало концептуально чище, чем старый Recognizer API, но миграция с v2 всё равно является breaking change и требует переделки кода.
Поддерживаемые форматы и совместимость
BlinkCard работает не с «документными форматами» вроде PDF, DOCX или EPUB, а с потоком изображения платёжной карты. Основной вход — кадры камеры. В актуальных React Native и Flutter-обёртках есть DirectAPI для обработки статических изображений; в низкоуровневых native/web API также можно подавать подготовленные изображения. Конкретный контейнер изображения зависит от платформы и метода, поэтому корректнее говорить о camera frame/static image API, а не обещать универсальный список PNG/JPEG как файловый импорт.
Результат — структурированные поля и опционально обрезанное изображение карты. В CroppedImageSettings можно включить возврат card image, изменить DPI и расширение области кадрирования. В v3000 encoded image из прежней структуры результата удалён: изображение теперь представлено платформенным объектом внутри результата стороны. Экспорта в PDF, CSV или офисные форматы у SDK нет — сериализацию и передачу данных реализует приложение.
По видам карт продукт ориентирован на кредитные, дебетовые и другие платёжные карты разных сетей, поддерживает горизонтальные и вертикальные дизайны, двустороннюю компоновку и Visa Quick Read. Проверка номера использует Luhn-валидность, однако в настройках можно разрешить возврат номера, который проверку не прошёл — полезно для контролируемых тестовых сред. Поддержка дизайна не означает, что BlinkCard является платёжным процессором: он не проводит транзакцию и не заменяет эквайринг, 3-D Secure или токенизацию.
В контексте сайта о документах BlinkCard ближе к специализированному OCR, чем к PDF-инструменту. Если требуется распознавать страницы, таблицы и сканы документов, профильнее будет ABBYY FineReader; если нужно получать PDF со сканера в Windows — WinScan2PDF. BlinkCard решает намного более узкую, но лучше структурированную задачу платёжной карты.
Паспорт обратимости операций
Необратимость появляется уже в интегрирующем приложении. Если PAN, изображение или liveness-результат записаны в журнал, CRM, платёжный backend или аналитическое хранилище, их жизненный цикл подчиняется правилам той системы. Поэтому безопасный проект отделяет «результат распознавания» от «подтверждённого способа оплаты»: до сохранения пользователь должен иметь возможность проверить реквизиты, а backend — принять только минимально нужный набор данных. Анонимизацию лучше включать до передачи результата дальше по цепочке, а не рассчитывать на последующую очистку.
Производительность и стабильность
Microblink позиционирует BlinkCard как локальный, малый по размеру движок. Для Android документация v3000 приводит прирост приложения примерно 3,04–3,10 МБ для загрузки и 3,84–4,29 МБ после установки в зависимости от ABI. Для iOS официальный репозиторий оценивает вклад BlinkCard примерно в 2,0 МБ сжатого и 4,3 МБ установленного размера. Эти цифры относятся к текущим отчётам конкретных сборок и не включают весь код вашего приложения, поэтому использовать их как точный размер финального APK/IPA нельзя.
Для Web движок поставляется в вариантах WebAssembly basic, advanced и advanced-threads. Runtime выбирает совместимую сборку автоматически; SIMD даёт более современный путь, а многопоточная сборка требует SharedArrayBuffer и cross-origin isolation через COOP/COEP. Safari по соображениям совместимости остаётся на однопоточном advanced-варианте. На слабых устройствах или в браузере без современного WASM производительность закономерно будет ниже, поэтому web-интеграция нуждается в проверке на реальном парке устройств.
«Большие файлы» для BlinkCard почти не применимы: SDK не обрабатывает многостраничные PDF и не предназначен для пакетного OCR архивов. Тяжёлый сценарий здесь — поток кадров высокого разрешения, одновременная работа нескольких компьютерных vision-компонентов и хранение возвращаемых изображений. Производительность повышают предварительная загрузка ресурсов, отключение ненужных полей и своевременная выгрузка SDK после сессии. Release notes v2.12 также упоминают детектор наклона и проверку стабильности последовательных кадров, которые улучшают качество входа до извлечения данных.
Лицензирование и версии
BlinkCard — коммерческий продукт. Для инициализации сканирования требуется действующий license key. Trial-ключ выдаётся после регистрации в Microblink Developer Hub; на актуальных developer/plans-страницах Microblink указан 30-дневный пробный период. Универсальной фиксированной розничной цены для production при этом не заявлено: производственная лицензия подбирается через sales/custom plan. Поэтому корректнее говорить о коммерческом quote-based лицензировании, а не переносить в обзор старые цены или лимиты сканов.
Ключ привязывается к приложению или веб-домену. В браузерной документации отдельно указано, что для нескольких доменов могут потребоваться разные ключи. В рамках License Management Program продукт периодически валидирует лицензию через интернет; после успешной проверки работа может продолжаться в offline/private-network режиме до следующей проверки. Это означает, что «on-device OCR» не равно «абсолютно без сети»: изображения могут обрабатываться локально, но лицензирование имеет сетевую зависимость.
Код обёрток для React Native и Flutter опубликован под MIT, однако это не делает сам BlinkCard бесплатным SDK. Обёртка лишь связывает приложение с нативной библиотекой, которая по-прежнему требует коммерческого ключа. Аналогично npm-пакет можно установить без оплаты, но без валидной лицензии рабочее сканирование не запускается.
Хронология развития и поддержки
| Этап | Что изменилось | Практическое значение |
|---|---|---|
| v2.0 | AI-driven BlinkCard, объединённый recognizer, поддержка данных на обеих сторонах, экран проверки результата | Продукт ушёл от простого OCR к полноценному карточному flow |
| v2.3–v2.6 | Вертикальные карты, Visa Quick Read, расширение поддерживаемых дизайнов и улучшение PAN | Меньше зависимости от классической горизонтальной разметки |
| v2.8–v2.10 | Hand/screen/photocopy liveness, новые пороги и улучшенная модель фотокопии | Появился самостоятельный антифрод-слой поверх OCR |
| v2.12 | Наклон, стабильность последовательности кадров, улучшение имени держателя | Лучше контроль качества входного изображения |
| v3000 | Session-based API, BIN intelligence, epoch versioning, 56 языков, новые модульные SDK | Breaking migration, но более ясная архитектура и новые risk signals |
Ключевой вывод из истории — активной является именно линия v3000, а не старые Recognizer-интеграции. В официальном migration guide Microblink переводит v2 в maintenance mode: feature updates для неё прекращаются, а исправления сохраняются для проблем безопасности. Для Web прежний @microblink/blinkcard-in-browser-sdk официально deprecated в пользу @microblink/blinkcard. Cordova и Capacitor также не поддерживаются. Существующее приложение на v2 не становится мгновенно неработоспособным, но новый код разумно строить на v3000 и заранее планировать миграцию старого API.
Системные требования
Требования для Android
Для BlinkCard v3000 требуется Android 7.0 / API 24 или новее. SDK поставляется для ARMv7 и ARM64. Камера для надёжного сканирования должна выдавать preview не ниже 1080p. Миграционный гайд также указывает Android Gradle Plugin 8.0+ и переход Kotlin к линии 2.1.20. Готовый UX использует Jetpack Compose; при Java/Views доступен BlinkCardScanActivity, но для новых интеграций документация рекомендует Kotlin.
Требования для iOS
Нативный core BlinkCard можно развернуть на iOS 15.0+, а пакет BlinkCardUX — на iOS 16.0+. Актуальный репозиторий указывает Swift Package Manager, Swift 5.10 и Xcode 26.2 для текущей сборки; BlinkCardUX использует SwiftUI. React Native и Flutter-обёртки требуют iOS 16.0+, поэтому их минимальная версия выше, чем у bare core.
Требования для Web
Актуальный npm-пакет заявляет camera scanning начиная с Chrome/Chromium 96, Edge 96, Opera 84, Firefox 132 на desktop, Safari 16.4 на macOS и iOS Safari 16.4. Приложение должно работать в secure context — HTTPS или localhost. Firefox для Android не поддерживается для camera-based scanning из-за особенностей device enumeration. Для advanced-threads дополнительно нужны COOP/COEP и cross-origin isolation; без них SDK откатится к однопоточной WASM-сборке.
Требования для React Native и Flutter
React Native wrapper v3000 тестировался с React Native 0.82.1 и поддерживает как новую Turbo Module архитектуру, так и legacy Native Module. Минимум — iOS 16+ и Android API 24+. Flutter wrapper требует Flutter 3.29+, Dart 3.7+, iOS 16+ и Android API 24+. Для Flutter на iOS в v3000 включается интеграция через Swift Package Manager.
Карта критических зависимостей
| Зависимость | Когда нужна | Что произойдёт без неё |
|---|---|---|
| License key | Всегда при инициализации | Рабочая инициализация SDK не проходит без действующего ключа |
| Интернет для проверки лицензии | Периодически по License Management Program | После истечения lease новая проверка не сможет пройти |
| Камера 1080p и автофокус | Live scanning | Выше риск неуспешного захвата и повторных попыток |
| WASM + secure context | Web | Браузерная версия не получит камеру или не запустит движок |
| COOP/COEP | Web advanced-threads | SDK использует совместимую однопоточную сборку |
| BIN lookup | Если приложение использует BIN intelligence | Не будет сетевого обогащения данными эмитента/категории |
| Нативные toolchain | Android/iOS и cross-platform wrappers | Сборка не соответствует требованиям v3000 |
Преимущества и недостатки Microblink BlinkCard
Плюсы и минусы
Плюсы ✔️
- Специализированное распознавание. SDK отдаёт готовые карточные поля и статусы вместо неструктурированного OCR-текста.
- Liveness на уровне карты. Есть проверки экрана, фотокопии и присутствия карты в руке, а также общий итог по сессии.
- Локальная обработка основного OCR. В мобильной и браузерной интеграции чувствительные изображения не обязаны уходить на сервер для распознавания.
- Гибкая анонимизация. Можно маскировать PAN, CVV, IBAN и имя отдельно в изображении и в структурированном результате.
- Небольшой размер native SDK. Документация приводит прирост всего в несколько мегабайт на Android и iOS.
Минусы ❌
- Нет публичной фиксированной цены. Production-лицензия требует обращения за коммерческим предложением.
- Сеть всё равно нужна. License Management Program периодически проверяет ключ, а BIN intelligence по определению связан с online lookup.
- v3000 — breaking migration. Старый Recognizer API заменён session-based архитектурой, поэтому переход нельзя свести к обновлению номера зависимости.
- Не все старые wrappers живы. Cordova и Capacitor больше не поддерживаются.
- Требования к камере и окружению существенны. 1080p preview, современная OS, HTTPS для Web и корректный WASM-профиль — это реальные условия работоспособности.
- Нельзя переносить правила Platform на SDK. Поля и политика хранения отличаются; особенно заметна разница в обращении с CVV.
Сравнение с аналогами
| Решение | Платформы | Что извлекает | Антифрод-сигналы | Где уместнее |
|---|---|---|---|---|
| Microblink BlinkCard | Android, iOS, Web, React Native, Flutter | PAN, срок, имя, IBAN, CVV при включении, BIN-атрибуты | Screen, photocopy, hand presence, общий liveness | Когда OCR и подтверждение физического присутствия карты нужны в одном SDK |
| Scanbot SDK Credit Card Scanner | Web, Android, iOS и cross-platform стек Scanbot | Номер, срок действия, имя держателя | В официальном модуле основной акцент на detection/OCR, а не card-liveness | Когда уже используется Scanbot/Apryse для более широкого document capture |
| Stripe CardScan / PaymentSheet scanning | iOS и Android в составе платёжных SDK Stripe | Реквизиты для платёжной формы | Не позиционируется как самостоятельный card-liveness SDK | Когда платежи уже строятся на Stripe и нужен минимум собственной логики |
| Google Payment Card Recognition | Android через Google Play services | OCR номера и срока действия | Не предоставляет набор BlinkCard-проверок экрана/фотокопии/руки | Android-приложения, где достаточно системного OCR и выполнены условия Google Pay |
| Sumatra PDF | Windows | Не распознаёт банковские карты | Нет | Быстрое локальное чтение PDF и других документов, а не card capture |
Sumatra PDF в строгом смысле не является альтернативой BlinkCard. Их пересечение заканчивается на слове «документ»: Sumatra открывает и читает готовые файлы, а BlinkCard превращает изображение физической платёжной карты в данные для приложения. Если требуется просто просматривать PDF, логичнее сравнивать Adobe Acrobat Reader и другие просмотрщики. Если нужен полноценный PDF-редактор, профильнее PDF-XChange Editor. BlinkCard выбирают только тогда, когда в продукте есть реальный сценарий считывания платёжной карты.
Инструкция по установке
Установка BlinkCard — это добавление SDK в проект и инициализация с лицензией. Перед началом нужно создать приложение в Developer Hub и получить trial или production key для точного application ID, bundle ID или домена. Далее шаги зависят от платформы.
Установка на Android
- Подключите Maven Central как репозиторий зависимостей.
- Для готового интерфейса добавьте модуль com.microblink:blinkcard-ux актуальной ветки v3000; для полностью собственного UX можно подключить только blinkcard-core.
- Инициализируйте BlinkCardSdk с ключом и дождитесь завершения загрузки необходимых ресурсов.
- Запустите BlinkCardScanActivity либо создайте BlinkCardScanningSession через core API.
- Проверьте на физическом устройстве разрешение preview, автофокус и возврат финального BlinkCardScanningResult.
Установка на iOS
- Для core убедитесь в deployment target iOS 15+, для BlinkCardUX — iOS 16+.
- Добавьте официальный Swift Package или вручную подключите BlinkCard.xcframework; при ручной интеграции dynamic framework должен быть настроен как Embed & Sign.
- Добавьте BlinkCardUX только если нужен готовый SwiftUI-flow; core может работать отдельно.
- Инициализируйте BlinkCardSdk с license key и создайте scanning session.
- Подайте кадры через готовый analyzer/UX либо через собственную camera pipeline.
Установка Web-пакета
- Установите актуальный пакет @microblink/blinkcard, а не deprecated @microblink/blinkcard-in-browser-sdk.
- Разместите ресурсы WASM/worker из пакета без изменения структуры.
- Запускайте приложение только в HTTPS-контексте или на localhost.
- Если нужен multithreaded WASM, настройте COOP и COEP; иначе SDK выберет совместимый вариант автоматически.
- Создайте экземпляр BlinkCard с license key, привязанным к домену, запросите доступ к камере и подпишитесь на результат.
Установка в React Native и Flutter
React Native ставится через пакет @microblink/blinkcard-react-native, после чего нативные зависимости подтягиваются стандартным стеком iOS/Android проекта. Flutter использует blinkcard_flutter; для iOS v3000 требуется поддержка Swift Package Manager. В обоих случаях нужно передать platform-specific license key и выбрать между готовым performScan и DirectAPI для статических изображений.
Параметры, которые важно настроить сразу
- ExtractionSettings: отключите поля, которые приложению не нужны; это уменьшает лишнюю обработку и объём чувствительных данных.
- AnonymizationSettings: заранее решите, где маскируются PAN, CVV, IBAN и имя — в картинке, result fields или везде.
- LivenessSettings: согласуйте строгость screen/photocopy checks с risk policy, а не оставляйте пороги без бизнес-обоснования.
- CroppedImageSettings: не включайте возврат изображения карты, если downstream-процессу достаточно структурированных полей.
- Логирование: исключите печать полного BlinkCardScanningResult в production, если в нём возможны PAN/CVV.
Специальная процедура «удаления BlinkCard» в документации не описана, поэтому универсальную команду удаления приводить некорректно: способ зависит от package manager и выбранного способа интеграции. Перед исключением зависимости из проекта нужно отдельно проверить собственные хранилища и логи, потому что удаление библиотеки из сборки само по себе не затрагивает уже сохранённые приложением изображения или реквизиты.
Практические кейсы
Ускоренное добавление карты в checkout
Цель: заменить ручной ввод PAN и срока действия камерой. Подготовка: включить извлечение номера и expiry, решить, требуется ли имя; CVV лучше запрашивать только если это оправдано платёжной схемой и политикой обработки. Шаги: открыть готовый scanner UX, показать карту, дождаться завершения первой/второй стороны, перенести результат в форму и дать пользователю проверить значения. Проверка: принять только cardNumberValid и непустые обязательные поля. Ограничение: BlinkCard не токенизирует карту и не отправляет платёж — после распознавания всё равно нужен PSP/acquirer flow.
Card-not-present проверка физического присутствия
Цель: получить дополнительный риск-сигнал перед операцией, где одной пары PAN/expiry недостаточно. Подготовка: активировать screen, photocopy и card-held-in-hand checks; определить, что считать fail, pass и неопределённым результатом. Шаги: запускать live-camera flow только в рискованных транзакциях, собирать overallCardLivenessResult и статусы по сторонам, передавать их в risk engine. Проверка: убедиться, что fail не трактуется как техническая ошибка и наоборот. Ограничение: liveness подтверждает свойства предъявленной карты, но не личность её законного владельца.
Добавление карты с минимизацией PCI-экспозиции
Цель: не распространять полный PAN и CVV по внутренним системам. Подготовка: настроить анонимизацию результата и изображения, отключить returnCardImage, если картинка не нужна. Шаги: извлечь реквизиты, передать чувствительные значения только компоненту, который создаёт токен/платёжный метод, а в бизнес-логи сохранить маскированный PAN и технические статусы. Проверка: проверить не только основной backend, но и crash reports, analytics и debug console. Ограничение: встроенная анонимизация не заменяет архитектуру PCI DSS и политики retention.
Контроль перед сохранением и передачей
- Проверить, что извлечены только реально нужные поля.
- Не сохранять card image по умолчанию.
- Убедиться, что PAN проходит ожидаемую валидацию, если режим invalid numbers не включён намеренно.
- Разделять OCR-ошибку, liveness-fail и отмену пользователем.
- Маскировать чувствительные значения до логирования и аналитики.
- Не отправлять BlinkCardScanningResult целиком «на всякий случай».
- Проверить срок хранения результата на backend и в observability-системах.
- Для Web отдельно проверить, что domain-bound license соответствует production hostname.
Часто задаваемые вопросы
Можно ли установить BlinkCard как обычную программу на компьютер?
Нет. Актуальный BlinkCard — SDK. На desktop его реальный пользовательский сценарий — браузерная интеграция через WebAssembly. Отдельного Windows/macOS-приложения для массового сканирования карт продукт не предоставляет.
Работает ли распознавание без отправки фотографии в облако?
Да, основной OCR рассчитан на локальную обработку на устройстве или в браузере. Официальная browser demo прямо сообщает, что извлечённые данные остаются в браузере. Но интернет всё равно может требоваться для валидации лицензии, а BIN intelligence использует сетевой lookup для сведений об эмитенте и категории.
Извлекает ли BlinkCard CVV?
В автономном BlinkCard SDK v3000 — может: ExtractionSettings содержит extractCvv, а результат card account имеет поле CVV. Это отличается от Microblink Platform capability «Scan Payment Card», где документация указывает, что CVV не извлекается и не сохраняется. При проектировании важно не переносить поведение Platform на standalone SDK.
Есть ли бесплатная версия?
Постоянной бесплатной production-редакции не заявлено. После регистрации можно получить бесплатный trial license key; актуальные страницы Microblink указывают 30-дневный пробный период. Единой публичной цены для production нет, поэтому стоимость нужно уточнять у Microblink.
Можно ли использовать старый ключ v2 после миграции на v3000?
Да. Миграционная документация прямо говорит, что существующие v2 license keys совместимы с v3000. Это относится к лицензии, а не к исходному коду: API всё равно нужно мигрировать.
Поддерживается ли русский интерфейс?
Да. В v3000 Microblink расширила локализацию до 56 языков, и русский входит в опубликованный список. При собственной headless-интеграции локализацию интерфейса контролирует уже само приложение.
Подойдёт ли BlinkCard для распознавания паспортов, счетов и PDF?
Нет. Для удостоверений личности у Microblink есть BlinkID, а для общего document/PDF OCR нужны специализированные решения. BlinkCard оптимизирован именно под платёжную карту и её реквизиты.
Что происходит, если карта показана на экране телефона?
При включённой liveness-проверке SDK пытается распознать screen presentation и вернуть соответствующий check result. Это риск-сигнал, а не абсолютное доказательство мошенничества: финальное решение должно учитывать остальные данные транзакции и технические ошибки.
Вывод
Microblink BlinkCard подходит командам, которым нужно встроить в мобильное или веб-приложение распознавание платёжной карты и одновременно получить специализированные card-liveness сигналы. Его сильные стороны — структурированный результат, поддержка разных дизайнов карт, анонимизация, готовый UX и возможность уйти на низкоуровневый session API. В v3000 продукт заметно повзрослел архитектурно: старый Recognizer-подход уступил место сессиям, появились BIN intelligence и более современный мультиплатформенный стек.
Выбирать BlinkCard не стоит, если задача ограничивается просмотром PDF, общим OCR документов или простым сканированием страниц в файл. Для этих сценариев нужны отдельные document tools и просмотрщики. Не лучший это выбор и для проекта, который принципиально не может периодически выходить в сеть для проверки лицензии либо требует полностью бесплатной open-source библиотеки без коммерческого ключа.