What's new
- Simplified integration & settings presets
- We've introduced an intuitive presets system to replace complex scanning flags, allowing developers to configure BlinkID for specific use cases with minimal code:
- Targeted presets: Instantly optimize the SDK for Image, Video, Standalone Barcode, or Verification workflows.
- Performance tuning: Fine-tune extraction with single-setting adjustments for quality (Balanced, High Speed, or High Accuracy) and operational environment (Stationary vs. Handheld).
- We've introduced an intuitive presets system to replace complex scanning flags, allowing developers to configure BlinkID for specific use cases with minimal code:
- Global barcode & document expansion
- Upgraded barcode & QR engine: Core scanning architecture upgrades deliver faster and more resilient recognition across 1D and 2D barcodes.
- Expanded document support: Added dedicated barcode and QR parsing for Argentina DNI and Philippines IDs.
Bug fixes
- Passport card scanning flow: Fixed an issue where the scanning workflow would occasionally skip the back side of passport cards.
- Single image mode cropping: Resolved edge cases in single image mode where document crop detection could fail or return inaccurate bounds.
- Centenarian date logic: Solved two-digit birth-year rollover edge cases in MRZ and date parsing, ensuring precise age calculation for individuals aged 100+.
New documents support
- Bahrain - Vehicle Ownership Certificate
- British Virgin Islands - DL
- British Virgin Islands - Passport
- British Virgin Islands - Rigid Passport
- China - DL
- Colombia - Consular ID
- Congo - ID
- Dominican Republic - Consular ID
- Dominican Republic - Residence Permit
- Ethiopia - Rigid Passport
- Fiji - Passport
- Honduras - Consular ID
- Hong Kong - DL
- Iraq - DL
- Iraq - Vehicle Registration
- Jordan - Rigid Passport
- Kazakhstan - DL
- Liechtenstein - Passport
- Liechtenstein - Rigid Passport
- Moldova - Resident ID
- Namibia - DL
- Niger - DL
- Northern Mariana Islands - DL
- Somalia - ID
- Suriname - Rigid Passport
- Syria - DL
- Syria - Resident ID
- Tajikistan - DL
- UAE - Golden Card
- Yemen - ID
New document versions for supported documents
- China - DL
- Colombia - Passport
- Dominican Republic - DL
- Gambia - Passport
- Japan - Residence Permit
- Kyrgyzstan - DL
- Kyrgyzstan - ID
- Moldova - DL
- Moldova - Rigid Passport
- Paraguay - DL
- Tajikistan - Rigid Passport
- USA, Montana - DL
- USA, Montana - ID
- USA, Nebraska - DL
- USA, Nebraska - ID
- USA, Oklahoma - DL
- USA, Oklahoma - ID
- Virgin Islands of the United States - DL
- Virgin Islands of the United States - ID
New extracted fields from documents
documentAdditionalNumberreplaced bycardAccessNumber:- Austria - ID
- Austria - Residence Permit
- Austria - Rigid Passport
- Austria - Rigid Refugee Passport
- Bulgaria - ID
- Cameroon - Rigid Passport
- Costa Rica - Rigid Passport
- Croatia - ID
- Croatia - Residence Permit
- Cyprus - Residence Permit
- Czechia - ID
- Czechia - Residence Permit
- Denmark - Residence Permit
- Dominican Republic - ID
- Ecuador - ID
- Ecuador - Passport
- Estonia - ID
- Estonia - Residence Permit
- Finland - Alien ID
- Finland - ID
- Finland - Residence Permit
- Finland - Rigid Passport
- France - ID
- Gambia - ID
- Georgia - ID
- Georgia - Residence Permit
- Georgia - Rigid Passport
- Germany - ID
- Germany - eID
- Germany - Residence Permit
- Greece - ID
- Greece - Residence Permit
- Haiti - Passport
- Hungary - Residence Permit
- Iceland - Passport
- Ireland - Residence Permit
- Italy - Residence Permit
- Ivory Coast - ID
- Kosovo - ID
- Kosovo - Passport
- Latvia - Alien ID
- Latvia - ID
- Latvia - Residence Permit
- Liechtenstein - ID
- Lithuania - ID
- Lithuania - Residence Permit
- Luxembourg - ID
- Luxembourg - Residence Permit
- Luxembourg - Rigid Passport
- Malta - ID
- Malta - Residence Permit
- Moldova - ID
- Montenegro - ID
- Montenegro - Rigid Passport
- Namibia - Passport
- Netherlands - ID
- Netherlands - Residence Permit
- Netherlands - Rigid Passport
- Norway - ID
- Norway - Residence Permit
- Norway - Rigid Passport
- Peru - Minors ID
- Poland - ID
- Poland - Residence Permit
- Portugal - ID
- Portugal - Residence Permit
- Romania - ID
- Slovakia - ID
- Slovakia - Residence Permit
- Slovenia - Residence Permit
- Spain - ID
- Spain - Passport
- Sweden - ID
- Sweden - Residence Permit
- Sweden - Social Security Card
- Switzerland - Residence Permit
- Uganda - Passport
documentOptionalAdditionalNumberreplaced bycardAccessNumber:- Bulgaria - Residence Permit
- France - Residence Permit
- Italy - ID
- Peru - ID
- Spain - Residence Permit
documentAdditionalNumberreplaced bypassportNumber:- Zambia - Residence Permit
- Added
parentInfosupport:- Brazil - Alien ID
- Brazil - DL
- Brazil - Passport
- Added support for extracting Cyrillic
firstName,lastName,nationality, andsex:- Kyrgyzstan - ID
API changes
Breaking changes
CountryId.virginIslandsBritishhas been renamed toCountryId.britishVirginIslands.
Additive changes
- New preset factories on
BlinkIdSessionSettingsthat return a fully configuredBlinkIdSessionSettings:documentVideo(_ useCase: DocumentVideoUseCase = DocumentVideoUseCase()): live document scanning from a camera stream.documentPhoto(_ useCase: DocumentPhotoUseCase = DocumentPhotoUseCase()): document scanning from a single photo or gallery image; setsinputImageSourcetoPhoto.standaloneBarcode(): standalone barcode scanning without document detection; barcodes are searched for directly in the frame.verifyCapture(): BlinkID Verify live capture; enables face image extraction, input and barcode image return, and disables result aggregation.
let sessionSettings = BlinkIdSessionSettings.documentVideo(
DocumentVideoUseCase(
scenario = .mrzMandatory,
quality = .highAccuracy,
captureEnvironment = .stationary
)
)-
New use case structs:
DocumentVideoUseCase:scenario(DocumentScenario, default.general),quality(VideoQualityProfile, defaultbalanced),captureEnvironment(VideoCaptureEnvironment, default.handHeld)DocumentPhotoUseCase:scenario(DocumentScenario, default.general),quality(PhotoQualityProfile, default.balanced)
-
New enums:
DocumentScenariogeneral: default module topology for general ID scanningmrzMandatory: automatic scan with mandatory MRZ presence; VIZ and barcode modules remain enabledmrzOnly: MRZ extraction only; VIZ and barcode modules disabled; single-side scan with mandatory MRZ presencebarcodeOnly: barcode extraction from a detected document; VIZ and MRZ modules disabled; single-side scan with mandatory barcode presence; document detection stays enabled (unlikestandaloneBarcode())
VideoQualityProfilebalancedhighSpeed: selects the fastest acceptable frame and lowers sensitivity level for blur/glare/tilthighAccuracy: raises quality thresholds, requires a face image, and disables multi-frame aggregationpermissive: lowers quality thresholds and disables blur/glare/tilt/lighting rejection
VideoCaptureEnvironmenthandHeld: default hand-held mobile camera capturestationary: allows the document to reach the frame edge
PhotoQualityProfilebalancedhighAccuracy: raises quality thresholds and requires face image extractionpermissive: lowers quality thresholds and disables rejection and VIZ character validation
-
vehicleNumber,passportNumber, andtrafficParticipantNumberadded toBlinkIdScanningResultandVizResult. -
vehicleNumber,passportNumber, andtrafficParticipantNumberadded toFieldType. -
specifiedResidenceCard,goldenCard,vehicleOwnershipCertificate, andbyIdCardadded toDocumentTypeId. -
northernIrelandadded toRegionId.
Other platform features
- Passport-only extraction mode: new
passportOnlyflag inBlinkIDAnalyzer. It accepts only passport booklets and guides the user to the data page with dedicated onboarding, help screens, and scanning instructions. Passport help/onboarding strings can be customized inLocalizable.xcstrings