Getting Started with Intellicheck Mobile SDK

Use the Intellicheck SDK to integrate our ID validation into your mobile app for Android or iOS. The mobile SDK makes it easy to develop the necessary pages for each step, for example:

  • Take a photo of the front to perform OCR validation.
  • Read the barcode on the back to check if it's valid.
🚧

Selfie support is not available in the mobile SDK.

Document types and risk tolerances

The mobile SDK supports multiple forms of ID, which we refer to as document types:

  • North American driver's license and other DMV-issued IDs with a 2D (PDF417 format) barcode
  • Passport booklet with machine-readable zone (MRZ) data and possibly an RFID chip
  • Passport card or other document type

Consider the amount of risk associated with each document type.

Document TypeRiskConsiderations
North American driver's license or state-issued IDLowA barcode provides highly accurate results based on our proprietary identification checks that can detect fraudulent IDs.
Passport bookletModerateA passport booklet with MRZ only is less secure than one with an RFID chip, which is tamper resistant and encrypted. We can read the chip to compare its data to the passport text and photograph.
Passport card or other document typeHighDocuments that do not include a barcode or an RFID chip can only be verified with OCR on the visual inspection zone (VIZ) and compared to data from the MRZ.

How we check an ID

When you submit a document to us for verification, you must request one or more checks:

  • Barcode verification
  • OCR inspection
  • OCR match
  • NFC authentication

Barcode verification

Barcode verification parses the barcode data and provides security checks:

  • Is the barcode format currently in circulation?
  • Is the barcode encoded correctly?
  • Does the barcode contain the correct hidden security features?
👍

Intellicheck knows the hidden security features of every North American driver license, state issued ID, and military ID due to our long-standing relationships with the issuing jurisdictions and the ID manufacturers they use. With more than two decades of experience analyzing all North American department of motor vehicle (DMV) barcodes, we created a proprietary database of every unique format currently in circulation.

OCR inspection

OCR inspection provides an analysis of the document text. On a driver's license, OCR text is taken from the front of the ID. For passports and ID cards, OCR text is taken from the visual inspection zone (VIZ). The VIZ is a section where personal information is displayed in a way that can be easily read by humans.

OCR inspection extracts the text and checks if the identity document is a recognized format.

OCR match with visual indicators

OCR match compares the OCR text with encoded text from the barcode or MRZ, which contains data formatted for optical character recognition by machines. North American DMV-issued documents are also analyzed for visual indicators:

  • Issuer logotype of the state, province, or jurisdiction
  • Real-ID star icon (or similar)
  • Organ donor heart icon (or similar)

NFC authentication

Passports that contain a radio frequency identification (RFID) chip support NFC (near-field communication) technology. The RFID chip stores personal information and biometric data, which can be read by NFC-enabled devices.

  • Passive NFC authentication verifies that the chip can be successfully read.
  • Active NFC authentication reads the chip and verifies its certificate.
  • Chip data is verified against MRZ data.
  • A photograph in the chip data is verified against the printed photo on ID.
  • A hologram on the ID can be verified if the NFC reader supports flash.

Integrate with your flow

You must decide where to put our ID capture process into your app flow.

  • The process begins with a start page instructing the user to verify an ID.
  • The allow access page requests permission to the device camera.

The capture process includes one or more of the following pages, depending on the document type and checks performed:

  • Front photo page
  • Scan barcode page
  • Back photo page
  • Acquire NFC page

The following table shows each page, and which step it is in the process for the document type and checks performed.

Document Type and ChecksFront PhotoScan BarcodeBack PhotoAcquire NFC
North American Driver's License and other DMV-issued IDs with barcode scan only
North American Driver's License and other DMV-issued IDs with barcode scan and OCR match
Passport booklet or passport card with OCR match
Passport booklet or passport card with OCR match and NFC

Example start page

Here is an example start page from the Mobile SDK sample application.

Customize your design

You can start with a sample page from the mobile SDK, and then customize design elements such as the following:

  • Primary color
  • Background color
  • Font style
  • Font color
  • Button description
  • Button dimension
  • Logo

Authenticate through your own server

Your mobile app user must first log in before verifying IDs. We make it simple. But the log-in request must go to your server. Our SDK talks to your server. Then your server applies the signature header required for requests. Direct sends a response back to your server.

👍

Our SDK talks to your server. Your server talks to Direct.

Here is a high-level overview of the process.


❗️

Your customer associate must log in to your app. This provides security against unauthorized access. Do not make your app publicly available, unless you want to get charged for everyone who downloads it and runs transactions! 🤣

Understand your results

After checks are performed, results are returned as a JSON response. There are three common response objects:

  • The barcode response object named idcheck.
  • The OCR response object named OCR.
  • The OCR match response object named ocr_match.

Each response object contains numerous details about the identity check.

Here are decisioning fields to consider for each check:

  • In the idcheck response, look for the processResult field to see if the barcode passed. A value of DocumentProcessOK means it passed, while a value of DocumentUnknown means it failed.
  • In the OCR response, look for the documentRecognized field to see if the front-side was recognized. A value of 1 means it was recognized, while a value of 0 means it was not recognized.
  • In the ocr_match response, look for the success field to see if the OCR text matched the barcode or MRZ. A true result means the text matched. A false value means the text did not match.
📘

Approval

Intellicheck provides results only. Always make your own determination regarding applicant approval.

Test your app

When you're ready to test, your code is initially deployed to our sandbox environment. After sandbox, a staging environment is available for further testing. Staging mimics a full-production environment. In staging, we limit the number of ID verifications an individual user can perform in a given time frame. Finally, we must review your app before activating your integration in production. See Security Best Practices.