Zum Hauptinhalt springen
Diese Versionen beziehen sich auf SDKs zur Ausweisverifizierung. Native Authentifizierungsmodule und Wrapper haben ein separates Release: siehe die Authentifizierungs-Schnellstarts.
Integrieren Sie die Didit-Verifizierung mit unseren offiziellen SDKs nativ in Ihre mobilen Anwendungen. Native SDKs bieten im Vergleich zu WebView-basierten Integrationen eine nahtlose Benutzererfahrung, bessere Leistung und vollen Zugriff auf Gerätefunktionen.

Empfohlener Ansatz: Nutzen Sie für die beste Benutzererfahrung unsere nativen SDKs anstelle einer WebView-Integration. Native SDKs übernehmen die gesamte Komplexität von Kameraberechtigungen, NFC-Lesen und Liveness-Erkennung standardmäßig.


SDK-Verfügbarkeit

Die biometrische Einwilligung erfordert das native SDK in Version 4.10.0 oder neuer. Bei Personen, die unter das Recht von Illinois, Texas oder Colorado fallen, kann Didit vor der ersten Gesichtsaufnahme eine ausdrückliche biometrische Einwilligung anfordern. Den gehosteten Ablauf (Web-SDK, WebView, Browser) sowie die nativen iOS- und Android-SDKs ab Version 4.10.0 zeigen diesen Schritt; React Native und Flutter zeigen ihn in einer Version, die auf ein natives SDK der Version 4.10.0 oder neuer festgelegt ist. Ein natives SDK unter 4.10.0 oder ein SDK, das seine Version nicht meldet, kann diesen Schritt nicht anzeigen: Seine Sitzungen laufen wie bisher, und die Entscheidung meldet biometric_consent.status: "pending" mit reason: "BIOMETRIC_CONSENT_UNSUPPORTED_SDK". Aktualisieren Sie, wenn Sie Personen in diesen Staaten verifizieren.

Neuerungen in 4.13.2

Unter iOS stürzt Ihre App nicht mehr ab, wenn ein Foto von einer Kamera angefordert wird, die sich öffnet, aber keine Videoframes liefert: Jede Fotoanfrage prüft zuerst, ob eine laufende Kamerasitzung mit aktiver Videoverbindung besteht, und der Bildschirm zeigt stattdessen seinen Kamerafehler oder die Option zum Überspringen an. Unter Android endet bei dem Selfie für die Ausweissuche eine Fotoanfrage von einer Kamera, die keine Videoframes liefert, nach 5 Sekunden mit dem Kamerafehler des Bildschirms, statt unbegrenzt zu warten. Auf dem Willkommensbildschirm erscheint, während die Schrittliste unterhalb des unteren Verlaufs weitergeht, eine runde Schaltfläche „Nach unten scrollen“, horizontal mittig auf der Liste (auch in Sprachen mit Rechts-nach-links-Schrift), wie im Web-Ablauf. Ein Tippen scrollt die Liste nach unten, und die Schaltfläche wird am Ende der Liste sowie während ein Sheet geöffnet ist ausgeblendet. Android 4.13.1 war eine Zwischenversion mit nur der Schaltfläche „Nach unten scrollen“; 4.13.2 bringt sie zu iOS, React Native und Flutter. React Native 4.13.2 behebt außerdem einen Absturz beim Start in Android-Release-Builds, die mit R8 und proguard-android-optimize.txt minifiziert werden: Das Paket enthält jetzt seine eigenen R8-Regeln. Flutter 4.13.2 lässt sich außerdem mit dem Android Gradle Plugin 9 und dem integrierten Kotlin bauen.

Neuerungen in 4.13.0

Im Schritt zur Telefonnummer zeigt jede Nummer mit +1 (USA und Kanada) unter „Code senden“ einen kurzen Hinweis des Mobilfunkanbieters („Es können Standard-Nachrichten- und Datentarife anfallen“) mit Links zu den SMS-Bedingungen und zur Datenschutzerklärung, in der Sprache der Person. Das Selfie-Oval passt auf kurzen Bildschirmen jetzt oberhalb seiner Bedienelemente. Die grüne Schaltfläche „Fertig“, der Hinweis „Verstanden“ nach einem Dokumentfoto und der Bildschirm „Selfie aufgenommen“ entfallen: Ein aufgenommenes Foto geht direkt zu „In Verarbeitung“. Wenn die Dokumentaufnahme nur als Ausweichlösung dient und eine digitale ID-Wallet vorne steht, bietet der Startbildschirm der Wallet nur die Wallet an, und ein erneuter Wallet-Versuch hält die Verifizierung ohne Dokumentlink offen. Für jede Ländervorwahl, die Didit senden kann, wird eine Flagge angezeigt, und niemals die falsche. Ein Sandbox-Szenario, das für eine bereits gestartete Sitzung aktiviert wurde, zeigt jetzt den Grund statt eines allgemeinen Fehlers. Unter Android lautet die Wallet des Credential Managers „Mit digitaler ID verifizieren“, weil Google Wallet oder jede andere Android-Wallet, die einen kompatiblen Ausweis enthält, darauf antworten kann. iOS bietet diese Methode nicht an.

Neuerungen in 4.12.2

Der Willkommensbildschirm zentriert das Logo über dem linksbündigen Titel, und iOS zeichnet das Logo des Kunden 72 pt hoch, wie Android und das Web es tun. Im Schritt „Schlüsselpersonen“ bei KYB öffnet „Vertreter hinzufügen“ mit ausgewählter Vertreterrolle und speichert die Person unter den Vertretern, auch wenn der Workflow einige Rollen deaktiviert. In Fragebögen bleibt „Gesichert durch“ auf kurzen Bildschirmen und bei großer Schrift unter der Schaltfläche fixiert, die Länderauswahl einer Adressfrage trägt eine adressbezogene Überschrift, und ein geöffnetes Dropdown übernimmt die Ecken der Felder.

Neuerungen in 4.12.1

Auf einem iPhone mit vollem Speicher behalten die Dokument- und Selfie-Aufnahmen jetzt ihr Video: Das iOS-SDK zeichnet sie im Arbeitsspeicher auf und lädt niemals eine Aufnahme ohne Videobilder hoch. Eine Serverantwort, die einer früheren Antwort hinterherhinkt, öffnet den gerade beantworteten Schritt (den NFC-, Selfie- oder Dokumentschritt) nicht mehr erneut, unter iOS und Android.

Neuerungen in 4.12.0

Wallet-Logos für jede digitale ID-Wallet, die der Web-Ablauf anzeigt (Mobile-ID, ConnectID, Finnish Trust Network, OneID, Bank iD, MojeID, FranceConnect, Auðkenni, die estnische ID-Karte und GOV.UK Wallet), auf derselben weißen oder schwarzen Fläche wie im Web. Aufnahmehinweise sagen, was zu tun ist, wenn die automatische Aufnahme nicht läuft. Der Willkommensbildschirm behält seinen rechtlichen Satz bei großen Schriftgrößen an dieser Stelle fixiert, und ein abgelehnter Sitzungsstart bietet keinen Wiederholungsversuch mehr an, der nicht funktionieren kann. Die Dokument- und Selfie-Kameras haben neben dem Auslöser eine Schaltfläche „Kamera wechseln“, „Hochladen“ wurde in die Tipps verschoben, und solange ein Sheet über der Kamera geöffnet ist, wird nichts automatisch aufgenommen. Unter Android nennt das Sheet „Kamera auswählen“ die Kameras in allen Sprachen „Frontkamera“ und „Rückkamera“.

Neuerungen in 4.11.0

Version 4.11.0 enthält außerdem alles, was für 4.10.0 geplant war; 4.10.0 wurde jedoch nie veröffentlicht. Aktualisieren Sie daher direkt von 4.9.1. Der Ablauf hat eine überarbeitete Oberfläche mit einer neuen oberen Leiste, Fortschrittsangaben in Worten und einem neu aufgebauten Willkommensbildschirm. Die automatische Dokument- und Selfie-Aufnahme ist jetzt in jeder Variante enthalten und nutzt die eigenen schlanken Detektoren von Didit, sodass die Varianten Core und AutoDetection gleich aufnehmen. Die Variante AutoDetection und das Android-Artefakt didit-sdk-autodetection sind veraltet und identisch mit Core. Das Android-Artefakt didit-sdk-autodetection-play wird nicht mehr veröffentlicht. Neue Schritte: Bankverifizierung, Standort (Opt-in über die iOS-Varianten Core-Location, NFC-Location und All-Location), E-Signatur und biometrische Einwilligung.

Neuigkeiten in 4.9.1

Die Länderauswahl für Dokumente und Adressnachweise öffnet sich auf iOS und Android jetzt mit dem Land, das anhand der IP-Adresse des Benutzers erkannt wurde, auch wenn diese Abfrage erst nach dem Erscheinen des Bildschirms abgeschlossen ist. Ein in der Sitzung festgelegtes Land oder ein vom Benutzer gewähltes Land wird niemals überschrieben. Unter Android werden die Abschnittsüberschrift und die Felder eines Fragebogens in der SDK-Sprache angezeigt, und der NFC-Scan von Reisepässen stürzt in der Vollversion nicht mehr ab. Die russischen und kirgisischen Texte der Verifizierung wurden auf beiden Plattformen verbessert.

Neuigkeiten in 4.9.0

Alle nativen und plattformübergreifenden mobilen SDKs bieten jetzt auf dem Begrüßungsbildschirm der Verifizierung eine optional aktivierbare Sprachauswahl. Setzen Sie showLanguageSelector auf true, um dieselbe kompakte, durchsuchbare Auswahl anzuzeigen, die im Web-Verifizierungsablauf verwendet wird. Die Sprachauswahl ist standardmäßig ausgeblendet, sodass bestehende Integrationen ihr bisheriges Verhalten beibehalten, bis Sie sie aktivieren.

Alternative: Wenn für Ihre Plattform noch kein natives SDK verfügbar ist, können Sie die WebView-Integration als Ausweichlösung verwenden.


Ablauf einer Verifizierungssitzung

Jedes native SDK nutzt dieselbe Didit-Verifizierungssitzung. Der Ablauf ist:
  1. Ihr Backend ruft POST /v3/session/ mit workflow_id sowie optionalem Kontext (vendor_data, contact_details, expected_details, metadata, callback) auf.
  2. Didit gibt eine session_id, ein kurzlebiges session_token und eine gehostete url zurück.
  3. Ihre mobile App erhält das session_token von Ihrem Backend und übergibt es an das SDK (startVerification(token: …)).
  4. Das native SDK öffnet die Verifizierungs-Benutzeroberfläche, der Benutzer schließt die Schritte ab und das SDK gibt ein Ergebnis mit dem finalen status der Sitzung zurück (Approved, Declined, In Review usw.).
  5. Ihr Backend empfängt die vollständige Entscheidung über einen Webhook (webhook_type: "status.updated") und speichert sie dauerhaft.
Das SDK-Ergebnis teilt Ihnen das Ergebnis des Workflows (Status) mit. Die vollständige Entscheidung – Dokumentenfelder, Übereinstimmungswerte für den Gesichtsabgleich, AML-Treffer, NFC-Daten, Warnungen – wird per Webhook an Ihren Server übermittelt und kann auch über den Endpoint Retrieve Session Decision abgerufen werden. Verlassen Sie sich bei Autorisierungsentscheidungen niemals allein auf das clientseitige Ergebnis.
Alle nativen SDKs unterstützen zudem einen UniLink-Modus (nur Workflow-ID, kein Backend erforderlich). Verwenden Sie UniLink für schnelle Prototypen und die Session-Token-Methode für die Produktion.

iOS-SDK

Einsatzbereich: native Apps mit Swift / SwiftUI / UIKit für iOS 13+. Ein schlankes, servergesteuertes iOS-SDK für die Identitätsverifizierung mit minimalem Konfigurationsaufwand.

GitHub-Repository

Quellcode und Beispiele auf GitHub ansehen
Hauptfunktionen:
  • Unterstützung für SwiftUI und UIKit
  • Auslesen von Reisepässen/Ausweisen per NFC (iOS 15+; die Varianten Core und AutoDetection ohne NFC entfernen NFC und OpenSSL und lassen sich ab iOS 13+ einsetzen)
  • Unterstützung für 54 Sprachen
  • Anpassbares UI-Theming
  • Integration über Session-Token oder Workflow-ID
Schnellstart:
→ Vollständige iOS-SDK-Dokumentation

Android-SDK

Einsatzbereich: native Apps mit Kotlin / Jetpack Compose / Java für Android 6.0 (API 23) oder höher. Ein schlankes, servergesteuertes Android-SDK für die Identitätsverifizierung mit minimalem Konfigurationsaufwand.

GitHub-Repository

Quellcode und Beispiele auf GitHub ansehen
Hauptfunktionen:
  • Unterstützung für Kotlin und Jetpack Compose
  • Auslesen von Reisepässen/Ausweisen per NFC (optionales Artefakt me.didit:didit-sdk-core entfernt NFC-Abhängigkeiten)
  • ML-basierte automatische Dokumenten- und Gesichtserkennung ab API 24+ (reibungsloser Fallback auf manuelle Erfassung bei API 23)
  • Unterstützung für 54 Sprachen
  • Anpassbares UI-Theming
  • Integration über Session-Token oder Workflow-ID
Schnellstart:
→ Vollständige Android-SDK-Dokumentation

React-Native-SDK

Einsatzbereich: Plattformübergreifende React-Native- oder Expo-Apps, die eine einheitliche TypeScript-API für iOS und Android benötigen (RN 0.76+, New Architecture). Ein plattformübergreifendes React-Native-SDK, das die nativen iOS- und Android-SDKs mit einer einheitlichen TypeScript-API kapselt.

GitHub-Repository

Quellcode und Beispiele auf GitHub ansehen
Hauptfunktionen:
  • Einheitliche TypeScript-API für iOS und Android
  • Expo-Unterstützung mit einem konfigurationsfreien Plugin (Entwicklungs-Build erforderlich – kein Expo Go)
  • Unterstützung für React Native CLI
  • Auslesen von Reisepässen/Ausweisen per NFC (deaktivierbar über DIDIT_SDK_IOS_NFC_ENABLED=false / diditSdkAndroidNfcEnabled=false)
  • Unterstützung für 54 Sprachen (übernommen von den nativen SDKs)
  • Integration über Session-Token oder Workflow-ID
Schnellstart:
→ Vollständige React-Native-SDK-Dokumentation

Flutter-SDK

Einsatzbereich: Plattformübergreifende Flutter-Apps, die eine einheitliche Dart-API für iOS und Android benötigen (Flutter 3.3+, Dart 3.11+). Ein plattformübergreifendes Flutter-SDK, das die nativen iOS- und Android-SDKs mit einer einheitlichen Dart-API kapselt.

pub.dev-Paket

Paket auf pub.dev ansehen
Hauptfunktionen:
  • Einheitliche Dart-API für iOS und Android
  • Platform-Channel-Integration mit den nativen SDKs
  • Auslesen von Reisepässen/Ausweisen per NFC (deaktivierbar über DIDIT_SDK_IOS_NFC_ENABLED=false / diditSdkAndroidNfcEnabled=false)
  • Unterstützung für 54 Sprachen (übernommen von den nativen SDKs)
  • Integration über Session-Token oder Workflow-ID
Schnellstart:
→ Vollständige Flutter-SDK-Dokumentation

Web-SDK (JavaScript)

Einsatzbereich: Browserbasierte Apps und Web-Frameworks (React, Vue, Angular, Next.js, Nuxt, Svelte, Vanilla JS). Das Web-SDK öffnet den gehosteten Verifizierungsablauf in einem Modal oder einem Inline-iframe – für mobile Apps sollten Sie die oben aufgeführten nativen SDKs bevorzugen. Ein JavaScript-SDK für Webanwendungen mit Unterstützung für React, Vue, Angular, Next.js, Nuxt, Svelte und Vanilla JS.

NPM-Paket

Paket auf npm ansehen
Hauptfunktionen:
  • Programmatische Sitzungsverwaltung und Event-Callbacks
  • Unterstützung für React, Vue, Angular, Next.js, Nuxt, Svelte und Vanilla JS
  • Vollständige TypeScript-Unterstützung
  • Modal- und Inline-Modus (eingebettet)
  • Zustandsverwaltung für individuelle Benutzeroberflächen
Schnellstart:
→ Vollständige JavaScript-SDK-Dokumentation | Alle Web-SDKs

Wahl einer Integration

Native SDKs sind die beste Wahl, wenn Sie das Auslesen von NFC-ePässen, Kameraerfassung mit minimaler Latenz und ein In-App-Erlebnis benötigen, das von Ihren übrigen nativen Bildschirmen nicht zu unterscheiden ist. Nutzen Sie die WebView-Integration als Fallback, wenn Sie kein natives SDK-Update ausrollen können (beispielsweise bei Brownfield-Apps, die Sie nicht neu kompilieren können, oder auf Plattformen ohne ein natives SDK von Didit).
Zuletzt geändert am 7. November 2026