Zum Hauptinhalt springen

Übersicht

Der Bericht zur Ausweisverifizierung erfasst alles, was Didit aus einem behördlichen Ausweisdokument extrahiert und validiert hat – Reisepässe, Personalausweise, Führerscheine und Aufenthaltstitel. Er bündelt die per OCR erfassten biografischen Daten und Dokumentenfelder, signierte URLs zu den aufgenommenen Medien, analysierte und geolokalisierte Adressdaten, Bildqualitätswerte pro Seite, MRZ-Inhalte, Aufschlüsselungen nach mehreren Schriftsystemen (lateinisch / nicht-lateinisch) sowie sitzungsübergreifende Dokumentenabgleiche. Der Bericht wird erstellt, nachdem der Benutzer den Schritt zur Dokumentenerfassung in einem Workflow abgeschlossen hat (oder den Standalone-OCR-Endpoint aufruft). Didit identifiziert den Dokumenttyp, führt OCR durch, validiert die MRZ / den Barcode / den QR-Code, parst die Adresse, prüft auf Manipulationen (Bildschirmaufnahme, gedruckte Kopie, Porträtmanipulation) und gleicht das Dokument mit jedem anderen in Ihrer Anwendung erfassten Dokument ab. Jeder Bericht enthält einen eigenen status – unabhängig vom allgemeinen Sitzungsstatus –, der widerspiegelt, wie der Ausweisschritt allein abgeschlossen wurde:
  • Genehmigt – Dokument erkannt, alle erforderlichen Felder extrahiert, keine Warnung ausgelöst, die zur Ablehnung führt.
  • In Überprüfung – eine oder mehrere Warnungen wurden ausgelöst und Ihr Workflow leitet diese zur Prüfung weiter.
  • Abgelehnt – eine Bedingung zur automatischen Ablehnung wurde ausgelöst (nicht unterstütztes Dokument, abgelaufenes Dokument, fehlendes Porträt, Treffer auf der Sperrliste, Fehlschlag bei adaptiver Altersschätzung) oder es wurde eine Warnung ausgelöst, deren konfigurierte Aktion Ablehnen ist (für Mindest-/Höchstalter ist standardmäßig die Aktion „Ablehnen“ konfiguriert).
  • Abgelaufen – das expiration_date des Dokuments ist nach der Verifizierung verstrichen. Die laufende Überwachung des Ablaufdatums von Didit ändert den Bericht von Approved zu Expired, fügt eine DOCUMENT_EXPIRED-Warnung hinzu und versetzt eine genehmigte Sitzung in den Sitzungsstatus Kyc Expired.
  • Nicht abgeschlossen – der Benutzer hat den Erfassungsschritt nie abgeschlossen.

Wo er in API-Antworten erscheint

Der Ausweisbericht wird innerhalb des id_verifications[]-Arrays bereitgestellt – immer als JSON-Array, niemals als einzelnes id_verification-Objekt. Mehrere Einträge erscheinen, wenn ein Workflow mehr als einen Dokumentenschritt ausführt (beispielsweise einen primären Ausweis plus eine Folgeverifizierung).
  • Sitzungsentscheidungs-API – GET /v3/session/{sessionId}/decision/ gibt id_verifications[] auf oberster Ebene zurück. Siehe Sitzungsentscheidung abrufen.
  • Webhooks – Payloads von session.status.updated enthalten dasselbe id_verifications[]-Array, sobald der Schritt Daten geliefert hat. Siehe Webhooks.
  • Standalone-OCR-API – die direkte Dokumentenübermittlung gibt ein einzelnes id_verification-Objekt mit denselben Feldern zurück. Siehe Standalone-OCR-API.
Lesen Sie response.id_verifications[0] und iterieren Sie über das Array. Die Form als einzelnes id_verification-Objekt existiert nur in der Standalone-OCR-API – sie existiert nicht am v3-Entscheidungs-Endpoint.

Schema

Das kanonische Schema Feld für Feld befindet sich auf der Referenzseite Datenmodelle. Die folgenden Felder stammen direkt aus IDVerificationV3Serializer, der IDVerificationV2Serializer erweitert und node_id, das sitzungsübergreifende Array matches[] sowie das Silent-Capture-Array document_selfie_face_matches[] hinzufügt.

Felder der obersten Ebene

issuing_state ist immer auf Länderebene, niemals auf subnationaler Ebene. Bei jedem Dokumententyp, einschließlich Führerscheinen, die von einem Bundesstaat oder einer Provinz ausgestellt wurden (Australien, die Vereinigten Staaten, Kanada), geben issuing_state und issuing_state_name das Land an (zum Beispiel AUS / Australia), nicht den Bundesstaat. Der subnationale Wert ist, sofern das Dokument einen solchen enthält, separat in parsed_address.region verfügbar (bei einigen Dokumententypen als Fallback in extra_fields.state). Die Sitzungsübersicht der Business Console zeigt dies, falls vorhanden, als Zeile Region unterhalb von Ausstellungsstaat an.
Führerscheine mit zwei Nummern (Australien). Australische Führerscheine enthalten sowohl eine Führerscheinnummer, die die Fahrberechtigung des Inhabers identifiziert und beim Austausch einer Karte unverändert bleibt, als auch eine Kartennummer, die die physische Karte identifiziert und sich bei jeder Neuausstellung ändert. Für diese Führerscheine ordnet Didit die Nummern stets gleich zu:
  • personal_number — die Führerscheinnummer
  • document_number — die Kartennummer
Dies gilt für jeden australischen Bundesstaat und jedes Territorium (NSW, VIC, QLD, WA, SA, TAS, ACT, NT). Bei einigen Varianten ist die Kartennummer nur auf der Rückseite aufgedruckt, sodass sie nur erfasst wird, wenn die Rückseite des Führerscheins aufgenommen wird. Wenn keine Kartennummer ausgelesen werden kann, wird die Führerscheinnummer sowohl als document_number als auch als personal_number ausgegeben, sodass document_number nach Abschluss der Verifizierung immer eine Kennung enthält. personal_number ist in jedem Fall die Führerscheinnummer. Bei anderen Dokumententypen bleibt document_number die primäre per OCR erfasste Nummer und kann selbst eine Kennung auf Inhaberebene sein.
Die argentinische CUIL ist extra_fields.tax_number, niemals personal_number. Argentinische Dokumente drucken die CUIL – die 11-stellige Kennung, auf die sich AFIP, ANSES und die Auskunfteien beziehen – auf jedem Dokument an einer anderen Stelle ab, und der DNI druckt eine zweite 11-stellige Nummer daneben:
  • Auf dem Führerschein enthält personal_number die CUIL;
  • auf dem DNI enthält personal_number die número de trámite, welche den Kartenantrag identifiziert und keine Kennung des Inhabers ist. Die CUIL des DNI wird aus dem dafür vorgesehenen gedruckten Feld ausgelesen.
Daher ist personal_number für Argentinien keine verlässliche CUIL: Auf einem DNI handelt es sich um eine 11-stellige Nummer, die bei Abfragen in Registern stillschweigend kein Ergebnis liefert. Lesen Sie stattdessen extra_fields.tax_number aus. Didit gibt dieses Feld nur zurück, wenn der Wert als echte CUIL validiert wird (Personenpräfix plus Modulo-11-Prüfziffer), als kanonische Ziffernfolge ohne Trennzeichen (27111111117), unabhängig davon, welches argentinische Dokument der Inhaber vorgelegt hat. Wenn die CUIL der Karte nicht gelesen werden konnte, fehlt der Schlüssel, anstatt mit einer Nummer befüllt zu werden, die keine CUIL ist – erfassen Sie den Führerschein als zweites Dokument oder erfassen Sie die CUIL über eine Antwort auf einen Fragebogen oder die metadata der Sitzung, um diese Benutzer abzudecken.

Bildqualitäts-Scores

front_image_quality_score und back_image_quality_score geben jeweils Folgendes zurück:
Nutzen Sie overall_score als schnelle Eignungsprüfung – Werte über 70 deuten im Allgemeinen auf eine Aufnahme hin, die gut genug für eine zuverlässige Verifizierung ist.

Dokument-Liveness-Scores

document_liveness gibt an, was die Dokument-Liveness-Prüfung gemessen hat, unabhängig davon, ob eine Warnung ausgelöst wurde oder nicht. Eine Warnung existiert nur dann, wenn ein Wert einen der Schwellenwerte des Workflows unterschritten hat. Vor Einführung dieses Feldes enthielt ein genehmigtes Dokument daher keinerlei Nachweise zur Liveness-Erkennung – über dieses Feld können Sie eine erfolgreich durchlaufene Sitzung prüfen. Es ist null, wenn die Prüfung nicht ausgeführt wurde (beispielsweise bei einer Methode ohne Dokument oder bei einem in den Sitzungs-Logs erfassten Modellausfall). Es enthält ein Objekt pro Betrugsart – portrait_replace, printed_copy und screen_replay – jeweils mit:
Bei älteren Dokumenten ohne gespeicherte Bewertungsnachweise bleiben gespeicherte Werte sichtbar, aber sowohl Schwellenwerte als auch bucket sind null. Aktuelle Workflow-Einstellungen werden niemals zur Rekonstruktion eines historischen Ergebnisses herangezogen. Dasselbe gilt für eine Erfassung, deren Dokumentauswertung noch nicht abgeschlossen ist. Die Business Console zeigt dieselben drei Zeilen im Block Dokument-Liveness-Erkennung des Bereichs Ausweisverifizierung der Sitzung an.

Sitzungsübergreifende Übereinstimmungen

matches[] listet bis zu 5 andere Dokumente in Ihrer Anwendung auf, die mit diesem übereinstimmen – gleiches Geburtsdatum, gleiches Ausstellungsland und ein stark ähnlicher vollständiger Name. Dokumente auf der Sperrliste erfordern zusätzlich eine exakte Übereinstimmung der Dokumentnummer. Sitzungen desselben Benutzers (gleiche vendor_data) werden ausgeschlossen. Jeder Eintrag enthält session_id, session_number, vendor_data, verification_date, user_details (name, document_type, document_number), status, is_blocklisted (true, wenn das Dokument zu Ihrer Sperrliste hinzugefügt wurde), api_service und eine signierte front_image_url.

Statuswerte

Dokumente mit mehreren Schriftsystemen (lateinisch / nicht-lateinisch)

Einige Dokumente — kirgisische, kasachische, russische, japanische, koreanische, chinesische, arabische, thailändische und andere — drucken den Namen, die Adresse oder den Geburtsort des Inhabers sowohl in einer lateinischen Transliteration als auch im lokalen Schriftsystem ab. Sie wählen über die Workflow- (oder Standalone-API-)Einstellung preferred_characters, welches Schriftsystem die Felder der obersten Ebene befüllt: Die Werte des alternativen Schriftsystems befinden sich in extra_fields unter Schlüsseln mit Suffix: first_name_non_latin, last_name_non_latin, middle_name_non_latin, full_name_non_latin, address_non_latin, place_of_birth_non_latin (oder den entsprechenden _latin-Varianten).

Wann Felder des alternativen Schriftsystems erscheinen

  • Nur wenn tatsächlich beide Schriftsysteme auf dem Dokument vorhanden sind. Wenn ein OCR-Feld, das nominell mit „Surname-Kyrgyz (Cyrillic)“ gekennzeichnet ist, als Text in lateinischer Schrift extrahiert wird (Homoglyphen oder eine lateinische Transliteration), gilt es nicht als nicht-lateinische Alternative und dieser Schlüssel wird weggelassen.
  • full_name_non_latin (und full_name_latin) werden immer aus den einzelnen Vor-, Mittel- und Nachnamensbestandteilen rekonstruiert, wenn beide verfügbar sind — das Rohfeld „Full Name“ aus der OCR wird zur Gewährleistung der Konsistenz ignoriert.
  • Wenn preferred_characters=latin gesetzt ist, das Dokument jedoch ausschließlich nicht-lateinischen Text enthält (sodass die Felder der obersten Ebene nicht-lateinische Werte enthalten), führt Didit einen Transliterationsschritt durch und stellt first_name_latin, last_name_latin, middle_name_latin, full_name_latin, place_of_birth_latin und address_latin als lateinischen Fallback bereit.
last_name_non_latin fehlt, weil das Feld „Surname (Cyrillic)“ des Dokuments bei diesem Beispiel lateinische Zeichen zurückgegeben hat — es gab keinen echten nicht-lateinischen Nachnamen zum Extrahieren.

Beispiele

Approved — einwandfreier spanischer Personalausweis (alle Felder)

In Review — QR-Code auf einem Dokument nicht erkannt, das einen aufweisen sollte

Gekürzt — eine echte Antwort enthält immer den vollständigen Satz der oben gezeigten Felder.

Sicherheitshinweis

Die für Dokumentbilder und -videos zurückgegebenen signierten URLs sind temporär — sie laufen nach einem begrenzten Gültigkeitsfenster ab. Behandeln Sie sie als kurzlebig: Laden Sie zeitnah herunter, was Sie benötigen, und cachen oder machen Sie sie nicht öffentlich zugänglich. Typischerweise benötigt Ihre Anwendung nur status, eine Handvoll biografischer Felder und die Warnungen — speichern Sie so wenig wie möglich, um die Angriffsfläche bei einer künftigen Sicherheitsverletzung zu minimieren.

Verwandte Themen

Zuletzt geändert am 7. November 2026