Selfie Biometric Capture
📸 Selfie Capture – Overview in Ditto ID Identity Verification (IDV)
🧭 Purpose
The selfie capture step in Ditto ID’s IDV flow ensures that the person submitting the document is the actual document holder. It enables biometric face matching and liveness detection, fulfilling compliance and security needs for:
- KYC (Know Your Customer)
- AML (Anti-Money Laundering)
- Account activation or re-verification
🧠 Key Features
- Liveness Detection: Confirms user is physically present
- Face Match Scoring: Matches selfie with document photo
- Front/Back Camera Toggle: Configurable through API
- Anti-Spoofing: Detects masks, photos, or replays
- Secure Flow: Fully handled inside SDK for tamper-resistance
👨💻 Developer Responsibilities
- Listen to
getIDVSelfieProcessStartConfirmation - Show a UI with:
- Instructional text: “Ensure good lighting and a clear face view”
- A “Start” button
- Call
setIDVSelfieProcessStartConfirmationupon user action - Handle post-capture events or errors
🔄 Workflow (Step-by-Step)
- ✅ User completes document verification
- 🔔 SDK triggers
getIDVSelfieProcessStartConfirmation - 🖼️ App shows a screen with instructions to prepare for selfie capture
- 👤 User taps "Start"
- 📤 App calls
setIDVSelfieProcessStartConfirmation(true, useBackCamera, workflow) - 📷 SDK launches selfie camera and captures the selfie
- 🧾 SDK triggers
getIDVSelfieConfirmation - 🖼️ App displays the captured selfie to the user
- 👆 User taps:
- ✅ "Confirm" ➝ App calls
setIDVSelfieConfirmation(true, workflow, challengeMode) - 🔁 "Retake" ➝ App calls
setIDVSelfieConfirmation(false, workflow, challengeMode)
- ✅ "Confirm" ➝ App calls
- 🔄 If confirmed: SDK proceeds to the next step in the IDV workflow
- 🔁 If rejected: SDK re-launches selfie capture and returns to step 6
flowchart TD
Start([Start]) -->|✅ User completes document verification| B[🔔 SDK triggers getIDVSelfieProcessStartConfirmation]
B --> C[🖼️ App shows selfie prep screen]
C -->|👤 User taps Start| E[📤 App calls setIDVSelfieProcessStartConfirmation]
E --> F[📷 SDK launches selfie camera and captures selfie]
F --> G[🧾 SDK triggers getIDVSelfieConfirmation]
G --> H[🖼️ App displays captured selfie to user with match result]
H -->|👆 User choice| J[📤 App calls setIDVSelfieConfirmation]
J -->|Continue| L[🔄 SDK proceeds to next step in IDV workflow]
J -->|Rescan Document| M[SDK calls getIDVDocumentScanProcessStartConfirmation]
J -->|Rescan Selfie| E
style B fill:#d4fdd4,stroke:#228b22,stroke-width:2px
style G fill:#d4fdd4,stroke:#228b22,stroke-width:2px
style M fill:#d4fdd4,stroke:#228b22,stroke-width:2px
style E fill:#ffe4b3,stroke:#ff8c00,stroke-width:2px
style J fill:#ffe4b3,stroke:#ff8c00,stroke-width:2px
🟩 Green - Callbacks issued by Ditto ID SDK
🟧 Orange - APIs invoked by the Client App
