Documentation / Cross-platform apps
Package: @mrzscanner/capacitor, for Capacitor 8 (Swift Package Manager and CocoaPods).
Needs: Capacitor 8, Android 7.0 (API 24) or later, iOS 15 or later. The plugin has no web platform; for the browser, see WebAssembly.
Install
npm install @mrzscanner/capacitor
npx cap sync
iOS: add a camera usage text to ios/App/App/Info.plist:
<key>NSCameraUsageDescription</key>
<string>Scans the MRZ of passports and ID cards.</string>
Use
import { MRZScanner } from '@mrzscanner/capacitor';
await MRZScanner.registerLicense('MRZ2...'); // once; without it some fields are masked
const result = await MRZScanner.scan({ documentTypes: ['passport', 'id'] });
if (result.status === 'read') {
const read = result.reads[0];
console.log(read.text, read.fields.document_number, read.checkDigitsValid);
}
const fromPhoto = await MRZScanner.scanImage({ base64: jpegBase64 }); // or { path }
scan(settings) opens the camera (asking for the permission). See Scan settings and Scan results. The types ship with the package.
Updated Oct 24, 2026 ยท Questions? Ask us