Übersicht
Warnungen sind mit der FunktionPHONE gekennzeichnet. Sie erscheinen unter phone_verifications[].warnings[] in GET /v3/session/{sessionId}/decision/ und folgen der standardmäßigen Struktur des Warnungsobjekts (feature, risk, additional_data, log_type, short_description, long_description, node_id). Jede Warnung wird zudem in das sitzungsspezifische Protokoll geleitet, sodass sie in der Business Console im Bereich „Phone“ angezeigt wird.
Einige Warnungen sind Auslöser für eine feste automatische Ablehnung – sie setzen den Funktionsstatus immer auf Declined. Andere sind einer konfigurierbaren Aktion zugeordnet (DECLINE, REVIEW oder NO_ACTION, je nach Einstellung), die in Ihren Workflow-Einstellungen definiert ist, sodass derselbe Risiko-Code einen Workflow ablehnen kann, während er einen anderen lediglich markiert.
Bedingungen für die automatische Ablehnung
Die folgenden Warnungen lehnen den Schritt der Telefonverifizierung unabhängig von der Konfiguration immer ab und weisen stetslog_type: "error" auf:
VERIFICATION_CODE_ATTEMPTS_EXCEEDED— der Benutzer hat ein Limit für OTP-Versuche ausgeschöpft: standardmäßig 2 fehlerhafte Code-Eingaben (phone_max_check_attempts) oder mehr als 2 OTP-Versendungen (phone_max_retries), beides pro Workflow-Knoten anpassbar. Die eigenständige Telefon-API erlaubt 3 Code-Versuche.PHONE_NUMBER_IN_BLOCKLIST— die Nummer befindet sich in Ihrer über die Lists API verwalteten Sperrliste oder stimmt mit einer auf der Sperrliste geführten Sitzung überein.
HIGH_RISK_PHONE_NUMBER — die Betrugsbekämpfungsebene des Zustellanbieters verweigert den Versand des OTP (Blocked-Versand) — lehnt standardmäßig ab, ist jedoch nicht mehr bedingungslos: siehe high_risk_phone_action unten.
Konfigurierbare Risiken
Jedes der folgenden Risiken ist einer Workflow-Einstellung zugeordnet, die Sie aufDECLINE, REVIEW oder NO_ACTION konfigurieren können (die Standardeinstellung – die Warnung wird erfasst, ohne den Status zu beeinflussen). Die konfigurierte Aktion legt auch den log_type der Warnung fest: DECLINE → error, REVIEW → warning, NO_ACTION → information.
Die Duplikaterkennung läuft innerhalb Ihrer Anwendung über KYC, KYB und eigenständige API-Telefonverifizierungen hinweg und gruppiert Sitzungen nach
vendor_data – Sitzungen mit demselben vendor_data-Wert werden als ein einzelner Endbenutzer behandelt und von den Treffergebnissen ausgeschlossen. Bleibt vendor_data leer, wird jede Sitzung als eigenständiger Benutzer behandelt.
Blockierte Versendungen
HIGH_RISK_PHONE_NUMBER folgt demselben Muster mit einem kleineren Auswahlsatz, da eine vom Anbieter verweigerte Versendung nicht genehmigt werden kann:
Die Einstellung wird nur dann angewendet, wenn jede Hochrisiko-Blockierung für den Schritt in
additional_data.risk_factors exakt ["device_attribute"] enthält – das Signal des Anbieters „dieses Gerät sieht verdächtig aus“, das bei gewöhnlichen Mobilfunkanschlüssen anschlägt. Jeder andere Risikofaktor, jede Mischung, die device_attribute lediglich enthält, oder eine Blockierung ganz ohne Risikofaktoren führt unabhängig von der Einstellung zu einer Ablehnung. Der Grund für die Blockierung (repeated_attempts, suspicious oder spam) ist ein separates Feld, das in additional_data.blocked_reason zurückgegeben wird.
Unabhängig von der Einstellung wird eine Nummer auf einer über die Lists API erstellten Telefon-Positivliste bei einem blockierten Versand niemals automatisch abgelehnt: Der Schritt wechselt zu In Prüfung, die Warnung weist log_type: "warning" auf und additional_data.phone_number_in_allowlist ist true.
Limits für Verifizierungsversuche
Die Funktion „Telefonverifizierung“ wendet eine feste Obergrenze für OTP-Versuche an, um Missbrauch zu verhindern:- Code-Eingabeversuche — Standardmäßig 2 falsche Eingaben (
phone_max_check_attempts), bevor der Schritt alsDeclinedmitVERIFICATION_CODE_ATTEMPTS_EXCEEDEDabgeschlossen wird. Die Standalone-Telefon-API erlaubt 3 Code-Versuche pro Verifizierung. - Sendeversuche — Standardmäßig insgesamt 2 Sendungen (
phone_max_retries): der anfängliche Versand plus ein erneuter Versand. Eine weitere Sendeanfrage schließt den Schritt ab und löstVERIFICATION_CODE_ATTEMPTS_EXCEEDEDaus. - OTP-Gültigkeit — Ein ausstehendes OTP ist für 5 Minuten ab dem ersten Versand gültig; Wiederholungsversuche verlängern dieses Zeitfenster nicht.
repeated_attempts, suspicious oder spam) – dies löst HIGH_RISK_PHONE_NUMBER aus, nicht die Warnung zu Versuchen.
Generierte Warnungen
Sitzungsübergreifende Übereinstimmungen
Wenn eine Nummer in anderen Sitzungen oder auf Ihrer Sperrliste erkannt wird, erscheinen diese Treffer auch unterphone_verifications[].matches[] (begrenzt auf 5 Einträge). Jeder Treffer enthält session_id, session_number, vendor_data, verification_date, phone_number, status, is_blocklisted, api_service und den Wert session für source (eine andere Sitzung mit derselben Nummer, beliebiger Status) oder list_entry (ein synthetischer Sperrlistentreffer, der dem Array vorangestellt wird). Befindet sich die aktuelle Nummer auf Ihrer Telefon-Allowlist, behält Didit die Übereinstimmungsnachweise bei, gibt jedoch PHONE_NUMBER_IN_ALLOWLIST aus, anstatt die Aktion für doppelte Nummern anzuwenden. Siehe den Bericht zur Telefonverifizierung für das vollständige Schema für Übereinstimmungen.
Beispiel
Ein blockierter Versand (HIGH_RISK_PHONE_NUMBER) bei einer VoIP-Nummer, wobei voip_number_action auf REVIEW konfiguriert ist:
Warnungstypen
Jedem Risiko wird basierend auf der Konfiguration Ihrer Anwendung ein Schweregrad zugewiesen. Schweregrade unterteilen sich in drei Kategorien:Verwandte Themen
- Übersicht zur Telefonverifizierung — Funktionsverhalten, Preise, unterstützte Kanäle.
- Bericht zur Telefonverifizierung — Vollständige Antwortstruktur einschließlich
lifecycle[]undmatches[]. - Datenmodelle – Telefonverifizierung — Kanonisches Schema mit einer Beschreibung jedes Felds.
- Management API – Listen — Verwaltung der Telefon-Sperrliste, die von
PHONE_NUMBER_IN_BLOCKLISTverwendet wird.