Übersicht
UniLink-Iframe (kein Backend erforderlich)
Der schnellste Einstieg: Kopieren Sie einfach Ihre UniLink-URL und fügen Sie sie ein.Was Sie benötigen
- Ein Didit-Workflow (erstellt in der Didit Console)
- Ihre UniLink-URL (klicken Sie im Workflow auf Copy Link)
Implementierung
⚠️ Erforderlich: Das Attribut allow ist für den Kamerazugriff bei der Liveness-Erkennung zwingend erforderlich.
Wichtige Vorteile
- Weniger als 1 Minute Einrichtung: Kein Backend, keine API-Schlüssel
- Keine Konfiguration nötig: Die Callback-URL wird in den Workflow-Einstellungen festgelegt
- Ideal für MVPs: Sofort loslegen
API-Sitzungs-iframe (mit Backend)
Für fortgeschrittene Integrationen, die eine Anpassung pro Sitzung benötigen.Wann verwenden
- Übergeben Sie pro Sitzung eigene
vendor_dataodermetadata - Legen Sie pro Sitzung unterschiedliche Callback-URLs fest
- Verfolgen Sie Sitzungen serverseitig, bevor die Verifizierung beginnt
- Ordnen Sie Sitzungen Ihren Benutzer-IDs zu
Implementierung
Schritt 1: Sitzung erstellen (Backend) Die Antwort beim Erstellen der Sitzung enthält ein Feld namensurl. Verwenden Sie diesen Wert als src des iframes.
Auf Ereignisse lauschen (postMessage)
Die Verifizierungsseite sendet Ereignisse an das übergeordnete Fenster. Jede Nachricht hat diese Struktur:event.data.data.sessionId, nicht event.data.sessionId:
didit:ready ({ sessionId }), didit:started, didit:step_started / didit:step_completed / didit:step_changed ({ step, ... }), didit:status_updated ({ status }), didit:completed ({ sessionId, status }), didit:cancelled, didit:error ({ error, step? }), didit:close_request sowie didit:layout ({ contentHeight, colorScheme, dir }, siehe unten). Die Referenz der Ereignisse im JavaScript-SDK listet die Verifizierungsereignisse auf, die als typisierte Callbacks verfügbar sind. Ab Version 0.5.0 verarbeitet das SDK Layout-Nachrichten intern, anstatt sie an onEvent weiterzugeben.
Iframe-Größe anhand von didit:layout festlegen
Die Verifizierungsseite teilt Ihnen mit einer didit:layout-Nachricht mit, wie viel Platz sie benötigt. Sie sendet eine Nachricht beim Laden und eine weitere, sobald sich Inhaltshöhe, Design oder Textrichtung ändern:
Um
didit:layout in Ihrem eigenen iframe zu empfangen, fügen Sie sdk_presentation=embedded zur Verifizierungs-URL hinzu. Ab Version 0.5.0 legt das JavaScript-SDK die Präsentationsart für Sie fest. Ohne Präsentationsparameter verwendet die Seite ihr Standalone-Layout und sendet keine Layout-Nachrichten.colorScheme und dir, um Steuerelemente, die Sie um das iframe herum platzieren, an das Design und die Textrichtung der Seite anzupassen.
Wenn die Verbindung des Benutzers abbricht, zeigt die Seite einen Bildschirm „Keine Internetverbindung“, der sich von selbst schließt, sobald die Verbindung wieder besteht. Wählt der Benutzer dort Exit Verification, sendet die Seite didit:error mit error: "network_error" und danach didit:cancelled. Schließen Sie das iframe bei didit:cancelled.
Modal-Implementierung
Für ein ausgereiftes Modal-Erlebnis, das sich über Ihre Seite legt:HTML/CSS/JS
React-Komponente
Eine wiederverwendbare React-Komponente für die Verifizierung im Modal:Verwendung
Vue-Komponente
Konfiguration
Erforderliche Berechtigungen
Verwenden Sie diese vollständige Berechtigungsliste für Aufnahmen, Standortzugriff, Kopiervorgänge und Medienkompatibilität:
Das
allow-Attribut delegiert Berechtigungen; es überschreibt weder die Entscheidung des Benutzers noch einen strengeren Permissions-Policy-Header auf Ihrer Host-Seite.
Iframe-Größe
Der Verifizierungsablauf passt sein Layout an die Größe seines Iframes an. Dimensionieren Sie den Iframe für das Fenster, in dem er angezeigt wird:
Für den mittleren Bereich beginnen Sie mit 500px mal 700px, bis die erste
didit:layout-Nachricht eintrifft, mit derselben Höhenbegrenzung. Das Beispiel zu didit:layout wendet alle drei Größen an, einschließlich der Größen für Computer und Smartphone, bevor eine Nachricht eintrifft.
Content Security Policy (CSP)
Wenn Sie CSP verwenden, fügen Sie Didit Ihrerframe-src-Direktive hinzu:
Geräteübergreifende Verifizierung
Das InContext-Iframe unterstützt geräteübergreifende Verifizierung automatisch:- Der Benutzer startet die Verifizierung am Desktop
- Ist die Kamera nicht verfügbar, wird ein QR-Code angezeigt
- Der Benutzer scannt den QR-Code mit dem Smartphone
- Der Benutzer schließt die Verifizierung auf dem Smartphone ab
- Das Desktop-Iframe aktualisiert sich automatisch mit dem Ergebnis
Fehlerbehebung
Kamera funktioniert nicht
- Stellen Sie sicher, dass das Iframe die vollständige Berechtigungsliste enthält
- Prüfen Sie, ob Ihre Website über HTTPS ausgeliefert wird
- Vergewissern Sie sich, dass der Benutzer Kameraberechtigungen für Ihre Domain erteilt hat
- Versuchen Sie die Redirect-Methode, wenn der Kamerazugriff im Iframe fehlschlägt
Iframe wird nicht geladen
- Prüfen Sie auf Probleme mit der Content Security Policy (CSP)
- Fügen Sie
https://verify.didit.meIhrerframe-src-Direktive hinzu - Prüfen Sie die Browser-Konsole auf Fehler
postMessage wird nicht empfangen
- Prüfen Sie, ob Sie auf den richtigen Origin hören (
https://verify.didit.meoder Ihre White-Label-Domain) - Prüfen Sie, ob der Event-Listener hinzugefügt wird, bevor Sie das Iframe öffnen
- Prüfen Sie Ereignisname und Struktur: Typen haben das Präfix (
didit:completed, nichtverification_complete), und die Payload ist unterevent.data.dataverschachtelt
Beispiel-Repository
GitHub-Repository
Quellcode und Beispiele auf GitHub ansehen