fingerprint sub-object to an emiratesIdCard or emiratesIdManual request; the SDK then captures a print and submits it alongside the EID for the backend to match against the resident’s enrolled fingers.
Biometrics is available on the Emirates ID methods only.
passportManual has no biometric variant.The flow
- You pass a
fingerprintcontaining the sensor’sreaderId, a recommendation handler, and an optional capture timeout. - The SDK asks the backend which fingers the resident has enrolled, ranked by quality (best first). The list may be empty if the resident isn’t enrolled.
- The SDK invokes your handler with that list. You return a
FingerSelection: the recommended finger, a custom finger, or cancel. - The SDK captures that finger on the sensor and submits the EID + print together.
The recommendation handler
The handler is where you put UI — show the ranked list, let the operator pick, or auto-select. It’s an async/suspend callback in every SDK.- Kotlin
- Swift
- TypeScript
- Java
FingerSelection
Your handler returns one of:| Selection | Meaning |
|---|---|
Recommended(finger) | Capture the backend-recommended finger you picked from the list. |
Custom(finger) | Capture a specific finger you chose yourself (e.g. when the list is empty). |
Cancel() | Abort the biometric capture. |
Hardware
Fingerprint capture needs a supported sensor and, on desktop, the matching signed service installed (e.g. the Morpho service). See supported hardware and the package matrix. On Android, include the relevantservice-fingerprint-*-android AAR and wire the USB-attach intent.
