github microblink/web-sdks @microblink/blinkid@7.7.0

7 hours ago

What's New

Document Support

BlinkIdScanningResult and VizResult are extended with optional fields that support new document data. The new ParentInfo type (with firstName / lastName) is exported from the result module.

Field Type Description
parentsInfo ParentInfo[] Parent first and last name (e.g. Belgium Minors ID)
effectiveDate DateResult<StringResult> Effective date of the document
husbandName StringResult Husband's name
legalStatus StringResult Legal status on the document
socialSecurityStatus StringResult Social security status
workRestriction StringResult Work restriction (e.g. USA Social Security Card)

FieldType is now an explicit string union, ensuring TypeScript types match all supported extraction fields. New literals include effectiveDate, parentsFirstName, parentsLastName, workRestriction, socialSecurityStatus, legalStatus, husbandName, chinPermanentExpiry (Chinese-script permanent expiry), and other dependent/document/vehicle/locality field types.

New documents (68)
  • Angola — Identity Card
  • Antigua and Barbuda — Paper Passport
  • Barbados — Paper Passport
  • Belize — Paper Passport
  • Benin — Driver's License
  • Benin — Polycarbonate Passport
  • Bermuda — Paper Passport
  • Bermuda — Polycarbonate Passport
  • Bhutan — Paper Passport
  • Botswana — Paper Passport
  • Brazil, Acre — Identity Card
  • Brazil, Espírito Santo — Identity Card
  • Brazil, Mato Grosso do Sul — Identity Card
  • Brazil, Paraíba — Identity Card
  • Brazil, Piauí — Identity Card
  • Brazil, Rio Grande do Norte — Identity Card
  • Brazil, Tocantins — Identity Card
  • Central African Republic — Paper Passport
  • Chad — Paper Passport
  • Chad — Polycarbonate Passport
  • Congo — Paper Passport
  • Democratic Republic of the Congo — Paper Passport
  • Djibouti — Paper Passport
  • Djibouti — Polycarbonate Passport
  • Equatorial Guinea — Paper Passport
  • Equatorial Guinea — Polycarbonate Passport
  • Eswatini — Identity Card
  • Ethiopia — Paper Passport
  • Federated States of Micronesia — Paper Passport
  • Gabon — Paper Passport
  • Gabon — Polycarbonate Passport
  • Ghana — Health Insurance Card
  • Ghana — Polycarbonate Passport
  • Ghana — Social Security Card
  • Guinea — Driver's License
  • Guinea-Bissau — Paper Passport
  • Guinea-Bissau — Polycarbonate Passport
  • India, Odisha — Driver's License
  • India, Uttarakhand — Driver's License
  • Ireland — Proof of Age Card
  • Laos — Paper Passport
  • Lesotho — Paper Passport
  • Liberia — Driver's License
  • Liberia — Social Security Card
  • Madagascar — Paper Passport
  • Malawi — Driver's License
  • Mauritania — Identity Card
  • Mauritania — Polycarbonate Passport
  • Mexico — Social Security Card
  • Mongolia — Paper Passport
  • Mongolia — Polycarbonate Passport
  • Namibia — Paper Passport
  • Niger — Paper Passport
  • Nigeria — NIN Card
  • Papua New Guinea — Paper Passport
  • Philippines — eID
  • Puerto Rico — Identity Card
  • São Tomé and Príncipe — Paper Passport
  • Saint Vincent and the Grenadines — Paper Passport
  • Seychelles — Paper Passport
  • Seychelles — Polycarbonate Passport
  • South Sudan — Polycarbonate Passport
  • Taiwan — Paper Passport
  • Togo — Gendarmerie ID
  • Togo — Military ID
  • Togo — Police ID
  • Togo — Residence Permit
  • Togo — Voter ID
  • Tonga — Paper Passport
  • Yemen — Paper Passport
New versions for existing documents (23)
  • Afghanistan — Identity Card
  • Cameroon — Identity Card
  • Chile — Driver's License
  • Colombia — Alien ID
  • Costa Rica — Identity Card
  • Malaysia — Driver's License
  • Moldova — Identity Card
  • Netherlands — Driver's License
  • Panama — Driver's License
  • South Korea — Driver's License
  • South Korea — Identity Card
  • Sweden — Driver's License
  • UK — Polycarbonate Passport
  • USA — Veteran ID
  • USA, Alaska — Identity Card
  • USA, California — Driver's License
  • USA, California — Identity Card
  • USA, North Carolina — Driver's License
  • USA, Texas — Driver's License
  • USA, Texas — Identity Card
  • USA, Texas — Weapon Permit
  • Vietnam — Driver's License
  • Zimbabwe — Identity Card
New fields on existing documents
  • EU/EEA Residence Permits (Greece, Estonia, Finland, Hungary, Ireland, Latvia, Lithuania, Norway, Romania, Slovenia, Croatia, Slovakia, Poland, Malta, Austria, Luxembourg, Netherlands, Bulgaria, Portugal, Cyprus, Sweden, Czechia, Belgium, Germany, Italy, Spain, Switzerland, Denmark): remarks, residencePermitType
  • Belgium — Minors ID: parentsInfo
  • Nicaragua — Passport: barcode
  • USA — Social Security Card: workRestriction
  • China — Identity Card: permanentExpiry (Chinese script)

SDK Improvements

createScanningSession is now the primary session API

createScanningSession(...) replaces createBlinkIdScanningSession(...) as the primary API. The old name is kept as a deprecated backward-compatible alias and will be removed in a future version.

Improved frame processing performance

ImageData buffers are now automatically transferred to the Worker rather than copied on each frame, reducing per-frame memory allocation and GC pressure. After process(...) returns, the original ImageData.data.buffer is intentionally detached and can no longer be read from the main thread.

Automatic UI state transitions after page capture

After a page is captured, the UX Manager now automatically walks through document-type-specific transition states before resuming capture:

  • Two-sided IDs: PAGE_CAPTURED → FLIP_CARD → INTRO_BACK_PAGE
  • Passports with barcode: PAGE_CAPTURED → MOVE_LAST_PAGE → INTRO_LAST_PAGE
  • Passports without barcode: rotation-dependent chains (e.g. PAGE_CAPTURED → MOVE_TOP → INTRO_TOP_PAGE)

Integrations that depend on exact UI-state timing or key sequences should account for these new intermediate states.

New destroy() method on BlinkIdUxManager

Provides explicit teardown for the UX Manager instance.

Clearer UI state introspection

rawUiStateKey is deprecated and replaced by two explicit getters:

  • uiStateKey — the stabilized, visible state key (what the feedback UI currently shows).
  • mappedUiStateKey — the latest raw candidate key from the detector before stabilization (useful for debugging).

Configurable help tooltip delays

Help tooltip timings are now configurable via FeedbackUiOptions. The legacy timeout APIs on BlinkIdUxManager are deprecated in favor of the new options.

New "result_retrieval_failed" processing error

BlinkIdProcessingError now includes "result_retrieval_failed" to surface errors that occur when retrieving the final result from the scanning session.

Camera improvements

  • Frame capture is now suppressed while the document tab is hidden; queued requests resume automatically when the tab becomes visible again.
  • Double-tap zoom on camera UI elements is prevented on mobile browsers.
  • The z-index of the camera UI overlay (when no target element is provided) is now configurable.

Accessibility improvements

Screen-reader support and ARIA semantics have been improved across the SDK's UI components, including the feedback overlay and capture dialog.

Device-specific help dialog copy

The help dialog now tailors its on-screen guidance text for desktop and mobile platforms.


Bug Fixes

  • Multi-alphabet field merging: When fields on different sides of a document had values in more than one alphabet, the merging step could silently drop one of the alphabets. Both alphabets are now returned correctly.
  • feedbackUiOptions ignored: feedbackUiOptions was being reassigned to an empty object, causing all passed configuration to be silently ignored.
  • Removed non-functional feedbackLocalization prop: The feedbackLocalization property on BlinkIdComponentOptions was a no-op and has been removed. Pass localization strings via feedbackUiOptions.localizationStrings instead.
  • Barcode extraction now optional on low-performance documents: Barcode extraction is marked as optional on documents where barcode detection has poor reliability: Cuba ID and Passport, Philippines DL, Haiti ID, Sudan ID, Egypt ID, Ecuador Passport, Ghana Passport, Iraq Passport, Nicaragua Passport, and Pakistan Passport.

Breaking Changes

BlinkIdUxManager construction replaced by async factory

The BlinkIdUxManager constructor is no longer supported. All instantiation must go through the new createBlinkIdUxManager factory, which is async and returns Promise<BlinkIdUxManager>.

Before:

const uxManager = new BlinkIdUxManager(cameraManager, scanningSession, options);

After:

const uxManager = await createBlinkIdUxManager(
  cameraManager,
  scanningSession,
  options,
);

The BlinkIdUxManager type remains exported for typing purposes.

Session deletion is now the caller's responsibility

safelyDeleteScanningSession() has been removed from BlinkIdUxManager, and the deleteSession parameter has been removed from getSessionResult(). The UX Manager no longer automatically deletes the underlying WebAssembly scanning session on your behalf.

If you create more than one BlinkIdScanningSession per SDK load, you must now explicitly call scanningSession.delete() once you are done with the session to free WebAssembly heap memory. Integrations that reuse a single session for the lifetime of the page are unaffected.

UI state key renames

Several UI state keys have been renamed. Integrations that reference state keys by name should update accordingly. Notable example: SENSING_FRONTFRONT_PAGE_NOT_IN_FRAME.

Camera dialog locale key renamed

The capture-dialog title locale key has been renamed from scan_document to dialog_title. Update any custom translation files accordingly — the translated string value can remain the same.

Don't miss a new web-sdks release

NewReleases is sending notifications on new releases.