Releases: BlinkID/blinkid-android
v5.14.0
Back side support added:
- Thailand - ID Card
Changes to BlinkID(Combined) Recognizer
- Added new result members -
fathersName
andmothersName
both in BlinkID and BlinkIDCombined Recognizers, as well as in VIZ result
Improvements
- We can now extract
fathersName
andmothersName
from Mexico Voter ID Card - Australian Driving Licenses for New South Wales, Northern Territory, Queensland, Victoria and Western Australia now have the driver license unique card number field extracted as
document_additional_number
Changes to BarcodeRecognizer
- We’ve removed support for
aztec
anddataMatrix
barcode formats from BarcodeRecognizer
Changes to MRTDRecognizer
- Added
MRTD_TYPE_BORDER_CROSSING_CARD
to MrtdDocumentType enum
Fixes
- Fixed rare NullPointerException that happened only on some devices, caused by a lifecycle issue where the camera error callback was called after the view has already been destroyed
Minor breaking API change
- We've changed how
RecognizerRunner
processes images. Now it can treatImage
objects as either video frame or photo frame. Until now, Direct API always processed images as photo frames, that not giving ability to recognizers to use time-redundant information for yield better recognition quality.
v5.13.0
New additions to our supported document list
We’ve added 61 new documents:
Europe
- Austria - Paper Passport
- Belarus - Paper Passport
- Belgium - Paper Passport (beta)
- Bulgaria - Paper Passport
- Estonia - Paper Passport
- France - Paper Passport (beta)
- Georgia - Paper Passport (beta)
- Germany - Paper Passport
- Greece - Paper Passport
- Hungary- Paper Passport
- Italy - Paper Passport (beta)
- Kosovo - Paper Passport
- Moldova - Paper Passport (beta)
- Poland - Paper Passport
- Portugal - Paper Passport
- Spain - Paper Passport
- Switzerland - Paper Passport
- UK - Paper Passport
Middle East and Africa
- Algeria - Paper Passport (beta)
- Egypt - Paper Passport (beta)
- Eswatini - Paper Passport
- Ghana - Paper Passport
- Iran - Paper Passport (beta)
- Iraq - Paper Passport (beta)
- Israel - Paper Passport (beta)
- Jordan - Paper Passport (beta)
- Kenya - Polycarbonate Passport
- Libya - Polycarbonate Passport (beta)
- Morocco - Paper Passport (beta)
- Nigeria - Paper Passport
- Nigeria - Polycarbonate Passport (beta)
- Qatar - ID Card (front only, beta)
- Saudi Arabia - Paper Passport
- Syria - Paper Passport
- Tanzania - ID Card (beta)
- Tanzania - Voter ID (front only, beta)
- Tunisia - Paper Passport
- Turkey - Paper Passport
- Zimbabwe - Paper Passport
Latin America and the Caribbean
- Argentina - Paper Passport
- Brazil - Paper Passport (beta)
- Guatemala - Paper Passport
- Haiti - Paper Passport
- Honduras - Paper Passport (beta)
- Mexico - Paper Passport (beta)
- Mexico - Nayarit - Driving Licence (beta)
Asia
- Bangladesh - Paper Passport
- China - Paper Passport (beta)
- India - Paper Passport
- Indonesia - Paper Passport
- Japan - Paper Passport
- Nepal - Paper Passport
- Pakistan - Paper Passport
- Philippines - Paper Passport
- South Korea - Paper Passport (beta)
- Sri Lanka - Paper Passport
- Uzbekistan - Paper Passport
Oceania
- Australia - Paper Passport
Northern America
- Canada - Paper Passport
- Canada - Weapon Permit (front only, beta)
- USA - Paper Passport (beta)
Back side support added:
- Greece - ID Card
- Burkina Faso - ID Card
- Democratic Republic of the Congo - Driving Licence
- Mexico - Veracruz - Driving Licence
- Canada - Citizenship Certificate
No longer BETA:
- Belarus - Driving Licence
- UK - Polycarbonate Passport
- Argentina - Alien ID
- Bahamas - Driving Licence
- Mexico - Durango - Driving Licence
- Venezuela - ID Card
- USA - Kansas - ID Card
Changes to BlinkID(Combined) Recognizer
- We’ve renamed the Swaziland country to Eswatini in results and ClassInfo
- Improved result validation
FieldIdentificationFailed
processing status is used to indicate if unexpected fields are present on the document. Those fields are then deleted from the result
- We are filling out COUNTRY and REGION fields in ClassInfo, without the field TYPE of document, when using BarcodeID mode for scanning documents where the Front side is not supported, and back side results are extracted from AAMVA compliant barcodes
- This applies only if
ClassInfo
isn’t already prepopulated in some other way and when you’re not inFullRecognition
mode
- This applies only if
Improvements
- We can now extract the date of birth from the document number on the South Korean identity card and from the personal identification number on the driving licence
Anonymization
- We’ve added anonymization support for new documents:
- Document number on Germany paper bio-data page Passport
- Document number on South Korea Identity Card
- Personal identification number on South Korea driving licence
- Personal identification number on South Korea paper bio-data page Passport
Fixes
We’ve fixed camera issues for the following devices:
- Motorola Moto G100 - Camera 2 API wasn’t working
- Realme X50 5G - Problem with Camera 2 API in legacy mode
- LG K4 - Camera 2 API wasn’t working
- Galaxy Tab Active 2 - Aspect ratio was broken
v5.12.0
We've added 15 new documents to our list of supported documents:
Europe
- North Macedonia - Polycarbonate Passport
Middle East and Africa
- Botswana - ID Card
- Sudan - Polycarbonate Passport
Mexico
- Baja California Sur - Driving License (beta)
- Campeche - Driving License (beta)
- Colima - Driving License (beta)
Oceania
- Australia - Health Insurance Card (front only, beta)
Asia
- Azerbaijan - Polycarbonate Passport (beta)
- Tajikistan - Polycarbonate Passport (beta)
Northern America
- Canada - Citizenship Certificate (front only, beta)
- Canada - Ontario - Health Insurance Card (front only)
- Canada - Quebec - Health Insurance Card (front only, beta)
- USA - Military ID Card
- USA - Rhode Island - ID Card
- USA - South Carolina - ID Card
Back side support added:
- Ireland - Passport Card
- Mexico - Puebla - Driving License
- Singapore - S PASS
No longer BETA:
- Finland - Polycarbonate Passport
- Ireland - Passport Card
- Ireland - Polycarbonate Passport
- Kosovo - Driving License
- Latvia - Polycarbonate Alien Passport
- Latvia - Polycarbonate Passport
- Poland - Polycarbonate Passport
- Cameroon - ID Card
- Ghana - ID Card
- Iraq - ID Card
- Tanzania - Driving License
- Turkey - Polycarbonate Passport
- Uganda - Driving License
- Bolivia - Minors ID
- Chile - Driving License
- Ecuador - Driving License
- Haiti - Driving License
- India - Karnataka - Driving License
- India - Maharashtra - Driving License
- Pakistan - Punjab - Driving License
- USA - Global Entry Card
- USA - New Mexico - ID Card
- USA - Wisconsin - ID Card
Changes to BlinkID(Combined) Recognizer
- We've added the parameter
maxAllowedMismatchesPerField
to settings. When this is set to a non-zero value, DataMatch will be successful as long as the number of mismatched characters doesn't exceed the specified value. - We've added the parameter
allowUncertainFrontSideScan
to settings. When this parameter is set to true, the Recognizer will proceed scanning the back side of the document even if the front side scanning resultState
isUncertain
. - We've enabled the return of image and back side data results, even when the
State
isUncertain
. Keep in mind that returned images, in this case, might be blurry or low quality.- This applies to all image types: full document image, face and signature image.
- We've added two separate fields for the processing status in the Recognizer Result:
frontProcessingStatus
andbackProcessingStatus
. They indicate the status of the last recognition process for each side.
Improvements
-
We added support for the Malaysian NRIC numbers that hold an asterisk (*) character.
-
While using
FullRecognitionMode
for scanning unsupported Passports, we are now extractingClassInfo
from MRZ -
Improved quality of fully cropped vertical images
-
Better parsing of Bermuda Driving License AAMVA-compliant barcode dates
-
Fix for correct calculation of check digit for Saudi Arabia ID Card MRZ
-
We are splitting first and last name from the additional name information (e.g., Nom d’ usage, Epouse, Geb. etc.) into two different results. The additional name info will be a part of the
name_additional_info
field. This applies to the following documents:- France
- ID Card
- Residence Permit
- Germany
- ID Card
- Luxembourg
- ID Card
- Netherlands
- Driving License
- Polycarbonate Passport
- France
-
We are removing title prefixes (e.g., Mrs., Mr., Ing., etc.) from
full_name
,first_name
andlast_name
for these documents:- Austria
- Driving License
- ID Card
- Czechia
- Driving License
- Germany
- ID Card
- Thailand
- ID Card
- UK
- Driving License
- Austria
Anonymization
- We've added anonymization for new documents:
- Document number on Germany Polycarbonate Passport
- Document number on Hong Kong Polycarbonate Passport
- Document number and personal ID number on Singapore Polycarbonate Passport
Breaking change
To optimize our scanning process, we decided to remove support for processors which don't have VFPv4 support because it blocked us from implementing those optimizations.
This affects only a small number of older devices with armeabi_v7 CPUs. Those devices are rarely used.
v5.11.0
Newly supported identity documents:
We’ve added 98 new documents:
Europe
- Albania - Driver Card (front only)
- Albania - Professional Driver License (front only)
- Belarus - Driver License (front only, beta)
- Belgium - Minors ID (beta)
- Czechia - Residence Permit
- Finland - Alien ID
- Finland - Residence Permit (beta)
- Georgia - Driver License (front only)
- Greece - Residence Permit
- Ireland - Passport Card (beta)
- Ireland - Public Services Card (beta)
- Kosovo - Driver License (front only, beta)
- Latvia - Alien ID
- Luxembourg - ID Card
- Moldova - ID Card (beta)
- North Macedonia - Driver License (front only)
- North Macedonia - ID Card
- Poland - Passport (beta)
- Slovenia - Residence Permit (beta)
- Spain - Alien ID
- UK - Passport (beta)
Middle East and Africa
- Algeria - Driver License
- Burkina Faso - ID Card (front only)
- Cameroon - ID Card (beta)
- Democratic Republic Of The Congo - Driver License (front only, beta)
- Egypt - Driver License (beta)
- Ghana - ID Card (beta)
- Iraq - ID Card (beta)
- Ivory Coast - Driver License (front only, beta)
- Ivory Coast - ID Card
- Lebanon - ID Card (beta)
- Morocco - Driver License
- Mozambique - Driver License (front only, beta)
- Oman - Driver License (beta)
- Rwanda - ID Card (front only)
- Senegal - ID Card
- Tanzania - Driver License (front only, beta)
- Tunisia - Driver License (front only)
- Uganda - Driver License (front only, beta)
Latin America & the Caribbean
- Argentina - Alien ID (beta)
- Bahamas - ID Card (front only, beta)
- Bolivia - Minors ID (beta)
- Jamaica - Driver License
- Mexico - Residence Permit (beta)
- Mexico - Chiapas - Driver License (front only)
- Mexico - Coahuila - Driver License (beta)
- Mexico - Durango - Driver License(front only, beta)
- Mexico - Guerrero-cocula - Driver License (beta)
- Mexico - Guerrero-juchitan - Driver License (beta)
- Mexico - Guerrero-tepecoacuilco - Driver License (front only, beta)
- Mexico - Guerrero-tlacoapa - Driver License (front only, beta)
- Mexico - Hidalgo - Driver License
- Mexico - Mexico - Driver License (beta)
- Mexico - Morelos - Driver License (front only)
- Mexico - Oaxaca - Driver License
- Mexico - Puebla - Driver License (front only, beta)
- Mexico - San Luis Potosi - Driver License (front only)
- Mexico - Sinaloa - Driver License (front only, beta)
- Mexico - Sonora - Driver License (beta)
- Mexico - Tabasco - Driver License (beta)
- Mexico - Yucatan - Driver License (beta)
- Mexico - Zacatecas - Driver License (beta)
- Panama - Temporary Residence Permit (beta)
- Peru - Minors ID (beta)
- Trinidad And Tobago - Driver License (front only, beta)
- Trinidad And Tobago - ID Card
Oceania
- Australia - South Australia - Proof Of Age Card (front only, beta)
Asia
- Armenia - ID Card
- Bangladesh - Driver License (beta)
- Cambodia - Driver License (front only, beta)
- India - Gujarat - Driving Licence (front only, beta)
- India - Karnataka - Driving Licence (front only, beta)
- India - Kerala - Driving Licence (beta)
- India - Madhya Pradesh - Driving Licence (front only, beta)
- India - Maharashtra - Driving Licence (front only, beta)
- India - Punjab - Driving Licence (front only, beta)
- India - Tamil Nadu - Driving Licence (beta)
- Kyrgyzstan - ID Card
- Malaysia - Mypolis (beta)
- Malaysia - Refugee ID (front only)
- Myanmar - Driver License (beta)
- Pakistan - Punjab - Driving Licence (front only, beta)
- Sri Lanka - Driving Licence (front only)
- Thailand - Alien ID (front only)
- Thailand - Driver License (beta)
- Uzbekistan - Driver License (front only, beta)
Northern America
- Canada - Tribal ID (beta)
- Canada - Nova Scotia - ID Card (beta)
- Canada - Saskatchewan - ID Card (beta)
- USA - Border Crossing Card (front only)
- USA - Global Entry Card (beta)
- USA - Nexus Card (beta)
- USA - Veteran ID (front only)
- USA - Work Permit
- USA - Mississippi - ID Card (beta)
- USA - Montana - ID Card
- USA - New Mexico - ID Card (beta)
- USA - Wisconsin - ID Card (beta)
Back side support added:
- Hungary - Residence Permit
- Luxembourg - Residence Permit (no longer beta)
- Mauritius - ID Card
- Colombia - Alien ID (no longer beta)
- Mexico - Baja California - Driver License
- Mexico - Chihuahua - Driver License
- Mexico - Guanajuato - Driver License
- Mexico - Michoacan - Driver License
- Malaysia - MyKid
- Malaysia - MyPR
No longer beta:
- Albania - Passport
- Malta - Residence Permit
- Switzerland - Residence Permit
- Bolivia - Driver License
- Chile - Passport
- El Salvador - ID Card
- Peru - ID Card
- Singapore - S Pass (front only)
Changes to the BlinkId(Combined)Recognizer
-
You can now retrieve an image of the document owner along with cropped images of the document itself whenever you’re scanning an AAMVA-compliant ID:
- Using
BarcodeId
as aRecognitionMode
lets you scan US driver licenses and IDs that BlinkID can’t read from the Visual Inspection Zone (VIZ) alone. Use it to extract:- A face image from the front side
- Barcode data from the back side
- Cropped document images of both sides
- You can disable this
RecognitionMode
by settingenableBarcodeId
tofalse
in theRecognitionModeFilter
.
- Using
-
We've improved data extraction through the MRZ:
- We now allow standard M/F values for gender on Mexican documents (along with localized H/M values)
-
We're now converting dates to the Gregorian calendar for:
- Taiwan documents with Republic of China (ROC) calendar dates
- Saudi documents with Islamic calendar dates
-
We're now auto-filling all ‘partial’ dates found on identity documents (showing year or month-year only):
- Date of issue will be converted to the first day of the (first) month
- E.g. '1999' will be converted to '01.01.1999.'
- E.g. '03.1999.' will be converted to '01.03.1999.'
- Date of expiry will be converted to the last day of the (last) month
- E.g. '1999' will be converted to '31.12.1999.'
- E.g. '03.1999.' will be converted to '31.03.1999.'
- Date of issue will be converted to the first day of the (first) month
v5.10.0
Improvements
-
Newly supported identity documents
- Saudi Arabia - DL (front)
- Saudi Arabia - Resident ID (front)
-
We've introduced another variant of
resetRecognitionState
method that lets you reset the scanning process in different recognition stages: -
If you’re using our Direct API, call
RecognizerRunner.resetRecognitionState(false)
to clear the scanning cache as well as results gathered in a specific recognition step, i.e. after scanning the back side of a document. -
If you’re using our built-in UI to scan IDs from the camera stream, call
RecognizerRunnerView.resetRecognitionState(false)
to do the same.
Changes to the BlinkId(Combined)Recognizer:
- We're now able to extract the additional address on Hungary Address Cards
- We've improved data extraction through the MRZ:
- We now return the document type through
ClassInfo
, regardless of theRecognitionMode
you're using (MrzId
,MrzPassport
orMrzVisa
). - This means you can now use
ClassFilter
to filter these documents by their type. - We now return the document number on Nigeria IDs complete with its check digit.
- We now support Italy Residence Permits with a CR document code.
- We now return the document type through
- We've extended the
ClassInfo
structure with helper methods so you can filter documents by country more easily:- Use
countryName
,isoNumericCountryCode
,isoAlpha2CountryCode
andisoAlpha3CountryCode
to get the full country names or their representative codes defined by ISO.
- Use
- We've extended the
BarcodeResult
structure withextendedElements
- You can find all data from AAMVA-compliant barcodes under their respective
BarcodeElementKey
in theBarcodeElements
structure - For a full list of keys please see
BarcodeElementKey
enum
- You can find all data from AAMVA-compliant barcodes under their respective
- We've added another
ProcessingStatus
calledAwaitingOtherSide
- This status is triggered once BlinkID has finished with the first side of a document and expects the other side, too.
- We're now able to extract the date of birth from the CURP field on Mexico Voter IDs
- Direct API:
- We've added a new recognition mode for recognizing still images of documents that have already been cropped:
- Set the
scanCroppedDocumentImage
to true when you're feeding BlinkID images of documents that have already been cropped and don't require detection. - Keep in mind that this setting won't work on document images that haven't been properly cropped.
- Set the
- We've added a new recognition mode for recognizing still images of documents that have already been cropped:
Changes to the IdBarcodeRecognizer:
- We've extended the results with
extendedElements
- You can find all data from AAMVA-compliant barcodes under their respective
BarcodeElementKey
in theBarcodeElements
structure - For a full list of keys please see
BarcodeElementKey
enum
- You can find all data from AAMVA-compliant barcodes under their respective
Deprecated recognizers:
- We've deprecated
UsdlRecognizer
. Please useIdBarcodeRecognizer
instead.
Minor API changes
- We've replaced
Using time-limited license!
warning withUsing trial license!
warning. The warning message is displayed when using a trial license key. To disable it, useMicroblinkSDK.setShowTrialLicenseWarning(false)
. - We’ve renamed
MrtdDocumentType.MRTD_TYPE_IDENITY_CARD
enum member toMrtdDocumentType.MRTD_TYPE_IDENTITY_CARD
.
Fixes:
- We've fixed the front-facing camera error on
Oukitel WP8 Pro
. - We've fixed a rare crash in
BlinkIdOverlayController
, which happened as a result of rapidly launching the scanning process multiple times in a row.
v5.9.0
New features:
- We’ve updated SDK's Android target API level to 30.
- We’ve translated the complete SDK to the Serbian language.
- We’ve made the SDK safe from tapjacking, a form of attack where a user is tricked into tapping something he or she didn’t intend to tap. We did this by adding a new security option that prompts the SDK to discard touches when the activity's window is obscured by another visible window. To activate it, use
UISettings.setFilterTouchesWhenObscured(true)
. - We’ve added a new feedback message to users, reminding them to keep a document fully visible in case they accidentally cover a part of it with their finger or an object.
- It appears while scanning the document by using
BlinkIdUISettings
andBlinkIdOverlayController
: - It will display an error message "Keep the document fully visible".
- This message is displayed only when using
BlinkIdRecognizer
orBlinkIdCombinedRecognizer
for scanning.
- It appears while scanning the document by using
- We’ve introduced a new
FrameRecognitionCallback
callback for theRecognizerRunnerView
, which is invoked each time a camera frame from a video stream is recognized. UseRecognizerRunnerView.setFrameRecognitionCallback
method to set the callback.
Newly supported identity documents
-
53 documents added:
- ALBANIA - DL (front)
- BELGIUM - RESIDENCE PERMIT (front, back)
- BOLIVIA - ID (front, back)
- BOSNIA AND HERZEGOVINA - PASSPORT
- CAMBODIA - PASSPORT
- CANADA - RESIDENCE PERMIT (front, back)
- CANADA - MANITOBA - ID (front)
- CANADA - ONTARIO - HEALTH INSURANCE CARD (front)
- CHILE - ALIEN ID (front, back)
- CHINA - ID (front, back)
- COLOMBIA - MINORS ID (front, back)
- CYPRUS - RESIDENCE PERMIT (front, back)
- CZECHIA - PASSPORT
- GREECE - ID (front)
- HAITI - ID (front, back)
- ITALY - RESIDENCE PERMIT (front, back)
- LATVIA - DL (front)
- LATVIA - PASSPORT
- LITHUANIA - PASSPORT
- LUXEMBOURG - DL (front)
- MONTENEGRO - DL (front)
- MONTENEGRO - ID (front, back)
- MONTENEGRO - PASSPORT
- NETHERLANDS - RESIDENCE PERMIT (front, back)
- NICARAGUA - ID (front, back)
- NIGERIA - ID (front, back)
- NORWAY - RESIDENCE PERMIT (front, back)
- OMAN - RESIDENT ID (front, back)
- PARAGUAY - DL (front, back)
- PERU - DL (front, back)
- PHILIPPINES - SOCIAL SECURITY CARD (front)
- ROMANIA - PASSPORT
- RUSSIA - PASSPORT
- SERBIA - PASSPORT
- SLOVAKIA - PASSPORT
- SLOVENIA - PASSPORT
- SOUTH KOREA - DL (front)
- SPAIN - RESIDENCE PERMIT (front, back)
- SWEDEN - RESIDENCE PERMIT (front, back)
- THAILAND - PASSPORT
- UKRAINE - DL (front)
- UKRAINE - PASSPORT
- USA - ARKANSAS - ID (front, back)
- USA - CONNECTICUT - ID (front, back)
- USA - GREEN CARD (front, back)
- USA - MARYLAND - ID (front, back)
- USA - MINNESOTA - ID (front, back)
- USA - NEVADA - ID (front, back)
- USA - NEW YORK CITY - ID (front, back)
- USA - TEXAS - WEAPON PERMIT (front)
- USA - VIRGINIA - ID (front, back)
- VENEZUELA - DL (front)
- VENEZUELA - PASSPORT
-
Beta support added for 46 documents:
- ALBANIA - PASSPORT
- BAHAMAS - DL (front)
- BERMUDA - DL (front)
- BOLIVIA - DL (front)
- CHILE - DL (front)
- COLOMBIA - ALIEN ID (front)
- DENMARK - RESIDENCE PERMIT (front, back)
- DOMINICAN REPUBLIC - DL (front, back)
- ECUADOR - DL (front)
- EL SALVADOR - DL (front, back)
- ESTONIA - RESIDENCE PERMIT (front, back)
- GUATEMALA - DL (front, back)
- HAITI - DL (front)
- HONDURAS - DL (front, back)
- HONDURAS - ID (front, back)
- HUNGARY - ADDRESS CARD (front, back)
- HUNGARY - RESIDENCE PERMIT (front)
- ICELAND - DL (front)
- ISRAEL - ID (front, back)
- JAPAN - DL (front)
- JORDAN - DL (front)
- LATVIA - ALIEN PASSPORT
- LATVIA - RESIDENCE PERMIT (front, back)
- LUXEMBOURG - RESIDENCE PERMIT (front)
- MALTA - RESIDENCE PERMIT (front, back)
- MEXICO - BAJA CALIFORNIA - DL (front)
- MEXICO - CHIHUAHUA - DL (front)
- MEXICO - CIUDAD DE MEXICO - DL (front)
- MEXICO - PROFESSIONAL DL (front)
- MEXICO - GUANAJUATO - DL (front)
- MEXICO - MICHOACAN - DL (front)
- MEXICO - TAMAULIPAS - DL (front, back)
- MEXICO - VERACRUZ - DL (front, back)
- PHILIPPINES - TAX ID (front)
- PHILIPPINES - VOTER ID (front)
- POLAND - RESIDENCE PERMIT (front, back)
- PORTUGAL - RESIDENCE PERMIT (front, back)
- PUERTO RICO - VOTER ID (front)
- SLOVAKIA - RESIDENCE PERMIT (front, back)
- SOUTH KOREA - ID (front)
- SWITZERLAND - RESIDENCE PERMIT (front, back)
- TAIWAN - TEMPORARY RESIDENCE PERMIT (front)
- TURKEY - RESIDENCE PERMIT (front)
- USA - KANSAS - ID (front, back)
- VENEZUELA - ID (front)
- VIETNAM - DL (front)
-
Added back side support for 7 documents:
- ARGENTINA - ID
- ECUADOR - ID
- FINLAND - ID
- NIGERIA - DL
- QATAR - RESIDENCE PERMIT
- URUGUAY - ID
- USA - NEW YORK - DL
-
9 documents are no longer beta:
- BRAZIL - DL
- CANADA - ALBERTA - ID
- MALAYSIA - MyKAS
- MEXICO - NUEVO LEON - DL
- PANAMA - DL
- PORTUGAL - DL
- SAUDI ARABIA - ID
- SRI LANKA - ID
- USA - IDAHO - ID
New features and updates to the BlinkIdRecognizer
and BlinkIdCombinedRecognizer
- We’re now able to read partial MRZ formats (2.5 lines), like the ones found on Switzerland and Liechtenstein DLs.
- We’ve added
documentOptionalAdditionalNumber
to the main part of the result, as well as front and back side VIZ results. - We’ve expanded the set of possible recognizer states with
StageValid
. This state fixesBlinkIDCombinedRecognizer
timeout issues, and enables better control of the Combined scanning pipeline. It activates when the first side of a document has been successfully scanned and scanning of the second side is required.
Fixes
- We’ve fixed an uncommon bug where you’d get incomplete results upon scanning of the MRZ with the
allowUnparsed
setting enabled. - SDK does not require permission
android.permission.ACCESS_NETWORK_STATE
to unlock itself anymore, in cases when the license key needs online activation.
v5.8.0
New features:
- We added user feedback when turning ON the flashlight on
BlinkIdOverlayController
:- It warns the user to watch out for flashlight glare.
- It can be disabled by using
BlinkIdUISettings.setShowFlashlightWarning(false)
option.
New additions to our supported documents list
Plastic page passports
We added support for scanning the visual inspection zone - VIZ includes everything except MRZ or barcode. Keep in mind that BlinkID scans and extracts data only from the VIZ that is on the first plastic page found in the passport list below:
- Chile Passport (BETA)
- Colombia Passport
- Croatia Passport
- Denmark Passport
- Finland Passport (BETA)
- Germany Passport
- Hong Kong Passport (BETA)
- Ireland Passport (BETA)
- Malaysia Passport
- Netherlands Passport
- New Zealand Passport
- Norway Passport
- Singapore Passport
- South Africa Passport
- Sweden Passport
- Turkey Passport (BETA)
If you need to scan the MRZ only, you can always set the "MRZ Passport" recognition mode.
Vertical US documents
- California ID
- Illinois ID
- New York ID
- North Carolina ID
- Texas ID
Other documents
- Canada Newfoundland and Labrador DL
- Croatia Residence Permit (BETA)
- Guatemala Consular ID
- Malaysia MyKAS (BETA)
- Mexico Jalisco DL / front side only
- Mexico Nuevo Leon DL (BETA)
- Peru ID (BETA)
- Singapore S Pass (BETA)
- Uruguay ID / front side only
- USA Missouri ID
- USA Texas ID
European DLs with a single line MRZ
BlinkID extracts data from driver’s licenses that contain single line MRZ:
- Croatia DL
- Estonia DL
- France DL
- Ireland DL
- Netherlands DL
- Slovakia DL
Back side supported on:
- Azerbaijan ID
- Singapore DL
- Singapore Employment Pass
No longer BETA
- Slovakia DL
New features and updates in BlinkId(Combined)Recognizer
-
We added
signatureImage
to the result. Extract signature image from the documents below:- Australia Victoria DL
- Austria ID
- Austria DL
- Brunei Military ID
- Colombia ID
- Croatia ID (on 2013 and 2015 versions)
- Cyrus ID
- Czechia ID (on the 2012 version)
- Germany ID (2010 version)
- Germany DL (2013 version)
- Indonesia ID
- Ireland DL
- Italy DL
- Mexico Voter ID
- New Zealand DL
- Slovenia ID
- Spain DL
- Sweden DL
- Switzerland ID
- UAE ID
- UAE Resident ID
-
We enabled extraction of the date of birth from the NRIC from Malaysian documents:
- MyKad
- MyKas
- MyKid
- MyPR
- MyTentera
-
We added anonymization support for:
- MRZ (OPT2 containing the ID number) on China Mainland Travel Permit Hong Kong
- MRZ (Document number) on Germany Alien Passport
- Document number, MRZ (Document number) on Germany ID
- MRZ (Document number) on Germany Minors Passport
- MRZ (Document number) on Germany Passport
- Document number on Hong Kong ID
- MRZ (Document number, OPT1 containing the passport or ID number) on Hong Kong Passport
- Personal ID number on Netherlands DL
- Personal ID number, MRZ (OPT1 containing the BSN) on Netherlands ID
- MRZ (OPT1 containing the BSN) on Netherlands Passport
- Document number on Singapore DL
- Personal ID number on Singapore Employment Pass
- Document number on Singapore FIN Card
- Document number on Singapore ID
- MRZ (Document number, OPT1 containing the NRIC) on Singapore Passport
- Document number on Singapore Resident ID
- Document number on Singapore S Pass
- Personal ID number on Singapore Work Permit
- MRZ (OPT1 containing the resident registration number) on South Korea Diplomatic Passport
- MRZ (OPT1 containing the resident registration number) on South Korea Passport
- MRZ (OPT1 containing the resident registration number) on South Korea Residence Passport
- MRZ (OPT1 containing the resident registration number) on South Korea Service Passport
- MRZ (OPT1 containing the resident registration number) on South Korea Temporary Passport
-
We improved MRZ data extraction on:
- Russia Passport
Other features and updates
- We added the field
middleName
toBlinkId(Combined)Recognizer
,IdBarcodeRecognizer
andUsdl(Combined)Recognizer
results. This field is extracted from AAMVA standard compliant barcodes, whenever available.
Deprecated recognizers
We have deprecated the following recognizers:
-
PassportRecognizer
,VisaRecognizer
- useBlinkIdCombinedRecognizer
orBlinkIdRecognizer
instead -
DocumentFaceRecognizer
,MrtdRecognizer
- useBlinkIdRecognizer
instead -
MrtdCombinedRecognizer
- useBlinkIdCombinedRecognizer
instead -
UsdlRecognizer
- useIdBarcodeRecognizer
instead
Major API change
ScanResultListener
interface now has an additional method called when the scanning cannot continue because of an unrecoverable error. You have to implement onUnrecoverableError
method.
If you’re using built-in activities, when onActivityResult
is called with RESULT_CANCELED
result code, the exception will be available via ActivityRunner.EXTRA_SCAN_EXCEPTION
intent extra. If the user canceled the scan, the exception would be null
.
Fixes
- We improved the data match logic for Guatemala Consular ID in BlinkId(Combined)Recognizer.
- We fixed race conditions in camera management, which in some cases caused that the camera was unable to resume after it has been paused.
v5.7.0
New features
- We translated complete SDK to the following additional languages: Malay, Dutch, Hungarian, Slovenian, Indonesian, Arabic(UAE), Romanian, Chinese traditional, Chinese simplified, Thai, Hebrew, Vietnamese, Filipino.
Improvements to existing features:
- We have improved parsing of MRZ formats deviating from the ISO/IEC 7501 standard:
- Document discriminator was in place of the document number on driver licenses and IDs from:
- New York
- Michigan
- Canada
- Different check digit calculation for Mexico (Consular) ID
- Recognition of the unofficial
XCT
country code for Northern Cyprus ID - Recognition of different country codes and check digit calculation on China Mainland Travel Permit for Hong Kong and Macao Residents
- Document discriminator was in place of the document number on driver licenses and IDs from:
- We added anonymization support for:
- MRZ on the Mainland Travel Permit for Hong Kong and Macao Residents
- We have made some changes to the BlinkID(Combined)Recognizer
- You can now see
ProcessingStatus
in the results to inspect potential processing errors, such as when barcode detection fails, a mandatory field is missing, etc. - You can now also see a more detailed
ImageAnalysisResult
showing you when:- Face image is detected
- MRZ is detected
- Barcode is detected
- We added a
RecognitionModeFilter
settings group. You can toggle flags on this object to control the recognition mode of the recognizer:enableMrzId
lets you scan MRZ on all identity documents except visas and passports.enableMrzVisa
lets you scan MRZ on visa documents.enableMrzPassport
lets you scan MRZ on passports.enablePhotoId
lets you scan photo IDs. Use it to enable or disable document and face image extraction on unsupported documents.enableFullRecognition
lets you scan all data from our supported documents.- Your license key still controls which of the above recognition modes are allowed.
- We have added a
RecognitionMode
result member describing which recognition mode was used to produce the results. - We are now retrieving sex and nationality fields from the MRZ in cases where those two fields cannot be found in the document’s VIZ. Previously, we only used to do this for dates, name fields and document numbers.
- We are now preserving the original string (raw data) of the dates we couldn’t parse.
- You can now see
- We have improved the thresholds for card detection feedback messages ("move closer" and "move farther"). This will improve the UX when scanning in landscape mode as the document can now be closer to the camera.
Minor API Changes
- We have made some changes to the
BlinkIDRecognizer
andBlinkIDCombinedRecognizer
:- We renamed
DocumentImageMoireStatus
toImageAnalysisDetectionStatus
- We grouped the
conditions
member from the results with theDriverLicenseDetailedInfo
structure
- We renamed
- We renamed
RecogitionMode
toRecognitionDebugMode
inRecognizerBundle
.
Bug fixes:
- We fixed an issue in default UI that was causing reticle to reappear while card flip animation was showing.
- We fixed an issue that was causing some methods marked with
@NonNull
to returnnull
.
v5.6.0
New features:
-
In
BlinkIdCombinedRecognizer
andBlinkIdRecognizer
we added:- Support for US documents with vertical orientations:
- Alabama DL
- Arizona DL
- California DL
- Colorado DL
- Connecticut DL
- Georgia DL
- Illinois DL
- Iowa DL
- Kansas DL
- Kentucky DL
- Maryland DL
- Massachusetts DL
- Minnesota DL
- Missouri DL
- New Jersey DL
- Ohio DL
- Pennsylvania DL
- South Carolina DL
- Tennessee DL
- Texas DL
- Utah DL
- Washington DL
- Wisconsin DL
- Support for new document types:
- Croatia Health Insurance Card / front side / BETA
- Ecuador ID / front side
- El Salvador ID / BETA
- Sri Lanka ID / BETA
- No longer BETA:
- Canada Nova Scotia DL
- Canada Yukon DL
- Norway DL
- Back side support:
- Kenya ID
- Result anonymization - with this option enabled, results are not returned for protected fields on documents listed here. The full document image will also have this data blacked out.
- Protected fields are:
- Document number on Hong Kong ID
- MRZ on Hong Kong passports
- Personal ID number on Netherlands DL
- Personal ID number and MRZ on Netherlands ID
- MRZ on Netherlands passports
- Document number on Singapore DL, ID, Fin Card, Resident ID
- Personal ID number on Singapore Employment Pass
- Document number and personal ID number on Singapore Work Permit
- MRZ on Singapore passports.
- By using
setAnonymizationMode
method, you can choose theAnonymizationMode
:ImageOnly
,ResultFieldsOnly
,FullResult
orNone
. FullResult
anonymization (both images and data) is set by default.
- Protected fields are:
- Support for US documents with vertical orientations:
-
We added support for new MRZ formats:
- Guatemala ID
- Kenya ID
Improvements to existing features:
- We updated
UsdlRecognizer.Result
andIdBarcodeRecognizer.Result
with additional address fields:street
,postalCode
,city
andjurisdiction
- We added
isExpired()
method toBlinkIdRecognizer.Result
,BlinkIdCombinedRecognizer.Result
andIdBarcodeRecognizer.Result
.- It compares the current time on the device with the date of expiry and checks whether the document has expired or not.
- We made changes to the result structure of
BlinkIdCombinedRecognizer
andBlinkIdRecognizer
:- Barcode data is now encapsulated in its own result structure:
BarcodeResult
. - Data from all OCR-ed fields, without MRZ data, is now encapsulated in a
VizResult
structure, representing the "Visual Inspection Zone" data. InBlinkIdCombinedRecognizer
, front side data is available in its own structure (frontVizResult
), back side data in its own (backVizResult
), so you can now access data from each side separately. - The main part of the result, outside these structures, is filled according to these rules:
- Document number is filled with data from the MRZ, if present.
- Remaining data is then filled with barcode data.
- Remaining data is filled from the back side's visual inspection zone (OCR data outside of MRZ).
- Remaining data is filled from the front side's visual inspection zone.
- Remaining data is filled with data from the MRZ.
- Barcode data is now encapsulated in its own result structure:
Minor API changes:
- We moved
BlinkIdRecognizer.Result
memberscolorStatus
andmoireStatus
to the result'simageAnalysisResult
(frontImageAnalysisResult
andbackImageAnalysisResult
inBlinkIDCombinedRecognizer.Result
). - We changed default
IntentDataTransferMode
toIntentDataTransferMode.PERSISTED_OPTIMISED
. It can be configured by usingMicroblinkSDK.setIntentDataTransferMode
.
Bug fixes:
- We fixed US driver's license address extraction (Oregon, Mississippi, Rhode Island).
- We fixed a bug which caused that, in some cases, camera has not been resumed after the device screen was turned OFF and back ON.
v5.5.0
New features:
- In
BlinkIdCombinedRecognizer
andBlinkIdRecognizer
we added:-
Support for obtaining full document image for IDs with barcodes. Now you can capture document image and extract barcode data with a single scan.
-
Scanning & data extraction for travel visas and passports.
-
Field validation - we validate if the results from certain fields match predefined character sets.
- If validation fails, the recognizer's state isRecognizer.Result.State.Uncertain
.
- UsesetValidateResultCharacters()
to enable or disable validation. -
Field anonymization for sensitive data.
- Enable or disable whether certain sensitive data should be anonymized in full document image result.
- UsesetAnonymizeImage()
to enable or disable image anonymization. -
Support for new document types:
- Australia New South Wales - ID Card / Front only / BETA
- Brazil - Driver License / BETA
- Brunei - Military ID / BETA
- Brunei - Residence Permit / BETA
- Brunei - Temporary Residence Permit / BETA
- Ghana - Driver License / Front only
- Latvia - ID Card
- Norway - Driving Licence / Front only / BETA
- Oman - ID Card
- Saudi Arabia - ID Card / BETA
- Sweden - Social Security Card / Front only
- USA - Social Security Card / BETA
- Back side supported:
- Malaysia - MyTentera
-
No longer BETA:
- Australia Tasmania - Driving Licence
- Canada British Columbia - ID Card
- Germany - Residence Permit
- Morocco - ID Card
- Nigeria - Voter ID
- Singapore - Work Permit
- USA Alaska - ID Card
- USA District Of Columbia - Driver License
- USA Indiana - ID Card
- USA Kentucky - ID Card
-
Barcode scanning on the following documents:
- Argentina ID
- Colombia ID
- Nigeria Voter ID
- South Africa ID
-
Improvements for existing features:
- Improvements in
BlinkIdCombinedRecognizer
andBlinkIdRecognizer
:- Documents discarded with the class filter are now reported as not supported
ClassifierCallback.onDocumentSupportStatus(false)
will be called if a documents is filtered out by theClassFilter
- For Malaysian MyKad we are now returning if a Moire pattern is present on the scanned document (detected or not detected).
- use
getDocumentImageMoireStatus()
inBlinkIdRecognizer
. - use
getDocumentFrontImageMoireStatus()
andgetDocumentBackImageMoireStatus()
inBlinkIdCombinedRecognizer
.
- use
- Documents discarded with the class filter are now reported as not supported
- We added digital signature support to
PassportRecognizer
. - We updated
IdBarcodeRecognizer.Result
with specific driving license info.- Use
getRestrictions()
,getEndorsements()
andgetVehicleClass()
.
- Use
- We enabled usage of combined recognizers through the Direct API:
- Recognition state is not automatically reset with every image that comes to the recognition through the Direct API. If reset is required, you should call
RecognizerRunner.resetRecognitionState()
- Recognition state is not automatically reset with every image that comes to the recognition through the Direct API. If reset is required, you should call