Document AI in your app
NFC chip reading. Face recognition. Liveness detection. Lightweight ML models that work offline. White label available.

What's in the SDK
Ready modules for identity verification and document processing.
NFC Chip Reading
Read document chip data directly. Cryptographic verification, tamper detection, photo extraction.
Face Recognition
Match face to document photo. Works offline with on-device ML. No server calls required.
Liveness Detection
Prevent spoofing with passive and active liveness checks. Detects photos, videos, masks.
Document Capture
Real-time camera guidance for optimal document photos. Auto-crop, blur detection, lighting checks.
OCR Engine
On-device text extraction. MRZ parsing, cheque MICR reading, Arabic support, structured JSON output.
Offline ML Models
Lightweight models run entirely on device. No network required. Data never leaves the phone.
Platform Support
Native SDKs for iOS and Android. Flutter for cross-platform. Huawei HMS support included.
iOS
Android
Huawei
Flutter
Offline ML Models
Lightweight models optimized for mobile. Run entirely on device - no network calls, no data leaves the phone. Works in airplane mode.
- TensorFlow Lite and CoreML optimized
- No cloud dependency for core features
- GDPR and data residency compliant
| Model | Capability | Processing |
|---|---|---|
| Face Detection | Locate faces in camera feed | Real-time |
| Liveness Check | Detect spoofing attempts | Real-time |
| Document Classifier | Identify document type | On-device |
| MRZ Parser | Extract machine-readable zone | Instant |
| Face Comparison | Match face to document photo | On-device |
White Label
Your branding, your app. Full customization of UI components, colors, fonts, and user flows. No PaperWork branding visible to end users.
UI Customization
- Custom colors and themes
- Your logo and branding
- Custom fonts
- Localization support
Flow Control
- Custom verification steps
- Skip/require specific checks
- Custom error handling
- Callback integration
// iOS Swift
let config = PWConfig(
theme: .custom(
primary: .brandBlue,
background: .white
),
modules: [.nfc, .liveness, .ocr],
offline: true
)
PaperWork.start(config) { result in
switch result {
case .success(let data):
// Emirates ID data
case .failure(let error):
// Handle error
}
}Integration
Add to your project in minutes. Comprehensive documentation and sample apps included.
Package Managers
- CocoaPods (iOS)
- Swift Package Manager
- Gradle (Android)
- pub.dev (Flutter)
Documentation
- API reference
- Integration guides
- Sample projects
- Troubleshooting FAQ
Support
- Direct engineer support
- Integration assistance
- Code review on request