Mit 3D Secure authentifizieren
Integrieren Sie 3D Secure (3DS) in Ihren Bezahlvorgang.
Vorsicht
Große Kartenmarken unterstützen 3D Secure 1 nicht mehr. Wenn Ihre Implementierung 3D Secure 1 nutzt, aktualisieren Sie sie, um die Payment Intents API und die Setup Intents API zu verwenden. Verwendung dieser APIs:
- Unterstützt 3D Secure 2 (3DS2.
- Nutzt Dynamic 3D Secure.
- Entspricht den europäischen Vorschriften für die starke Kundenauthentifizierung.
Sie können die Authentifizierung per 3D Secure (3DS) auf mehreren Plattformen in Ihren Bezahlvorgang integrieren, einschließlich für Web, iOS, Android und React Native. Im Rahmen der Integration wird 3D Secure 2 (3DS2) ausgeführt, insofern die Kundenbank dies unterstützt. Andernfalls wird die Authentifizierung mit 3D Secure 1 vorgenommen. Wenn Sie den 3DS-Dienst von Stripe mit anderen Verarbeitern nutzen möchten, kontaktieren Sie bitte unser Support-Team.
3DS-Ablauf steuern
Stripe löst 3DS automatisch aus, wenn dies aufgrund eines behördlichen Mandats wie der starken Kundenauthentifizierung erforderlich ist oder von einem Aussteller mit dem Soft Decline-Code authentication_
angefordert wird.
Sie können auch Radar-Regeln oder die API verwenden, um zu steuern, wann Nutzer/innen aufgefordert werden sollen, die 3DS-Authentifizierung abzuschließen. Dabei wird für jede Nutzerin/jeden Nutzer eine Entscheidung basierend auf den gewünschten Parametern getroffen. Allerdings unterstützen nicht alle Transaktionen 3DS, beispielsweise Wallets oder Off-Session-Zahlungen.
Wenn eine Zahlung 3DS auslöst, verlangt Stripe von der Nutzerin/dem Nutzer eine Authentifizierung, um die Zahlung abzuschließen, insofern die 3DS-Authentifizierung für eine Karte verfügbar ist. Je nachdem, welches Frontend Sie verwenden, kann es erforderlich sein, den 3DS-Ablauf anzuzeigen.
Bei einem typischen Payment Intent API-Ablauf, der 3DS auslöst:
- Die Nutzerin/der Nutzer gibt die Zahlungsinformationen ein, wodurch ein PaymentIntent oder ein SetupIntent bestätigt wird, oder fügt einer Kundin/einem Kunden eine PaymentMethod hinzu.
- Stripe prüft anhand von behördlichen Vorschriften, Radar-Regeln, manuellen API-Anfragen, vorübergehenden Ablehnungen (Soft Declines) des Ausstellers und anderen Kriterien, ob die Transaktion 3DS unterstützt und verlangt.
- Wenn 3DS:
- Nicht erforderlich: Aufgrund einer Befreiung versucht Stripe beispielsweise, die Zahlung durchzuführen. Der PaymentIntent wechselt in den Status
processing
. Wenn der Aussteller dies mit einem Soft Decline verlangt, versuchen wir es automatisch erneut und fahren bei Bedarf fort. - Nicht unterstützt: Der PaymentIntent geht in den Status
requires_
über. Je nachdem, aus welchem Grund 3DS ausgelöst wurde, kann es zulässig sein, mit dem Autorisierungsschritt der Zahlung fortzufahren. In diesem Fall geht der PaymentIntent in den Statuspayment_ method processing
über. - Erforderlich: Stripe startet den 3DS-Authentifizierungsablauf, indem der Aussteller des 3D Secure Access Control Server (ACS) kontaktiert und der 3DS-Ablauf gestartet wird.
- Nicht erforderlich: Aufgrund einer Befreiung versucht Stripe beispielsweise, die Zahlung durchzuführen. Der PaymentIntent wechselt in den Status
- Wenn Stripe 3DS-Ablaufinformationen von dem Aussteller erhält, versuchen wir, die Authentifizierung durchzuführen. Der PaymentIntent geht in den Status
requires_
über:action - Nachfolgend erfahren Sie, wie die erforderliche 3DS-Aktion angezeigt wird. Aussteller können verschiedene Arten von 3DS-Ablaufaktionen anfordern, die möglicherweise nicht immer zur Anzeige eines abfragebasierten 3DS-Ablaufs führen (z. B. ein reibungsloser Ablauf).
- Wenn der Aussteller 3DS überhaupt nicht unterstützt oder ein Ausfall auftritt, kann Stripe versuchen, die Zahlung ohne Authentifizierung abzuschließen, sofern dies zulässig ist.
- Data for 3DS authentication requests is typically provided by the customer at the time of the transaction. To reduce friction and the possibility of failed authentication, we might complete these requests with data we infer from other sources such as data collected from your customer during the payment flow, records related to your customer’s past transactions with you, or relevant information available from the customer’s card or issuers.
- Wenn Stripe bereits Zugriff auf alle erforderlichen 3DS-Datenelemente hat, versucht unser optimierter 3DS-Server möglicherweise, die Authentifizierungsanfrage für Sie abzuschließen, während er den PaymentIntent bestätigt. Dies kann dazu führen, dass der PaymentIntent direkt in den Status
processing
wechselt, wenn der 3DS-Ablauf erfolgreich ist, oder in den Statusrequires_
, wenn zusätzliche Schritte oder Datenelemente erforderlich sind, um den 3DS-Ablauf abzuschließen.action
- Je nach Ergebnis der 3DS-Authentifizierung:
- Authentifiziert: Stripe versucht, die Zahlung durchzuführen, und der PaymentIntent geht in den Status
processing
über. - Fehlgeschlagen: Der PaymentIntent geht in den Status
requires_
über. Dies gibt an, dass Sie es mit einer anderen Zahlungsmethode versuchen müssen oder 3DS durch erneute Bestätigung erneut versucht werden kann.payment_ method - Andere Szenarien: Je nach dem Grund, aus dem 3DS für die Zahlung ausgelöst wurde, kann es in Grenzfällen zulässig sein, die Autorisierung für die Zahlung fortzusetzen. Beispielsweise führt das Ergebnis
attempt_
zu einer Zahlung und der PaymentIntent wechselt in den Statusacknowledged processing
.- Eine Ausnahme bildet die Erstellung von indischen E-Mandaten für wiederkehrende Zahlungen. Alle anderen Ergebnisse außer einem
authenticated
Ergebnis werden als Fehlschlag behandelt.
- Eine Ausnahme bildet die Erstellung von indischen E-Mandaten für wiederkehrende Zahlungen. Alle anderen Ergebnisse außer einem
- Authentifiziert: Stripe versucht, die Zahlung durchzuführen, und der PaymentIntent geht in den Status
- Der PaymentIntent wechselt je nach Zahlungsergebnis zu einem der folgenden Status:
succeeded
,requires_
odercapture requires_
.payment_ method
Um nachzuverfolgen, ob bei einer Kartenzahlung das 3DS-Verfahren unterstützt und versucht wurde, lesen Sie die Eigenschaft three_d_secure der Karteninformationen in den payment_
der Zahlung. Stripe füllt die Eigenschaft three_
aus, wenn die Kundin/der Kunde versucht, die Karte zu authentifizieren. three_
gibt das Ergebnis der Authentifizierung an.
Radar-Regeln im Dashboard verwenden
Stripe bietet Standard-Radarregeln, um 3DS dynamisch anzufordern, wenn ein PaymentIntent oder SetupIntent erstellt oder bestätigt wird. Sie können diese Regeln in Ihrem Dashboard konfigurieren.
Wenn Sie über Radar for Fraud Teams verfügen, können Sie nutzerdefinierte 3DS-Regeln hinzufügen.
3DS manuell über die API anfordern
Bei der Standardmethode zum Auslösen von 3DS handelt es sich um die Verwendung von Radar zur dynamischen Anforderung von 3D Secure basierend auf der Risikostufe und weiteren Anforderungen. Manuelles Auslösen von 3DS ist nur für erfahrene Nutzer/innen vorgesehen, die Stripe mit ihrer eigenen Betrugs-Engine vernetzen.
Um 3DS manuell auszulösen, legen Sie payment_
auf any
oder challenge
fest, je nachdem, wofür Sie beim Erstellen oder Bestätigen eines PaymentIntent, SetupIntent oder einer Checkout-Sitzung eine Optimierung erzielen möchten. Dieses Verfahren ist sowohl bei einmaligen Zahlungen also auch bei der Einrichtung einer Zahlungsmethode für zukünftige Zahlungen dasselbe. Wenn Sie diesen Parameter angeben, versucht Stripe, 3DS auszuführen, und setzt alle Radar-Regeln für Dynamic 3D Secure für den PaymentIntent, den SetupIntent oder die Checkout-Sitzung außer Kraft.
Wann Sie diesen Parameter angeben, richtet sich danach, wann Ihre Betrugs-Engine ein Risiko erkennt. Wenn Ihre Betrugs-Engine beispielsweise nur Kartendaten prüft, wissen Sie, ob Sie 3DS anfordern müssen, bevor Sie den PaymentIntent oder SetupIntent erstellen. Überprüft Ihre Betrugs-Engine sowohl Karten- als auch Transaktionsdaten, geben Sie den Parameter während der Bestätigung an, sobald Ihnen mehr Informationen vorliegen. Übergeben Sie dann den resultierenden PaymentIntent oder SetupIntent an Ihren Client, um den Vorgang abzuschließen.
Untersuchen Sie die Verwendung des Parameters request_
für alle unterschiedlichen Fälle in der API-Dokumentation:
- PaymentIntent erstellen
- PaymentIntent bestätigen
- SetupIntent erstellen
- SetupIntent bestätigen
- Checkout-Sitzung erstellen
Legen Sie request_
auf any
fest, um 3DS manuell mit einer Präferenz für einen frictionless
Ablauf anzufordern, um die Wahrscheinlichkeit zu erhöhen, dass die Authentifizierung ohne zusätzliche Kundeneingaben abgeschlossen wird.
Legen Sie request_
auf challenge
fest, um 3DS mit einer Präferenz für einen challenge
-Ablauf anzufordern, bei dem die Kundin/der Kunde auf eine Aufforderung zur aktiven Authentifizierung reagieren muss.
Stripe kann Ihre Präferenz nicht garantieren, da der Aussteller den endgültigen Authentifizierungsablauf bestimmt. Sie können herausfinden, welches der letztendliche Authentifizierungsablauf war, indem Sie den authentication_
für die Eigenschaft three_
der Zahlung oder des SetupAttempt überprüfen. Um mehr über 3DS-Abläufe zu erfahren, lesen Sie unseren Leitfaden.
Vorsicht
Stripe verlangt von Ihrer Kundin/Ihrem Kunden nur dann eine Authentifizierung, um die Zahlung erfolgreich abzuschließen, wenn die 3DS-Authentifizierung für eine Karte verfügbar ist. Wenn sie für die betreffende Karte nicht verfügbar ist oder wenn während des Authentifizierungsvorgangs ein Fehler auftritt, wird die Zahlung normal durchgeführt.
Die SCA-Regeln von Stripe werden automatisch ausgeführt, unabhängig davon, ob Sie 3DS manuell anfordern oder nicht. All Ihre 3DS-Anforderungen sind zusätzlich und für SCA nicht erforderlich.
3DS-Ablauf anzeigen
3DS-Ablauf testen
Verwenden Sie eine Stripe-Testkarte mit einer beliebigen CVC/Prüfzimmer, Postleitzahl und einem beliebigen zukünftigen Ablaufdatum, um abfragebasierte 3DS-Authentifizierungsabläufe auszulösen, während Sie sich im Testmodus befinden.
Wenn Sie eine Integration mit Ihren Test-API-Schlüsseln erstellen, wird beim Authentifizierungsvorgang eine Pseudo-Authentifizierungsseite angezeigt. Auf dieser Seite können Sie die Zahlung autorisieren oder stornieren. Bei der Autorisierung der Zahlung wird eine erfolgreiche Authentifizierung simuliert und Sie werden an die angegebene Rückgabe-URL weitergeleitet. Durch Klicken auf die Schaltfläche Fehlgeschlagen wird ein erfolgloser Authentifizierungsversuch simuliert.
Bei allen anderen Visa- und Mastercard-Testkarten ist keine Authentifizierung durch die Kartenaussteller der Kundinnen/Kunden erforderlich.
Sie können individuelle Radar-Regeln im Testmodus erstellen, um die Authentifizierung für Testkarten auszulösen. Erfahren Sie mehr über das Testen Ihrer Radar-Regeln.
Angefochtene Zahlungen und Haftungsverlagerung
Die Haftungsverlagerungsregel gilt für Zahlungen, die erfolgreich mit 3D Secure oder einem gleichwertigen Kryptogramm wie Apple Pay oder Google Pay in einigen Fällen authentifiziert wurden. Wenn Karteninhaber/innen eine 3DS-Zahlung als betrügerisch anfechten, geht die Haftung von Ihnen auf den/die Kartenaussteller/in über.
Wenn eine Karte 3DS nicht unterstützt oder während des Authentifizierungsvorgangs ein Fehler auftritt, wird die Zahlung normal ausgeführt. In diesem Fall geht die Haftung in der Regel nicht auf den Aussteller über, da keine erfolgreiche 3DS-Authentifizierung stattgefunden hat.
In der Praxis bedeutet dies, dass Sie keine als betrügerisch markierten Zahlungsanfechtungen erhalten werden, wenn die Zahlung unter die Haftungsverlagerungsregel fällt, Sie aber möglicherweise eine frühzeitige Betrugswarnung erhalten. Es ist immer noch möglich, dass Sie nur einen geringen Prozentsatz von Zahlungsanfechtungen aufgrund von Betrug erhalten. Im Folgenden listen wir einige Fälle auf, in denen die Haftungsverlagerungsregel möglicherweise nicht gilt.
Möglicherweise erhalten Sie eine Anfrage zu einer angefochtenen Zahlung zu einer erfolgreich mit 3DS authenfizierten Zahlung. Diese Art von Zahlungsanfechtung führt nicht zu einer Rückbuchung, da es sich nur um eine Anfrage nach Informationen handelt.
Anfragen zu Abbuchungen, die mit 3D Secure authentifiziert werden, müssen Sie unbedingt beantworten. Wenn Sie nicht reagieren, kann die Karteninhaberbank eine Rückbuchung, auch „Rückbuchung ohne Antwort“ genannt, einleiten, was die Haftungsverlagerung zunichtemachen könnte. Um Rückbuchungen von 3DS-Abbuchungen ohne Antwort zu verhindern, sollten Sie unbedingt ausreichend Informationen zu der Zahlung übermitteln. Sie sollten angeben, was bestellt wurde, wie und an wen es geliefert wurde (ob es sich um physische oder elektronische Waren oder Dienstleistungen handelt).
Notiz
Falls eine Kundin/ein Kunde eine Zahlung aus einem anderen Grund anficht (z. B. Produkt nicht erhalten), wird das Standardverfahren zur Abwicklung angefochtener Zahlungen eingesetzt. Treffen Sie daher gut überlegte Entscheidungen hinsichtlich Ihrer Unternehmensführung und achten Sie insbesondere darauf, wie mit Zahlungsanfechtungen umgegangen wird und wie Sie diese ganz vermeiden können.
Eine Haftungsverlagerung kann auch dann stattfinden, wenn das Kartennetzwerk 3DS anfordert, dies jedoch für die Karte oder den Aussteller nicht verfügbar ist. Dies kann geschehen, wenn der 3DS-Server des Ausstellers ausfällt, oder wenn der Aussteller 3DS nicht unterstützt, obwohl das Kartennetzwerk eine Unterstützung verlangt. Während des Zahlungsvorgangs werden Karteninhaber/innen nicht aufgefordert, die 3DS-Authentifizierung abzuschließen, da die Karte nicht registriert ist. Obwohl Karteninhaber/innen die 3DS-Authentifizierung nicht durchgeführt haben, kann die Haftung dennoch auf den Aussteller übergehen.
Stripe gibt den angeforderten Electronic Commerce Indicator (ECI) (Indikator für den elektronischen Handel) im electronic_
des Ergebnisses der 3DS-Authentifizierung zurück. Dieser Indikator kann dabei helfen, zu ermitteln, ob eine Zahlung der Haftungsverlagerungsregel entsprechen sollte. Da 3DS im Anschluss an die Antwort auf die anfängliche Zahlungsabsicht durchgeführt wird, erhalten Sie diese in der Regel von dem Ereignis charge.
, das an eines Ihrer Ereignisziele gesendet wird. Allerdings könnte ein angeforderter ECI in der Antwort des Ausstellers herabgestuft werden, was wir nicht bekannt geben.
Manchmal kommt es bei Zahlungen, die mit 3DS erfolgreich authentifiziert wurden, nicht zu einer Haftungsverlagerung. Dies ist selten und kann beispielsweise vorkommen, wenn Ihr Konto einen übermäßigen Anteil an Betrug aufweist und Sie an einem Betrugsüberwachungsprogramm teilnehmen. Bestimmte Netzwerke haben zudem einige Branchen von der Haftungsverlagerung ausgenommen – zum Beispiel unterstützt Visa keine Haftungsverlagerung bei Unternehmen, die Überweisungen oder Zahlungsanweisungen durchführen, bei Nicht-Finanzinstituten, die Fremd- oder Nicht-Fiat-Währungen anbieten oder beim Kauf oder Aufladen von Wertkarten.
In seltenen Fällen kann es vorkommen, dass die Haftungsverlagerung nach der Autorisierung herabgestuft wird oder das System der Zahlungsablehnung der Kartennetzwerke die Haftungsverlagerung für eine Transaktion nicht erkennt. Wenn Sie in diesen Fällen die Zahlungsanfechtung ablehnen, fügt Stripe automatisch den angeforderten ECI und das Ergebnis der 3DS-Authentifizierung zu Ihren Beweisdaten hinzu. Wir empfehlen Ihnen, zusätzliche Details anzugeben, um Ihre Chancen, die Zahlungsanfechtung für sich zu entscheiden, zu steigern.
Nutzerdefinierte Radar-Regeln für 3DS und Haftungsverlagerung
Wenn Sie Radar for Fraud Teams nutzen, können Sie Ihre Regeln anpassen. So steuern Sie, wann 3DS angefordert werden soll und wie jede spezifische Authentifizierung und Haftungsverlagerung behandelt werden soll. Die Regeln der starken Kundenauthentifizierung (SCA) von Stripe werden automatisch und unabhängig von nutzerdefinierten Radar-Regeln ausgeführt und blockieren nicht authentifizierte Zahlungen, sofern sie nicht ausgenommen sind.