Getting Started with Intellicheck Mobile SDK
Use the Intellicheck mobile SDK to integrate our ID validation into your mobile app for Android or iOS. The mobile SDK provides the necessary components for each verification step, for example:
- Take a photo of the front to perform OCR validation.
- Read the PDF417 barcode on the back to check if it's valid.
Selfie support is not available in the mobile SDK.
Platform requirements
The mobile SDK supports:
- Android: Android 8.0 (API level 26) or higher
- iOS: iOS 13.0 or higher
Device requirements:
- Camera for document capture
- NFC capability for passport RFID chip reading (optional, device-dependent)
Document types and risk considerations
The mobile SDK supports multiple identity document types:
- North American driver's license — DMV-issued IDs with a 2D (PDF417 format) barcode
- Passport booklet — Contains machine-readable zone (MRZ) data and RFID chip
- Passport card — US-issued travel document with front and back
Consider the risk level associated with each document type when determining your verification workflow.
| Document Type | Risk | Considerations |
|---|---|---|
| North American driver's license or state-issued ID | Low | A PDF417 barcode provides highly accurate results based on our proprietary identification checks that can detect fraudulent IDs. |
| Passport | Low/Moderate | The RFID chip is tamper-resistant and encrypted. We read the chip to compare its data against the passport text and photograph. Fallback to MRZ-only verification is available if RFID fails. |
| Passport card | Moderate | Passport cards do not include a barcode or RFID chip. Verification relies on OCR from the visual inspection zone (VIZ) compared to MRZ data from the back. |
How we verify an ID
When you submit a document to us for verification, you can request one or more of the following checks:
- Barcode verification — Validates PDF417 barcode data
- OCR inspection — Extracts and analyzes text from the document
- OCR match — Compares OCR text with barcode or MRZ data
- NFC authentication — Reads and validates RFID chip data (passports only)
Barcode verification
Barcode verification parses the PDF417 barcode data and performs security checks:
- Is the barcode format currently in circulation?
- Is the barcode encoded correctly?
- Does the barcode contain the correct hidden security features?
Our expertise: Intellicheck knows the hidden security features of every North American driver's 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 analyzes text on the document:
- Driver's license: Text is extracted from the front of the ID.
- Passports and ID cards: Text is extracted from the visual inspection zone (VIZ), where personal information is displayed in human-readable format.
OCR inspection extracts the text and verifies that the document follows a recognized format.
OCR match with visual indicators
OCR match compares the OCR-extracted text with encoded data from the barcode or MRZ. For North American DMV-issued documents, we also analyze for visual indicators:
- State, province, or jurisdiction issuer logotype
- REAL ID compliant star icon
- Organ donor heart icon
Discrepancies between OCR text and encoded data may indicate tampering or forgery.
NFC authentication
Passports booklets contain an RFID chip that stores encrypted personal information and biometric data. NFC-enabled devices can read this chip to perform additional verification:
- Passive authentication: Verifies that the chip can be successfully read.
- Active authentication: Reads the chip and verifies its digital certificate.
- Data verification: Compares chip data against MRZ data.
- Photo verification: Compares the photograph stored on the chip with the printed photo on ID.
- Hologram verification: Validates security holograms using the device's flash (when supported).
Integrate with your workflow
Determine where to integr8te the ID capture process into your app. A typical integration includes:
- Start page — Instructs the user to begin ID verification.
- Camera permission page — Requests access to the device camera.
Document capture pages
The specific pages required depend on the document type and verification checks.
| Document Type | Checks Performed | Front Photo | Scan Barcode | Back Photo | NFC Chip |
|---|---|---|---|---|---|
| North American driver's license | Barcode only | ✅ | |||
| North American driver's license | Barcode + OCR match | ✅ | ✅ | ||
| Passport booklet | OCR inspection | ✅ | |||
| Passport booklet | OCR match + NFC | ✅ | ✅ | ||
| Passport card | OCR match | ✅ | ✅ |
Example: Document Verification page
The mobile SDK includes a sample application that demonstrates the verification workflow. The start page allows users to select their document type.
Customize the UI
The mobile SDK provides customizable design elements:
- Colors: Primary color, background color, button colors
- Typography: Font family, font color, font size
- Components: Button labels, button dimensions, corner radius
- Branding: Organization logo
Refer to Integrating Mobile SDK for iOS and Integrating Mobile SDK for Android for detailed customization options.
Authentication architecture
Your mobile app must authenticate users before performing ID verification. The mobile SDK uses a secure authentication flow:
- Log in — Your app user authenticates through your authentication system. Your app initializes the mobile SDK with credentials.
- Verification — Your server communicates with the Direct API using secure, signed requests.
- Results — Verification results are returned to your app.
Security model: The mobile SDK handles API authentication automatically using your provided credentials. Your server credentials should be stored securely and never hardcoded in your mobile app.
Architecture diagram
Important: Implement proper user authentication in your app to prevent unauthorized access. Do not distribute your API credentials publicly or embed them directly in your mobile application code.
Understand verification results
After verification checks are performed, results are returned as a JSON response. The response contains one or more of these objects depending on the checks performed:
idcheck— Barcode verification resultsOCR— OCR inspection resultsocr_match— OCR comparison results
Key decision fields
Use these fields to determine verification success:
| Check Type | Response Object | Decision Field | Pass Value | Fail Value |
|---|---|---|---|---|
| Barcode | idcheck | processResult | DocumentProcessOK | DocumentUnknown |
| OCR Inspection | OCR | documentRecognized | 1 | 0 |
| OCR Match | ocr_match | success | true | false |
Example decision logic
{
"idcheck": {
"processResult": "DocumentProcessOK" // ✅ Barcode passed
},
"OCR": {
"documentRecognized": 1 // ✅ Document recognized
},
"ocr_match": {
"success": true // ✅ OCR matched barcode data
}
}
Approval decisions: Intellicheck provides verification results only. Your application should make the final determination regarding user approval based on your business requirements and risk tolerance.
Test your integration
Follow this testing progression to ensure your integration works correctly.
1. Development
- Use the mobile SDK sample application to understand the integration pattern.
- Implement the verification flow in your app.
- Test with sample IDs.
2. Sandbox environment
- Deploy your initial integration to our sandbox environment.
- Test all document types and verification workflows.
- Validate error handling and edge cases.
3. Staging environment
- Test in our staging environment, which mirrors production.
- Perform user acceptance testing (UAT).
-
Note: Staging limits the number of verifications per user to prevent abuse.
4. Production review
- Complete our security review checklist.
- Provide a demo of your integration.
- Address any security or implementation concerns.
See Security Best Practices for detailed requirements before deploying to production.
Next steps
- Integrating Mobile SDK for iOS — Integrate the mobile SDK for iOS.
- Integrating Mobile SDK for Android — Integrate the mobile SDK for Android.
- Get Results — Detailed API documentation for results.
- Recipes — Explore working code examples.
- Troubleshooting — Common issues and solutions.
Updated 7 days ago
