> ## Documentation Index
> Fetch the complete documentation index at: https://docs.didit.me/llms.txt
> Use this file to discover all available pages before exploring further.

# Ausweisverifizierung: Warnungen & Fehlercodes

> Alle Warnungen des Didit-Ausweisverifizierungsmoduls: Ablehnungsauslöser, Risikogruppen, Manipulationscodes sowie Ursachen und Behebung.

## Übersicht

Warnungen im Bericht zur Ausweisverifizierung kennzeichnen jeden Zustand, den Didit beim Lesen und Validieren des Dokuments festgestellt hat. Sie werden im Array `warnings[]` jedes Eintrags von `id_verifications[]` aufgeführt (siehe [Bericht zur Ausweisverifizierung](https://docs.didit.me/de/core-technology/id-verification/report-id-verification.md)), mit der in [Datenmodelle — Warnungsobjekt](https://docs.didit.me/de/reference/data-models.md#warnungsobjekt) beschriebenen Struktur: `feature`, `risk`, `additional_data`, `log_type`, `short_description`, `long_description`, `node_id`.

Jede Warnung besteht aus drei Ebenen:

1. **Der `risk`-Code** – eine stabile Kennung, die Sie in Ihrem Code abgleichen können.
2. **Der `log_type`** – abgeleitet von der Aktion, die Ihre Konfiguration dem Risiko zum Auswertungszeitpunkt zuweist: **Ablehnen → `error`**, **Überprüfung → `warning`**, alles andere → `information`.
3. **Die Auswirkung auf die Entscheidung** – festgelegt durch die konfigurierbaren Risikogruppen des Workflows. Derselbe `risk`-Code kann abhängig von der Konfiguration Ihrer Anwendung zu **Genehmigen**, **Überprüfung** oder **Ablehnen** führen.

## Bedingungen für die automatische Ablehnung

In Workflows führen die folgenden Risiken immer dazu, dass der Ausweisbericht (und die Sitzung) auf `Declined` gesetzt wird. Sie können nicht konfiguriert werden:

| Risiko | Auslöser |
| - | - |
| `DOCUMENT_NOT_SUPPORTED_FOR_APPLICATION` | Der eingereichte Dokumenttyp ist nicht in der Liste zulässiger Dokumente Ihrer Anwendung enthalten. `additional_data` enthält `issuing_state`, `document_type`, `document_subtype`, `document_region` und `document_region_with_subtype`, sodass Sie das genaue Dokument in Ihrem Workflow aktivieren können. |
| `DOCUMENT_EXPIRED` | Das Ablaufdatum des Dokuments war zum Erfassungszeitpunkt bereits überschritten. |
| `PORTRAIT_IMAGE_NOT_DETECTED` | Auf dem Dokument konnte kein Porträtfoto gefunden werden. |
| `ID_DOCUMENT_IN_BLOCKLIST` | Das Dokument stimmt mit einem Eintrag auf der Sperrliste Ihrer Anwendung überein. |
| `FRONT_CAMERA_FACE_IN_BLOCKLIST` | Das Selfie, das die Frontkamera während der Dokumenterfassung aufgenommen hat, stimmt mit einem Gesicht auf Ihrer Gesichtssperrliste überein. |
| `AGE_BELOW_MINIMUM` | Nur bei adaptiven Workflows zur Altersverifizierung: Das ermittelte Alter liegt unter dem Mindestalter. |
| `AGE_NOT_DETECTED` | Nur bei adaptiven Workflows zur Altersverifizierung: Das Alter konnte nicht aus dem Dokument extrahiert werden. |

Für die **eigenständige OCR-API** umfasst die Gruppe der bedingungslosen Ablehnungen `DOCUMENT_EXPIRED`, `MINIMUM_AGE_NOT_MET`, `PORTRAIT_IMAGE_NOT_DETECTED`, `SCREEN_CAPTURE_DETECTED`, `PRINTED_COPY_DETECTED`, `PORTRAIT_MANIPULATION_DETECTED` und `PUBLIC_DOCUMENT_IMAGE_DETECTED`. In Workflows ist das Mindestalter konfigurierbar (Standard: Ablehnen) und die drei Risiken der Dokument-Liveness sind schwellenwertbasiert (siehe unten).

Die konfigurierbaren Risiken dieser API akzeptieren als Anfrageparameter `DECLINE` oder `NO_ACTION` anstelle eines Überprüfungsergebnisses. Das einzige Überprüfungsergebnis, das sie zurückgeben kann, ist nicht konfigurierbar: Wenn eine angeforderte Dokument-Liveness-Prüfung keinen verwertbaren Wert liefert, lautet die Antwort `In Review` mit einer `DOCUMENT_LIVENESS_NOT_COMPUTED`-Warnung (siehe [Dokument-Liveness](#dokumenten-liveness-manipulation)).

| Anfrageparameter | Risiken | Standard |
| - | - | - |
| `invalid_mrz_action` | `MRZ_VALIDATION_FAILED`, `MRZ_NOT_DETECTED` | `DECLINE` |
| `inconsistent_data_action` | `DATA_INCONSISTENT`, `MRZ_AND_DATA_EXTRACTED_FROM_OCR_NOT_SAME`, `DOCUMENT_NAME_DIFFERENT_FROM_OTHER_APPROVED_DOCUMENTS` | `DECLINE` |
| `expiration_date_not_detected_action` | `EXPIRATION_DATE_NOT_DETECTED` | `NO_ACTION` |
| `critical_field_occlusion_action` | `CRITICAL_FIELD_OCCLUSION_DETECTED` | `DECLINE` |
| `document_or_personal_number_format_mismatch_action` | `DOCUMENT_NUMBER_FORMAT_MISMATCH`, `PERSONAL_NUMBER_FORMAT_MISMATCH` | `NO_ACTION` |

## Konfigurierbare Verifizierungseinstellungen

In der Didit-Konsole sind die verbleibenden Ausweisrisiken in Einstellungen gruppiert, die Sie auf **Genehmigen**, **Überprüfung** oder **Ablehnen** leiten können (pro Workflow und pro Knoten in Graph-Workflows):

| Gruppe | Risiken | Standardaktion |
| - | - | - |
| **Mindestalter** | `MINIMUM_AGE_NOT_MET` | Ablehnen |
| **Höchstalter** | `MAXIMUM_AGE_EXCEEDED` | Ablehnen |
| **Duplizierter Benutzer** | `POSSIBLE_DUPLICATED_USER` (übersprungen, wenn die Dokumentennummer auf Ihrer Dokumenten-Allowlist steht) | Genehmigen (Information) |
| **Ungültiger Code** | `QR_NOT_DETECTED`, `BARCODE_NOT_DETECTED`, `QR_VALIDATION_FAILED`, `BARCODE_VALIDATION_FAILED` | Genehmigen (Information) |
| **Ungültige MRZ** | `MRZ_VALIDATION_FAILED`, `MRZ_NOT_DETECTED` | Genehmigen (Information) |
| **Dateninkonsistenz** | `DATA_INCONSISTENT`, `MRZ_AND_DATA_EXTRACTED_FROM_OCR_NOT_SAME`, `DOCUMENT_NAME_DIFFERENT_FROM_OTHER_APPROVED_DOCUMENTS`, `DOCUMENT_SIDES_MISMATCH`, `ID_VERIFICATION_DATA_MISMATCH_BETWEEN_DOCUMENTS` | Genehmigen (Information) |
| **Ungültige Validierung** | `INVALID_DATE`, `COULD_NOT_RECOGNIZE_DOCUMENT`, `DOCUMENT_NUMBER_NOT_DETECTED`, `COULD_NOT_DETECT_DOCUMENT_TYPE`, `NAME_NOT_DETECTED`, `DATE_OF_BIRTH_NOT_DETECTED` | Überprüfung |
| **Abweichung von erwarteten Daten** | `FULL_NAME_MISMATCH_WITH_PROVIDED`, `GENDER_MISMATCH_WITH_PROVIDED`, `DOB_MISMATCH_WITH_PROVIDED`, `COUNTRY_MISMATCH_WITH_PROVIDED`, `NATIONALITY_MISMATCH_WITH_PROVIDED`, `IDENTIFICATION_NUMBER_MISMATCH_WITH_PROVIDED` | Überprüfung |
| **Ablaufdatum nicht erkannt** | `EXPIRATION_DATE_NOT_DETECTED` | Genehmigen (Information) |
| **Formatabweichung bei Dokument- oder persönlicher Nummer** | `DOCUMENT_NUMBER_FORMAT_MISMATCH`, `PERSONAL_NUMBER_FORMAT_MISMATCH` (eine gemeinsame Aktion) | Überprüfung |
| **Kritisches Feld verdeckt** | `CRITICAL_FIELD_OCCLUSION_DETECTED` | Überprüfung |
| **Nicht analysierte Adresse** | `UNPARSED_ADDRESS` | Genehmigen (Information) |
| **Bildqualität** | `IMAGE_TOO_BLURRY`, `IMAGE_TOO_DARK`, `IMAGE_TOO_BRIGHT` (eine Aktion pro Risiko) | Genehmigen (Information) |
| **Dokument ohne Porträt** | `DOCUMENT_HAS_NO_PORTRAIT` | Überprüfung |
| **Doppeltes Gesicht bei stiller Aufnahme** | `FRONT_CAMERA_DUPLICATED_FACE`, `POSSIBLE_FRONT_CAMERA_DUPLICATED_FACE` (eine gemeinsame Aktion) | Genehmigen (Information) |
| **Duplikat bei stiller Aufnahme mit abweichendem Namen** | `FRONT_CAMERA_DUPLICATED_FACE_NAME_MISMATCH` (kann das Ergebnis für doppelte Gesichter nur strenger machen) | Überprüfung |
| **Duplikat bei stiller Aufnahme mit abweichendem Geburtsdatum** | `FRONT_CAMERA_DUPLICATED_FACE_DOCUMENT_MISMATCH` (kann das Ergebnis für doppelte Gesichter nur strenger machen) | Überprüfung |

Die Risiken bezüglich Duplikaten und Sperrlisten bei stiller Aufnahme stammen aus der [Gesichtssuche auf dem während der Dokumentenerfassung aufgenommenen Selfie](https://docs.didit.me/de/core-technology/face-search/overview.md#das-bei-der-dokumentenerfassung-aufgenommene-selfie). Die Suche wird ausgeführt, solange **Gesichtssuche bei stiller Aufnahme** (`document_selfie_face_search_enabled`) aktiviert ist (was der Standard ist) und die Gesichtssuche im Liveness-Schritt nicht deaktiviert ist; andernfalls wird keines dieser sechs Risiken ausgelöst.

Zwei Familien von Ausweisrisiken werden **über Schwellenwerte** statt über Auswahlschalter für Genehmigen/Überprüfung/Ablehnen gesteuert:

* **Dokument-Liveness-Erkennung** – `SCREEN_CAPTURE_DETECTED`, `PRINTED_COPY_DETECTED`, `PORTRAIT_MANIPULATION_DETECTED`. Jede Betrugsart hat ihre eigenen Ablehnungs- und Überprüfungsschwellenwerte: Wert unter dem Ablehnungsschwellenwert → `error` + Abgelehnt; unter dem Überprüfungsschwellenwert → `warning` + In Prüfung; andernfalls `information`.
* **Kameraübergreifender Gesichtsabgleich** – `LOW_FRONT_CAMERA_FACE_MATCH_SIMILARITY`, gesteuert über `document_selfie_portrait_match_decline_threshold` / `document_selfie_portrait_match_review_threshold`.

### Schwellenwerte für die Dokument-Liveness-Erkennung konfigurieren

Im Workflow-Editor befinden sich diese Schwellenwerte auf dem Tab **Fälschung** des Ausweisverifizierungsschritts, mit einer Karte pro Betrugsart: **Porträt-Ersetzung**, **Ausgedruckte Kopie** und **Bildschirmaufnahme**.

Jede Prüfung vergibt für das Dokument einen Wert von `0` bis `100` dafür, wie echt es wirkt. **Ein höherer Wert bedeutet, dass das Dokument mit höherer Wahrscheinlichkeit echt ist.** Die beiden Werte auf einer Karte unterteilen diese Skala in drei Bereiche:

| Wert | Ergebnis |
| - | - |
| Unterhalb des Werts für **Ablehnen** | `error`, die Sitzung wird abgelehnt |
| Auf oder über dem Wert für **Ablehnen** und unter dem Wert für **Überprüfung** | `warning`, die Sitzung geht in die Prüfung |
| Auf oder über dem Wert für **Überprüfung** | `information`, die Prüfung ist bestanden |

Das Erhöhen eines der beiden Werte macht die Prüfung strenger: Mehr Sitzungen landen im Bereich darüber. Das Senken eines Werts lässt mehr Sitzungen passieren. Im Editor kann der Wert für Ablehnen nicht über den Wert für Überprüfung hinaus verschoben werden. Über die API entfernt ein Wert für Ablehnen über dem Wert für Überprüfung den Bereich „In Prüfung“.

Plattformstandards, die verwendet werden, wenn ein Workflow keinen Wert festlegt:

| Betrugsart | Ablehnen unter | Überprüfung unter | Workflow-Konfigurationsschlüssel |
| - | - | - | - |
| Porträt-Ersetzung | `35` | `70` | `document_liveness_portrait_replace_decline_threshold`, `document_liveness_portrait_replace_review_threshold` |
| Ausgedruckte Kopie | `35` | `77` | `document_liveness_printed_copy_decline_threshold`, `document_liveness_printed_copy_review_threshold` |
| Bildschirmaufnahme | `30` | `70` | `document_liveness_screen_replay_decline_threshold`, `document_liveness_screen_replay_review_threshold` |

Gehen Sie von den Standardwerten aus und ändern Sie immer nur einen Wert. Jede Karte zeigt ihren Standardwert und eine Schaltfläche **Auf Standard zurücksetzen**, sodass Sie jederzeit dorthin zurückkehren können. Der Editor warnt Sie außerdem vor folgenden Konfigurationen:

* **Überprüfung bei `100`.** Nur ein perfekter Wert besteht die Prüfung, sodass fast jede Sitzung in Prüfung geht oder abgelehnt wird.
* **Ablehnen bei `100`.** Nur ein perfekter Wert verhindert eine Ablehnung, sodass fast jede Sitzung abgelehnt wird.
* **Beide Werte bei `0`.** Kein Wert wird jemals markiert, sodass die Prüfung praktisch deaktiviert ist.

Das Setzen beider Werte auf dieselbe Zahl entfernt den Bereich „In Prüfung“: Ein Wert darunter wird abgelehnt und jeder andere Wert besteht die Prüfung.

Wenn sowohl **Ausgedruckte Kopie** als auch **Bildschirmaufnahme** dasselbe Dokument markieren würden, wird nur `SCREEN_CAPTURE_DETECTED` gemeldet.

Der kameraübergreifende Gesichtsabgleich folgt demselben Prinzip mit einem Unterschied an der Grenze: Ein Wert, der genau dem Überprüfungsschwellenwert entspricht, geht weiterhin in die Prüfung.

Vier Ausweisrisiken sind weder konfigurierbar noch schwellenwertbasiert. `POSSIBLE_FRONT_CAMERA_FACE_IN_BLOCKLIST` leitet immer zur **Überprüfung** weiter: Ein Selfie, das einem Gesicht auf der Sperrliste ähnelt, ohne eine bestätigte Übereinstimmung zu sein, muss von einer Person beurteilt werden – es wird niemals automatisch abgelehnt und niemals ignoriert. `BARCODE_SIGNATURE_INVALID` leitet immer zur **Überprüfung** weiter. Dies wird nur ausgelöst, wenn ein Barcode eine Signatur der Ausstellungsbehörde enthält, die die kryptografische Prüfung nicht besteht, sodass es keine Konfiguration gibt, bei der eine nachgewiesene Fälschung ignoriert wird. `DOCUMENT_BACK_SIDE_NOT_AVAILABLE` ist immer **Information** und beeinflusst niemals die Entscheidung: Es meldet eine Einschränkung des Dokumentenkatalogs von Didit, keine Eigenschaft des vorgelegten Dokuments, sodass es keine Konfiguration gibt, in der ein rechtmäßiger Inhaber abgelehnt oder zur Überprüfung weitergeleitet werden kann.
`FRONT_CAMERA_CAPTURED_DOCUMENT` leitet immer zur **Überprüfung** weiter.
Dies wird nur ausgelöst, wenn das Frontkamera-Einzelbild, das während des Scannens des Dokuments aufgenommen wurde, ein Ausweisdokument und keine Person zeigt, sodass eine Erfassung, die nichts darüber aussagt, wer das Dokument gehalten hat, immer von einem Menschen geprüft wird.
Dies wird immer dann geprüft, wenn der Selfie-Abgleich bei der Dokumentenerfassung (`is_document_selfie_portrait_match_enabled`) aktiviert ist.

## Erzeugte Warnungen

Verifiziert anhand von `collect_ocr_logs`, dem Dokumentenerfassungs-Flow und `process_ocr_logs_and_get_status`. Die kurzen Beschreibungen unten sind die exakten `short_description`-Strings, die von der API zurückgegeben werden.

### Dokumenterkennung und -qualität

| Risiko | Kurze Beschreibung | Ursache | Schweregrad |
| - | - | - | - |
| `COULD_NOT_RECOGNIZE_DOCUMENT` | Could not validate Document | Das System konnte die Echtheit oder Gültigkeit des eingereichten Dokuments nicht bestätigen — häufig schlechte Bildqualität oder ein nicht unterstützter Dokumenttyp. Dient auch als Fallback für nicht erkannte Verarbeitungsfehler. | Konfigurierbar — Invalid Validation, Standard Review |
| `COULD_NOT_DETECT_DOCUMENT_TYPE` | Could not detect document type | Die Vorderseite des Dokuments stimmt nicht mit hoher Konfidenz mit einem bekannten offiziellen Dokumentendesign überein, oder die OCR-Engine konnte die Dokumentenfamilie nicht klassifizieren (Reisepass vs. Personalausweis vs. Führerschein). Ein Dokument, das gültige Daten enthält, dessen Layout jedoch keinem offiziellen Design entspricht (ein bearbeitetes oder computergeneriertes Dokument oder ein neues Design, das noch nicht unterstützt wird), landet hier. Wenn dies ausgelöst wird, wird `DOCUMENT_NOT_SUPPORTED_FOR_APPLICATION` unterdrückt (der Typ ist unbekannt, daher wäre "nicht unterstützt" widersprüchlich). | Konfigurierbar — Invalid Validation, Standard Review |
| `DOCUMENT_NOT_SUPPORTED_FOR_APPLICATION` | Document not supported for your application | Der erkannte Dokumenttyp steht nicht auf der Zulassungsliste der Anwendung. `additional_data` enthält Land, Dokumenttyp, Untertyp und regionsspezifischen Untertyp. | `error` — **automatisch abgelehnt** |
| `DOCUMENT_EXPIRED` | Document expired | Zum Zeitpunkt der Erfassung: Das Ablaufdatum des Dokuments liegt in der Vergangenheit (`error`, automatische Ablehnung). Nach der Genehmigung: Die laufende Ablaufüberwachung hängt diese Warnung mit `log_type: "warning"` an, wenn das Datum eines genehmigten Dokuments verstreicht, und der Berichtstatus wechselt zu `Expired`. | `error` bei Erfassung; `warning` durch Überwachung |
| `DOCUMENT_SIDES_MISMATCH` | Document sides mismatch | Vorder- und Rückseitenbilder gehören nicht zum selben Dokument. | Konfigurierbar — Data Inconsistency, Standard information |
| `DOCUMENT_BACK_SIDE_NOT_AVAILABLE` | Back side not available for this document | Der Workflow hat beide Seiten angefordert, die Vorderseite wurde erkannt und Didits Dokumentenkatalog verzeichnet für genau dieses Dokument keine Rückseite, sodass nur die Vorderseite erfasst werden konnte. Der Nachweis im Bericht ist einseitig. Mit dem vorgelegten Dokument ist alles in Ordnung, der Inhaber wird nie um eine erneute Aufnahme gebeten und ein erneutes Scannen kann keine Rückseite hinzufügen. `additional_data` enthält den erkannten `front_document_name`. | `information` — beeinflusst die Entscheidung nie |
| `PORTRAIT_IMAGE_NOT_DETECTED` | Portrait image not detected | Auf einem Dokument, das ein Porträt enthalten sollte, konnte keines gefunden werden (wird aufgeschoben, wenn der Benutzer zuerst die Seite ohne Porträt hochlädt). | `error` — **automatisch abgelehnt** |
| `DOCUMENT_HAS_NO_PORTRAIT` | Document has no portrait | Die erkannte Dokumentenfamilie enthält auf keiner Seite ein Porträtfoto (einige Aufenthaltstitel, Krankenversichertenkarten, Meldebescheinigungen, Steuerkarten und eine Untergruppe von Führerscheinen/Ausweisen). Dies ist eine katalogbezogene Tatsache über den Dokumenttyp, kein Bildqualitätsproblem — ein erneutes Scannen des Dokuments kann das Ergebnis nicht ändern. | Konfigurierbar — Document Without Portrait, Standard Review |
| `IMAGE_TOO_BLURRY` / `IMAGE_TOO_DARK` / `IMAGE_TOO_BRIGHT` | Document image is too blurry / too dark / too bright | Die Bildqualitätsprüfung hat einen Upload abgelehnt (der Benutzer wird um eine erneute Aufnahme gebeten). `additional_data` enthält die fehlerhafte `side`. Eine erfolgreiche erneute Aufnahme löscht die veraltete Warnung; die Prüfung wird beim letzten zulässigen Versuch des Benutzers übersprungen, sodass er nie dauerhaft blockiert wird. | Konfigurierbar — Aktion „Image Quality“ pro Risiko, Standard information |

> [!NOTE]
>
> Der Erfassungs-Flow kann einen Upload auch mit den Feedback-Codes `IMAGE_RESOLUTION_TOO_LOW`, `DOCUMENT_NOT_FULLY_VISIBLE`, `IMAGE_QUALITY_TOO_LOW` und `DOCUMENT_OCCLUSION_DETECTED` (ein Finger oder Objekt verdeckt nach Beurteilung physisch gedruckten Text) ablehnen. Jeder dieser Codes fordert im SDK zu einer erneuten Aufnahme auf und wird im Bericht als eigenes Risiko erfasst, gesteuert über die Image-Quality-Einstellungen — `DOCUMENT_OCCLUSION_DETECTED` und `IMAGE_QUALITY_TOO_LOW` teilen sich dieselbe Aktion. Sie beschreiben die *Erfassung*: Eine erfolgreiche erneute Aufnahme löscht die Warnung. Ob ein verdecktes Feld die Entscheidung beeinflussen soll, regelt das separate, integritätsbezogene `CRITICAL_FIELD_OCCLUSION_DETECTED` weiter unten, das zum Entscheidungszeitpunkt ausgelöst wird und standardmäßig auf Review gesetzt ist.

> [!TIP]
>
> Wenn Ihr Workflow die Identität über den Gesichtsabgleich statt über das Dokumentenporträt absichert, sollten Sie erwägen, **Document Without Portrait** auf Decline zu leiten — andernfalls erreicht eine porträtlose Dokumentenfamilie den Gesichtsabgleich ohne Vergleichsmöglichkeit.

### Feldextraktion

| Risiko | Kurze Beschreibung | Ursache | Schweregrad |
| - | - | - | - |
| `NAME_NOT_DETECTED` | First name and/or last name not detected | Vorname und Nachname konnten nicht extrahiert werden. Ausgenommen, wenn der Inhaber berechtigterweise nur einen einzigen Namen führt (in Ländern mit Einzelnamen oder wenn die MRZ selbst nur einen Namen enthält) und mindestens ein Namenswert extrahiert wurde. | Konfigurierbar — Invalid Validation, Standard Review |
| `DATE_OF_BIRTH_NOT_DETECTED` | Date of birth not detected | Das Geburtsdatum konnte nicht aus einem Dokument extrahiert werden, das eines enthalten sollte. | Konfigurierbar — Invalid Validation, Standard Review |
| `DOCUMENT_NUMBER_NOT_DETECTED` | Document number not detected | Weder die Dokumentennummer noch eine persönliche Identifikationsnummer konnten extrahiert werden. | Konfigurierbar — Invalid Validation, Standard Review |
| `EXPIRATION_DATE_NOT_DETECTED` | Expiration date not detected | Das Ablaufdatum konnte nicht aus einem Dokument extrahiert werden, das eines enthalten sollte. | Konfigurierbar — Expiration Date Not Detected, Standard information |
| `INVALID_DATE` | Invalid Date | Ein Datum auf dem Dokument (Geburtsdatum oder Ablaufdatum) lässt sich nicht als gültiges Datum parsen. Im aktuellen Erfassungs-Flow wird dies während des Uploads als Aufforderung zur erneuten Aufnahme dargestellt und nicht als gespeicherte Warnung hinterlegt; der Code verbleibt in der Routing-Gruppe Invalid Validation und kann bei älteren Sitzungen auftreten. | Konfigurierbar — Invalid Validation, Standard Review |
| `DOCUMENT_NUMBER_FORMAT_MISMATCH` | Format der Dokumentennummer stimmt nicht überein | Die Dokumentennummer entspricht nicht dem für diesen Dokumenttyp konfigurierten erwarteten Format. `additional_data` enthält `expected_format` und `extracted_value`. | Konfigurierbar – Formatabweichung, Standard: Prüfung |
| `PERSONAL_NUMBER_FORMAT_MISMATCH` | Format der persönlichen Identifikationsnummer stimmt nicht überein | Die persönliche Identifikationsnummer entspricht nicht dem für diesen Dokumenttyp konfigurierten erwarteten Format. | Konfigurierbar – Formatabweichung, Standard: Prüfung |
| `CRITICAL_FIELD_OCCLUSION_DETECTED` | Ein kritisches Dokumentenfeld ist verdeckt | Die Verdeckungsprüfung hat gemeldet, dass ein kritisches gedrucktes Feld auf der Aufnahme physisch verdeckt war – eine Identifikationsnummer, ein Name, das Geburtsdatum oder das Ablaufdatum. Dies ist ein Signal für die Dokumentenintegrität, nicht für die Aufnahmequalität: Das Verdecken genau der Nummern, gegen die ein Bericht abgeglichen wird, ist das typische Erscheinungsbild eines geschwärzten oder manipulierten Dokuments. Der für ein verdecktes Feld ausgelesene Wert wird aus der Extraktion verworfen, anstatt als bestätigter Wert zurückgegeben zu werden, weshalb das entsprechende `*_NOT_DETECTED`-Risiko diese Warnung üblicherweise begleitet. `additional_data` enthält die Namen der verdeckten Felder in `covered_fields` sowie in `covered_identifiers` die betroffenen Identifikatoren, wenn einer davon in `document_number` oder `personal_number` einfließt. | Konfigurierbar – Kritisches Feld verdeckt, Standard: Prüfung |

### MRZ, QR, Barcode

Alle drei MRZ-Risiken werden bei Dokumenttypen mit bekanntermaßen unzuverlässiger MRZ übersprungen.

| Risiko | Kurzbeschreibung | Ursache | Schweregrad |
| - | - | - | - |
| `MRZ_NOT_DETECTED` | MRZ nicht erkannt | MRZ konnte auf einem Dokument, das eine enthalten sollte, nicht lokalisiert werden. | Konfigurierbar – Ungültige MRZ, Standard: Information |
| `MRZ_VALIDATION_FAILED` | MRZ ist ungültig | MRZ hat die Prüfsummen-/Formatvalidierung nicht bestanden. Häufig eine Aufnahme von geringer Qualität; kann auf Manipulation hinweisen. | Konfigurierbar – Ungültige MRZ, Standard: Information |
| `MRZ_AND_DATA_EXTRACTED_FROM_OCR_NOT_SAME` | MRZ und aus der OCR extrahierte Daten weisen Diskrepanzen auf | MRZ-Inhalte stimmen nicht mit der OCR der VIZ (sichtbare Zone) überein. Mögliche Veränderung. | Konfigurierbar – Dateninkonsistenz, Standard: Information |
| `QR_NOT_DETECTED` | QR-Code nicht erkannt | QR-Code konnte auf einem Dokument, das einen aufweisen sollte, nicht lokalisiert werden. | Konfigurierbar – Ungültiger Code, Standard: Information |
| `QR_VALIDATION_FAILED` | QR-Validierung fehlgeschlagen | QR-Inhalte konnten nicht mit dem Rest des Dokuments abgeglichen werden. | Konfigurierbar – Ungültiger Code, Standard: Information |
| `BARCODE_NOT_DETECTED` | Barcode nicht erkannt | Barcode konnte auf einem Dokument, das einen aufweisen sollte, nicht lokalisiert werden. | Konfigurierbar – Ungültiger Code, Standard: Information |
| `BARCODE_VALIDATION_FAILED` | Barcode-Validierung fehlgeschlagen | Barcode-Inhalte konnten nicht mit dem Rest des Dokuments abgeglichen werden. | Konfigurierbar – Ungültiger Code, Standard: Information |
| `BARCODE_SIGNATURE_INVALID` | Barcode-Signatur ungültig | Der Barcode enthält eine digitale Signatur der Ausstellungsbehörde, und diese Signatur konnte nicht verifiziert werden – die Daten im Barcode stimmen nicht mit den von der Behörde signierten Daten überein, was auf ein gefälschtes oder verändertes Dokument hindeutet. Wird derzeit für **französische 2D-Doc (ANTS)**-Barcodes geprüft, bei denen eine verifizierte Signatur es Didit ermöglicht, Felder hochzustufen, ohne dass eine Bestätigung durch die MRZ erforderlich wäre; AAMVA-Signaturen (Führerscheine und Ausweise aus den USA/Kanada) werden nur erkannt und protokolliert, jedoch noch nicht erzwungen. | Fest – Prüfung (eigene Aktionsgruppe `invalid_barcode_signature_action`; noch nicht über Konsole/API konfigurierbar) |
| `DATA_INCONSISTENT` | OCR-Daten im Dokument sind inkonsistent | Aus verschiedenen Teilen des Dokuments extrahierte Daten stimmen nicht überein – typischerweise die Vorder- und Rückseite desselben Dokuments. | Konfigurierbar – Dateninkonsistenz, Standard: Information |

> [!NOTE]
>
> Die Barcode-Signaturprüfung umfasst derzeit französische Personalausweise, deren ANTS-2D-Doc-Barcode von der Ausstellungsbehörde signiert ist. `BARCODE_SIGNATURE_INVALID` wird nur ausgelöst, wenn die Signaturprüfung selbst die Payload zurückweist. Ein Barcode ohne Signatur, ein Barcode, der von einer noch nicht im Vertrauensspeicher von Didit enthaltenen Behörde signiert wurde, oder ein Barcode, dessen Signatur nicht decodiert werden kann, wird als nicht authentifizierte Daten behandelt und wie bisher mit der MRZ und dem gedruckten Text abgeglichen, ohne dass dieses Risiko ausgelöst wird.
>
> Barcodes auf US-amerikanischen und kanadischen Führerscheinen (AAMVA) werden nicht kryptografisch verifiziert: Die digitale Signierung ist dort optional und je nach Bundesstaat bzw. Rechtsordnung unterschiedlich, und keine Rechtsordnung veröffentlicht Verifizierungsschlüssel. Didit erkennt und protokolliert daher lediglich, ob eine Payload eine Signatur enthält; die Signatur selbst wird nie geprüft. Fehlgeschlagene AAMVA-Signaturen stellen derzeit kein Risikosignal dar. Eine manipulierte AAMVA-Payload tritt nur als `BARCODE_VALIDATION_FAILED` zutage, und auch nur dann, wenn die Manipulation dazu führt, dass der Barcode nicht mit der MRZ oder den gedruckten/OCR-Daten übereinstimmt – eine gefälschte Signatur auf einer ansonsten intern konsistenten Payload wird ohne jegliches Signal akzeptiert.
>
> Der Benutzer wird bei `BARCODE_SIGNATURE_INVALID` niemals zu einer erneuten Aufnahme aufgefordert: Eine Signatur, die nicht zur Payload passt, lässt sich nicht durch ein besseres Foto beheben.

### Identitätsabgleich

| Risiko | Kurzbeschreibung | Ursache | Schweregrad |
| - | - | - | - |
| `ID_DOCUMENT_IN_BLOCKLIST` | Ausweisdokument auf der Sperrliste | Das Dokument stimmt mit einem auf der Sperrliste geführten Dokument überein (gleiches Geburtsdatum, Ausstellungsland und exakt dieselbe Dokumentennummer) oder mit einer manuell auf die Sperrliste gesetzten Dokumentennummer. `additional_data` enthält die Referenz der gesperrten Sitzung. | `error` — **automatische Ablehnung** |
| `ID_DOCUMENT_IN_ALLOWLIST` | Ausweisdokument auf der Positivliste | Die Dokumentennummer stimmt mit Ihrer Dokumenten-Positivliste überein, weshalb die Aktion für doppelte Benutzer übersprungen wurde. `additional_data` enthält die `document_number`. | `information` |
| `POSSIBLE_DUPLICATED_USER` | Möglicher doppelter Benutzer aus anderer Sitzung | Ein anderes Dokument in Ihrer Anwendung weist dasselbe Geburtsdatum, dasselbe Ausstellungsland und einen sehr ähnlichen vollständigen Namen auf – unter einem anderen Benutzer (`vendor_data`), unabhängig vom Status dieser Sitzung. `additional_data` enthält die Referenz der doppelten Sitzung. | Konfigurierbar – Doppelter Benutzer, Standard: Information |
| `DOCUMENT_NAME_DIFFERENT_FROM_OTHER_APPROVED_DOCUMENTS` | Dokumentenname weicht von anderen genehmigten Dokumenten ab | Der Name auf diesem Dokument weicht von zuvor genehmigten Dokumenten desselben Benutzers ab. Wird nur für Didit-Protokoll-Konten (UserKYC) generiert, nicht für standardmäßige API-Sitzungen. | Konfigurierbar – Dateninkonsistenz, Standard: Information |
| `ID_VERIFICATION_DATA_MISMATCH_BETWEEN_DOCUMENTS` | Datenabweichung zwischen Ausweisdokumenten | Zwei Ausweisdokumente in derselben Sitzung stimmen beim Namen bzw. beim Geburtsdatum nicht überein. | Konfigurierbar — Dateninkonsistenz, standardmäßig Information |
| `LOW_FRONT_CAMERA_FACE_MATCH_SIMILARITY` | Selfie während der Dokumentenerfassung stimmt nicht mit dem Dokumentenporträt überein | Das über die Frontkamera des Benutzers während der Dokumentenerfassung aufgenommene Gesicht stimmt nicht ausreichend mit dem Porträt auf dem Dokument überein. | Schwellenwertbasiert: `error` unterhalb des Schwellenwerts für Ablehnen, `warning` beim oder unterhalb des Schwellenwerts für Überprüfung |
| `FRONT_CAMERA_FACE_IN_BLOCKLIST` | Selfie während der Dokumentenerfassung stimmt mit einem Gesicht auf der Sperrliste überein | Das Gesicht in einem Selfie, das während der Dokumentenerfassung von der Frontkamera aufgenommen wurde, stimmt mit hoher Sicherheit mit einem Gesicht in Ihrer Gesichtssperrliste überein – unabhängig davon, ob dieses Gesicht aus einer Liveness-Erkennung, aus dem Dokumentenerfassungs-Selfie einer anderen Sitzung oder per Upload hinzugefügt wurde. `additional_data` enthält die Referenz der Sitzung, aus der das Gesicht auf der Sperrliste stammt (`blocklisted_session_id`, `blocklisted_session_number`), wenn das Gesicht aus einer Sitzung stammte, sowie `face_image_source` (`front_image_camera_front` oder `back_image_camera_front`) für das übereinstimmende Selfie. | `error` — **automatisch ablehnen** |
| `POSSIBLE_FRONT_CAMERA_FACE_IN_BLOCKLIST` | Selfie während der Dokumentenerfassung stimmt möglicherweise mit einem Gesicht auf der Sperrliste überein | Das Gesicht in einem Dokumentenerfassungs-Selfie ähnelt einem Gesicht in Ihrer Gesichtssperrliste, ist jedoch nicht ähnlich genug für eine bestätigte Übereinstimmung. Gleiche `additional_data` wie oben. | `warning` — **immer Überprüfung** |
| `FRONT_CAMERA_DUPLICATED_FACE` | Selfie während der Dokumentenerfassung stimmt mit einem genehmigten Benutzer überein | Das Gesicht im Selfie, das während der Dokumentenerfassung von der Frontkamera aufgenommen wurde, stimmt mit hoher Sicherheit mit dem Gesicht eines bereits in Ihrer Anwendung genehmigten Benutzers überein, sodass sich dieselbe Person möglicherweise erneut unter einem anderen Konto verifiziert. `additional_data` enthält die übereinstimmende Sitzung (`duplicated_session_id`, `duplicated_session_number`) und `face_image_source` für das übereinstimmende Selfie. | Gemäß **Doppeltes Gesicht bei stiller Aufnahme** (Standard: Genehmigen, `information`) |
| `POSSIBLE_FRONT_CAMERA_DUPLICATED_FACE` | Selfie während der Dokumentenerfassung stimmt möglicherweise mit einem genehmigten Benutzer überein | Das Gesicht in einem Dokumentenerfassungs-Selfie ähnelt dem Gesicht eines bereits in Ihrer Anwendung genehmigten Benutzers, ist jedoch nicht ähnlich genug für eine bestätigte Übereinstimmung. Gleiche `additional_data` wie oben. | Gemäß **Doppeltes Gesicht bei stiller Aufnahme** (Standard: Genehmigen, `information`) |
| `FRONT_CAMERA_DUPLICATED_FACE_NAME_MISMATCH` | Dokumentenerfassungs-Selfie stimmt mit einem Benutzer mit anderem Namen überein | Wird zusätzlich zu `FRONT_CAMERA_DUPLICATED_FACE` ausgelöst, wenn der genehmigte Benutzer unter einem anderen Namen verifiziert wurde. `additional_data` ergänzt `name_match_score`; der Name des anderen Benutzers wird niemals übertragen. | Gemäß **Duplikat bei stiller Aufnahme mit einem anderen Namen** (Standard: Überprüfung, `warning`) |
| `FRONT_CAMERA_DUPLICATED_FACE_DOCUMENT_MISMATCH` | Dokumentenerfassungs-Selfie stimmt mit einem Benutzer mit anderem Geburtsdatum überein | Wird zusätzlich zu `FRONT_CAMERA_DUPLICATED_FACE` ausgelöst, wenn das Ausweisdokument des genehmigten Benutzers ein anderes Geburtsdatum aufweist. Ein anderes Dokument derselben Person (beispielsweise ein Reisepass nach einem Personalausweis), ein erneuertes Dokument oder dieselbe Dokumentennummer aus demselben Land wird nicht markiert. `additional_data` ergänzt `mismatch_dimensions`, niemals die Dokumentendaten des anderen Benutzers. | Gemäß **Duplikat bei stiller Aufnahme mit einem anderen Geburtsdatum** (Standard: Überprüfung, `warning`) |
| `FRONT_CAMERA_CAPTURED_DOCUMENT` | Frontkamera hat ein Ausweisdokument anstelle des Benutzers erfasst | Das während des Dokumentenscans von der Frontkamera aufgenommene Einzelbild zeigt ein Ausweisdokument (beispielsweise eine vor die Kamera gehaltene Karte) und keine Person. Der Dokumentenerfassungs-Selfie-Abgleich wird für dieses Einzelbild nicht berechnet. | Immer **Überprüfung** |

### Dokumenten-Liveness (Manipulation)

Schwellenwertbasiert pro Betrugstyp in Workflows. Bei der eigenständigen OCR-API führen diese drei Risiken bedingungslos zu einer Ablehnung, und eine angeforderte Prüfung, die keinen verwertbaren Score liefert, gibt `In Review` statt einer Genehmigung zurück.

Die Scores selbst sind in jedem V3-Bericht unter [`document_liveness`](https://docs.didit.me/de/core-technology/id-verification/report-id-verification#dokument-liveness-scores) enthalten, auch wenn keine Warnung ausgelöst wurde, sodass ein genehmigtes Dokument dennoch auditiert werden kann.

| Risiko | Kurzbeschreibung | Ursache | Schweregrad |
| - | - | - | - |
| `SCREEN_CAPTURE_DETECTED` | Bildschirmaufnahme des Dokuments erkannt | Das Dokument wurde von einem Bildschirm statt von einem physischen Dokument erfasst. | `error` unterhalb des Schwellenwerts für Ablehnen, `warning` unterhalb des Schwellenwerts für Überprüfung, sonst `information` |
| `PRINTED_COPY_DETECTED` | Gedruckte Kopie des Dokuments erkannt | Das Dokument scheint eine gedruckte Kopie und kein Original zu sein. | Dieselben Drei-Stufen-Schwellenwerte |
| `PORTRAIT_MANIPULATION_DETECTED` | Porträtmanipulation erkannt | Der Porträtbereich scheint ersetzt oder verändert worden zu sein. | Dieselben Drei-Stufen-Schwellenwerte |
| `DOCUMENT_LIVENESS_NOT_COMPUTED` | Dokumenten-Liveness-Prüfung konnte nicht berechnet werden | Die angeforderte Dokumenten-Liveness-Prüfung (Fälschungsprüfung) lieferte keinen verwertbaren Score – der Anbieter schlug fehl, antwortete nicht mit 200 oder antwortete mit HTTP 200 und `status="ERR"` –, sodass das Dokument nie auf Porträtersetzung, gedruckte Kopie oder Wiedergabe einer Bildschirmaufnahme geprüft wurde. Ein fehlender Score ist kein Beweis für ein echtes Dokument. Nur eigenständige OCR-API. | `warning` + `In Review` (nicht konfigurierbar; überschreibt niemals ein `Declined`) |

### Integrität des Erfassungskanals

| Risiko | Kurzbeschreibung | Ursache | Konfigurierbar über | Standard |
| - | - | - | - | - |
| `INJECTION_ATTACK_DETECTED` | Injection-Angriff erkannt | Die Erfassung wurde per Injection eingespeist statt von der geräteeigenen Kamera aufgenommen: Eine virtuelle Softwarekamera, die beliebige Videos abspielen kann, ein von der Seite oder durch Browser-Automatisierung erzeugter Kamera-Feed, eine manipulierte Kamera (Hooking) oder ein an die App angehängtes Instrumentierungstool hat die Einzelbilder geliefert. `additional_data.reasons` führt nur die Gründe auf, die dies belegen, und `source` ist `capture_integrity`. Dies gilt für die Dokumentenerfassung und für das Selfie, das für eine Ausweisabfrage aufgenommen wurde. | `id_verification_injection_attack_action` | **Ablehnen** |

Der `log_type` spiegelt die konfigurierte Aktion wider: `error` für Ablehnen, `warning` für Prüfung, `information` für Keine Aktion.
Empfohlene Aktion: Behandeln Sie eine abgelehnte Sitzung als eingeschleuste Aufnahme und fordern Sie die Person auf, den Vorgang auf einem physischen Gerät mit integrierter Kamera zu wiederholen.
Signale, die eine echte Person erzeugen kann, lösen niemals `INJECTION_ATTACK_DETECTED` aus und bleiben rein informativ.
Apps, die das Bild einer echten Kamera weiterleiten, wie beispielsweise ein als Webcam genutztes Smartphone oder eine Effektebene über einer echten Webcam, werden nicht als Injection-Angriffe gemeldet.
Hierbei handelt es sich um die Erkennung von Injection-Angriffen, die von der Erkennung von Präsentationsangriffen (eine einer echten Kamera vorgehaltene Fälschung) getrennt ist.

### Bekannte öffentliche Dokumentenbilder

| Risiko | Kurzbeschreibung | Ursache | Schweregrad |
| - | - | - | - |
| `PUBLIC_DOCUMENT_IMAGE_DETECTED` | Bekanntes öffentliches Internet-Dokumentenbild erkannt | Das übermittelte Dokumentenbild stimmt mit einem bekannten, öffentlich im Internet verfügbaren Bild überein (z. B. ein Muster-, Presse- oder Stockfoto eines Dokuments) und kann daher kein Foto des physischen Dokuments des Benutzers sein. Der Abgleich nutzt exakte sowie perzeptuelle (pHash/dHash) Fingerabdrücke gegen Didits Datenbestand bekannter öffentlicher Dokumentenbilder; `additional_data` enthält `match_type` (`exact` oder `perceptual`), `source`, `source_url` und einen `similarity_score` (0-100). | Fest – Prüfung in Workflows; **automatische Ablehnung** bei der eigenständigen `/id-verification`-API |

### Abweichungen bei erwarteten Angaben

Wenn Sie `expected_details` an eine Sitzung übergeben, gibt Didit für jedes nicht übereinstimmende Feld eine Abweichungswarnung aus. Eine Gruppierung (`expected_details_mismatch_action`, Standard: Prüfung) steuert das Routing für all diese Warnungen:

| Risiko | Kurzbeschreibung | Ursache |
| - | - | - |
| `FULL_NAME_MISMATCH_WITH_PROVIDED` | Vollständiger Name stimmt nicht mit den angegebenen Informationen überein | Der angegebene Name erreicht im Abgleich mit dem Dokument einen Wert unterhalb des Schwellenwerts für Namensübereinstimmungen. |
| `DOB_MISMATCH_WITH_PROVIDED` | Geburtsdatum stimmt nicht mit den angegebenen Informationen überein | Das angegebene Geburtsdatum stimmt nicht überein. |
| `GENDER_MISMATCH_WITH_PROVIDED` | Geschlecht stimmt nicht mit den angegebenen Informationen überein | Das angegebene Geschlecht stimmt nicht überein. |
| `COUNTRY_MISMATCH_WITH_PROVIDED` | Land stimmt nicht mit den angegebenen Informationen überein | Das angegebene Land stimmt nicht mit `issuing_state` überein. |
| `NATIONALITY_MISMATCH_WITH_PROVIDED` | Staatsangehörigkeit stimmt nicht mit den angegebenen Informationen überein | Die angegebene Staatsangehörigkeit stimmt nicht überein. |
| `IDENTIFICATION_NUMBER_MISMATCH_WITH_PROVIDED` | Identifikationsnummer stimmt nicht mit den angegebenen Informationen überein | Die angegebene ID-Nummer stimmt weder mit der Dokumentennummer, der persönlichen Identifikationsnummer noch mit der Steuernummer überein. |

Jede Abweichungswarnung enthält die erwarteten und extrahierten Werte in `additional_data`.

### Alter

| Risiko | Kurzbeschreibung | Ursache | Schweregrad |
| - | - | - | - |
| `MINIMUM_AGE_NOT_MET` | Mindestalter nicht erreicht | Der Inhaber liegt unter dem konfigurierten Mindestalter (global oder pro Land/Bundesstaat). `additional_data` enthält `min_age_allowed` und `user_age`. | Konfigurierbar – Mindestalter, Standard: Ablehnen (`error`); bedingungslose Ablehnung bei der eigenständigen OCR-API |
| `MAXIMUM_AGE_EXCEEDED` | Höchstalter überschritten | Der Inhaber liegt über dem konfigurierten Höchstalter. `additional_data` enthält `max_age_allowed` und `user_age`. | Konfigurierbar – Höchstalter, Standard: Ablehnen (`error`) |
| `AGE_NOT_DETECTED` | Alter nicht erkannt | Adaptive Workflows zur Altersverifizierung: Das Alter konnte nicht aus dem Dokument extrahiert werden. | `error` – **automatische Ablehnung** |
| `AGE_BELOW_MINIMUM` | Alter unter dem Mindestalter | Adaptive Workflows zur Altersverifizierung: Das extrahierte Alter liegt unter dem Mindestalter. | `error` – **automatische Ablehnung** |

### Adresse

| Risiko | Kurzbeschreibung | Ursache | Schweregrad |
| - | - | - | - |
| `UNPARSED_ADDRESS` | Adressstandort konnte nicht bestimmt werden | Das Dokument enthält ein Adressfeld, aber die extrahierte Adresse konnte nicht geparst oder geolokalisiert werden. | Konfigurierbar – Nicht verarbeitete Adresse, Standard: Information |

## Sitzungsübergreifende Dokumentenübereinstimmungen

Zusätzlich zu den oben genannten Warnungen liefert der V3-ID-Bericht ein `matches[]`-Array – bis zu 5 andere Dokumente in Ihrer Anwendung mit demselben Geburtsdatum, demselben Ausstellungsland und einem sehr ähnlichen vollständigen Namen (bei Dokumenten auf der Sperrliste ist zusätzlich eine exakte Übereinstimmung der Dokumentennummer erforderlich), ausgenommen Sitzungen, die demselben Benutzer gehören. Dokumente, die zu Ihrer Sperrliste hinzugefügt wurden, erscheinen mit `is_blocklisted: true`. Dokumente auf Ihrer Positivliste erscheinen weiterhin in den Übereinstimmungen, aber die Aktion für Benutzerduplikate wird übersprungen.

Jede Übereinstimmung enthält `session_id`, `session_number`, `vendor_data`, `verification_date`, `user_details` (`name`, `document_type`, `document_number`), `status`, `is_blocklisted`, `api_service` und eine signierte `front_image_url`.

## Beispiele

### Konfigurierbare Warnung beim Standard-Routing (Information)

```json theme={null}
"warnings": [
  {
    "feature": "ID_VERIFICATION",
    "risk": "QR_NOT_DETECTED",
    "additional_data": null,
    "log_type": "information",
    "short_description": "QR not detected",
    "long_description": "The system couldn't find or read the QR code on the document. This could be due to poor image quality or an unsupported document type.",
    "node_id": "id_primary"
  }
]
```

### Automatische Ablehnung bei abgelaufenem Dokument

```json theme={null}
"warnings": [
  {
    "feature": "ID_VERIFICATION",
    "risk": "DOCUMENT_EXPIRED",
    "additional_data": null,
    "log_type": "error",
    "short_description": "Document expired",
    "long_description": "The document's expiration date has passed, rendering it no longer valid for use.",
    "node_id": "id_primary"
  }
]
```

### Abweichung bei erwarteten Angaben mit Payload

```json theme={null}
"warnings": [
  {
    "feature": "ID_VERIFICATION",
    "risk": "DOB_MISMATCH_WITH_PROVIDED",
    "additional_data": {
      "expected_dob": "1990-01-01",
      "extracted_dob": "1991-03-15"
    },
    "log_type": "warning",
    "short_description": "Date of birth mismatch with provided information",
    "long_description": "The provided date of birth in `expected_details` doesn't match the date extracted from the document.",
    "node_id": "id_primary"
  }
]
```

## Warnungstypen

Jedem Risiko wird basierend auf der Konfiguration Ihrer Anwendung ein Schweregrad zugewiesen. Die drei Schweregrade sind:

## Verwandte Themen

* [Ausweisverifizierungsbericht](https://docs.didit.me/de/core-technology/id-verification/report-id-verification.md) – Vollständiges Berichtsschema und Statuswerte.
* [Dokumentenüberwachung](https://docs.didit.me/de/core-technology/id-verification/document-monitoring-id-verification.md) – Wie Didit Manipulationen und sitzungsübergreifende Duplikate erkennt.
* [Webhooks](https://docs.didit.me/de/integration/webhooks.md) – `session.status.updated` übermittelt die Warnungen, sobald der Ausweisschritt abgeschlossen ist.
* [Datenmodelle – Ausweisverifizierung](https://docs.didit.me/de/reference/data-models.md#ausweisverifizierung) – Kanonisches Schema Feld für Feld.
* [Datenmodelle – Warnungsobjekt](https://docs.didit.me/de/reference/data-models.md#warnungsobjekt) – Die Struktur jedes Eintrags in `warnings[]`.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.