ÜberblickEine 3DS 2.0 Zahlungssequenz kann aus den folgenden verschiedenen Aktivitäten bestehen: - Versionierung
- Anfrage von ACS- und DS-Protokol-Version(en), die mit dem Kartenkontenbereich korrespondieren sowie einer optionalen 3DS Method URL
3DS Methode Authentisierung Challenge Autorisierung
Server-2-Server Sequenzdiagramm ![Server-2-Server Sequence Diagram Server-2-Server Sequence Diagram](/download/attachments/25296277/3DS_2.0_Server-2-Server_Detail.png?version=1&modificationDate=1571646882943&api=v2)
Info |
---|
Beachten Sie bitte, dass die Kommunikation zwischen Client und Access Control Server (ACS) über iFrames implementiert ist. Daher kommen die Antworten in einem HTML-Subdokument an und Sie können entsprechende Event-Listener in Ihrem Root-Dokument einrichten. Alternativ könnten Sie alleinig auf die asynchronen Benachrichtigungen an ihr Backend vertrauen. In jenen Fällen müssen Sie eventuell Methoden wie Long Polling, SSE oder Websockets zum Update des Clients in Betracht ziehen. |
Initiierung der ZahlungDie anfängliche Anfrage an das Multiexcerpt include |
---|
SpaceWithExcerpt | DE |
---|
MultiExcerptName | Platform-Name |
---|
PageWithExcerpt | Wording |
---|
| ist unabhängig vom zugrundeliegenden 3DS-Protokoll gleich.
![](/download/attachments/25296277/3DS_2.0_Server-2-Server_Overview.png?version=1&modificationDate=1571646882942&api=v2)
Um eine Server-zu-Server 3-D Secure Kartenzahlungssequenz zu starten, senden Sie bitte folgende Schlüssel-Wert-Paare an Multiexcerpt include |
---|
SpaceWithExcerpt | DE |
---|
MultiExcerptName | BaseURL |
---|
PageWithExcerpt | Wording |
---|
| direct.aspx. Aufruf-ElementeHinweis: Bei einer vom Händler initiierten, wiederkehrenden Zahlung sind die JSON-Objekte (außer credentialOnFile und card), die URLNotify und die TermURL keine Pflichtparameter, da kein 3D Secure und auch keine Risikobewertung durch die kartenausgebende Bank stattfindet und das Ergebnis der Zahlungsanfrage direkt in der Response mitgeteilt wird. Table Filter |
---|
inverse | false |
---|
default | Description |
---|
isFirstTimeEnter | false |
---|
hideColumns | true |
---|
sparkName | Sparkline |
---|
hidePane | true |
---|
datepattern | dd M yy |
---|
id | 1625087601154_-1463149623 |
---|
worklog | 365|5|8|y w d h m|y w d h m |
---|
isOR | AND |
---|
separator | Point (.) |
---|
order | 0 |
---|
| Multiexcerpt include |
---|
SpaceWithExcerpt | EN |
---|
MultiExcerptName | request_elements |
---|
PageWithExcerpt | EN:Server-2-Server Integration |
---|
|
|
Antwort-Elemente Table Filter |
---|
inverse | false |
---|
default | Description |
---|
isFirstTimeEnter | false |
---|
hideColumns | true |
---|
sparkName | Sparkline |
---|
hidePane | true |
---|
datepattern | dd M yy |
---|
id | 1625087653555_-1858962854 |
---|
worklog | 365|5|8|y w d h m|y w d h m |
---|
isOR | AND |
---|
separator | Point (.) |
---|
order | 0 |
---|
| Multiexcerpt include |
---|
SpaceWithExcerpt | EN |
---|
MultiExcerptName | response_elements |
---|
PageWithExcerpt | EN:Server-2-Server Integration |
---|
|
|
Das Objekt versioningData gibt die EMV 3DS Protokoll-Versionen (d.h. 2.1.0 oder höher) an, die vom Access Control Server des Issuers unterstützt werden.
Wenn die entsprechenden Felder der Protokoll-Version NULL sind, bedeutet dies, dass der BIN-Bereich des Karten-Issuers nicht für 3DS 2.0 registriert ist und ein Fallback auf 3DS 1.0 für Transaktionen erforderlich ist, die unter den Geltungsbereich der PSD2 SCA fallen.
Achten Sie beim Zerlegen von versioningData bitte auch auf das Subelement errorDetails , das den Grund angibt, falls einige Felder nicht ausgefüllt sind (z.B. Ungültige Kontonumber des Karteninhabers übergeben, nicht verfügbare Kartenbereichsdaten, Fehler beo Codieren/Serialisieren der 3DS Methoden-Daten usw.)
versioningData BASEURL=
Multiexcerpt include |
---|
SpaceWithExcerpt | DE |
---|
MultiExcerptName | BaseURL |
---|
PageWithExcerpt | Wording |
---|
|
Multiexcerpt include |
---|
SpaceWithExcerpt | EN |
---|
MultiExcerptName | versioningdata |
---|
PageWithExcerpt | EN:Server-2-Server Integration |
---|
|
3DS MethodeDie 3DS Methode ermöglicht das Erfassen zusätzlicher Browserinformationen durch einen ACS vor Erhalt der Authensisierungsanfrage (AReq), um die Risikobeurteilung der Transaktion zu erleichtern. Die Unterstützung der 3DS Methode ist optional und liegt im Ermessen des Issuers.
Das Objekt versioningData enthält einen Wert für threeDSMethodURL . Der Händler sollte die 3DS Methode über einen versteckten HTML-iFrame im Browser des Karteninhabers aufrufen und ein Formular mit einem Feld namens threeDSMethodData über HTTP POST an die ACS 3DS Methoden-URL senden.
3DS Methode: threeDSMethodURL ![](/download/attachments/25296277/3DS_2.0_Server-2-Server_3DS_Method.png?version=1&modificationDate=1571646882940&api=v2)
Beachten Sie bitte, dass die threeDSMethodURL vom Multiexcerpt include |
---|
SpaceWithExcerpt | DE |
---|
MultiExcerptName | Platform-Name |
---|
PageWithExcerpt | Wording |
---|
| ausgefüllt wird, falls der Issuer die 3DS Methode nicht unterstützt. Der 3DS Methoden-Formular-Post wie unten dargestellt muss unabhängig davon ausgeführt werden, ob dies vom Issuer unterstützt wird. Das ist notwending, um die direkte Kommunikation zwischen dem Browser und dem Multiexcerpt include |
---|
SpaceWithExcerpt | DE |
---|
MultiExcerptName | Platform-Name |
---|
PageWithExcerpt | Wording |
---|
| im Falle einer angeordneten Challenge oder eines reibungslosen Ablaufs zu erleichtern.
3DS Method: Keine IssuerthreeDSMethodURL ![](/download/attachments/25296277/3DS_2.0_Server-2-Server_No_3DS_Method.png?version=1&modificationDate=1571646882939&api=v2)
Multiexcerpt include |
---|
SpaceWithExcerpt | EN |
---|
MultiExcerptName | 3ds_method |
---|
PageWithExcerpt | EN:Server-2-Server Integration |
---|
|
Der ACS interagiert mit dem Browser des Karteninhabers über den HTML-iFrame und speichert dann die zutreffenden Werte mit der 3DS Server Transaction ID für die Verwendung, wenn eine nachfolgende Authentisierungs-Nachricht empfangen wird, welche die gleiche 3DS Server Transaction ID enthält.
Nachdem die 3DS Methode abgeschlossen ist, weist der ACS den Browser des Karteninhabers über das iFrame-Antwortdokument an, threeDSMethodData als ein verstecktes Formularfeld an die 3DS Method Notification URL zu übermitteln.
ACS Response Document Multiexcerpt include |
---|
SpaceWithExcerpt | EN |
---|
MultiExcerptName | acs_response |
---|
PageWithExcerpt | EN:Server-2-Server Integration |
---|
|
3DS Method Notification Form Multiexcerpt include |
---|
SpaceWithExcerpt | EN |
---|
MultiExcerptName | 3ds_method_notification_form |
---|
PageWithExcerpt | EN:Server-2-Server Integration |
---|
|
Note |
---|
Beachten SIe bitte, dass die threeDSMethodNotificationURL wie sie in den Base64-codierten threeDSMethodData eingebettet ist, auf das Multiexcerpt include |
---|
SpaceWithExcerpt | DE |
---|
MultiExcerptName | Platform-Name |
---|
PageWithExcerpt | Wording |
---|
| weist und nicht verändert werden darf. Die Händler-Benachrichtigung wird an die URLNotify geliefert, wie sie in der Originalanfrage übermittelt oder für die MerchantID im Multiexcerpt include |
---|
SpaceWithExcerpt | DE |
---|
MultiExcerptName | Platform-Name |
---|
PageWithExcerpt | Wording |
---|
| konfiguriert ist. |
AuthentisierungWenn die 3DS-Methode vom ACS des Issuers unterstützt wird und vom Händler aufgerufen wurde, setzt das Multiexcerpt include |
---|
SpaceWithExcerpt | DE |
---|
MultiExcerptName | Platform-Name |
---|
PageWithExcerpt | Wording |
---|
| automatisch mit der Authentisierungsanfrage fort, nachdem die 3DS-Methode abgeschlossen ist (d.h. 3DS Methoden-Benachrichtigung).
Das Ergebnis der Authentisierung wird per HTTP POST an die URLNotify übertragen. Es kann anzeigen, dass der Karteninhaber authentisiert worden ist oder dass eine weitere Interaktion des Karteninhabers (d.h. Challenge) für den Abschluss der Authentisierung erforderlich ist.
Falls für den Karteninhaber eine Challenge für nötig angesehen ist, überträgt das Multiexcerpt include |
---|
SpaceWithExcerpt | DE |
---|
MultiExcerptName | Platform-Name |
---|
PageWithExcerpt | Wording |
---|
| ein JSON-Objekt im Body der HTTP Browser-Antwort mit den Elementen acsChallengeMandated , challengeRequest , base64EncodedChallengeRequest und acsURL . Anderenfalls setzt das Multiexcerpt include |
---|
SpaceWithExcerpt | DE |
---|
MultiExcerptName | Platform-Name |
---|
PageWithExcerpt | Wording |
---|
| in einem reibungslosen Ablauf automatisch fort und antwortet dem Browser des Karteninhabers, sobald die Autorisierung abgeschlossen ist.
KartzeninhaberKarteninhaber-Challenge: Browser-Antwort ![](/download/attachments/25296277/browserChallengeResponse.png?version=1&modificationDate=1571646882937&api=v2)
Browser Challenge-AntwortDatenelemente Table Filter |
---|
inverse | false |
---|
default | Description |
---|
isFirstTimeEnter | false |
---|
hideColumns | true |
---|
sparkName | Sparkline |
---|
hidePane | true |
---|
datepattern | dd M yy |
---|
id | 1625088204675_-1216041384 |
---|
worklog | 365|5|8|y w d h m|y w d h m |
---|
isOR | AND |
---|
separator | Point (.) |
---|
order | 0 |
---|
| Multiexcerpt include |
---|
SpaceWithExcerpt | EN |
---|
MultiExcerptName | challenge_response |
---|
PageWithExcerpt | EN:Server-2-Server Integration |
---|
|
|
Schema Multiexcerpt include |
---|
SpaceWithExcerpt | EN |
---|
MultiExcerptName | schema |
---|
PageWithExcerpt | EN:Server-2-Server Integration |
---|
|
Beispiel Multiexcerpt include |
---|
SpaceWithExcerpt | EN |
---|
MultiExcerptName | sample |
---|
PageWithExcerpt | EN:Server-2-Server Integration |
---|
|
Authentisierungs-BenachrichtigungDie Datenelemente der Authentisierungs-Benachrichtigung stehen in folgender Tabelle. Table Filter |
---|
inverse | false |
---|
default | Description |
---|
isFirstTimeEnter | false |
---|
hideColumns | true |
---|
sparkName | Sparkline |
---|
hidePane | true |
---|
datepattern | dd M yy |
---|
id | 1625088329265_798287171 |
---|
worklog | 365|5|8|y w d h m|y w d h m |
---|
isOR | AND |
---|
separator | Point (.) |
---|
order | 0 |
---|
| Multiexcerpt include |
---|
SpaceWithExcerpt | EN |
---|
MultiExcerptName | authentification_notification |
---|
PageWithExcerpt | EN:Server-2-Server Integration |
---|
|
|
Browser ChallengeWenn eine Challenge für nötig angesehen wird (siehe challengeRequest), erfolgt die Browser Challenge im Browser des Karteninhabers. Zum Erzeugen einer Challenge ist es erforderlich, den Wert base64EncodedChallengeRequest über ein HTML-iFrame an die ACS URL zu posten.
Challenge-Anfrage Multiexcerpt include |
---|
SpaceWithExcerpt | EN |
---|
MultiExcerptName | challenge_request |
---|
PageWithExcerpt | EN:Server-2-Server Integration |
---|
|
Sie können die Operationen init3DSChallengeRequest oder createIFrameAndInit3DSChallengeRequest aus dem nca3DSWebSDK verwenden, um die Challenge-Nachricht an den Browser des Karteninhabers zu übermitteln.
3DS Challenge-Anfrage initialisieren - Beispiel Multiexcerpt include |
---|
SpaceWithExcerpt | EN |
---|
MultiExcerptName | init_challenge_request |
---|
PageWithExcerpt | EN:Server-2-Server Integration |
---|
|
Sobald die Challenge des Karteninhabers abgeschlossen, abgebrochen oder per Zeitüberschreitung beendet ist, weist der ACS den Browser an, die Ergebnisse per Post an die in der Challenge-Anfrage angegebene Benachrichtigungs-URL zu senden und eine Ergebnis-Anfrage (RReq) über den Directory Server an den 3DS Server zu senden.
Note |
---|
Beachten Sie bitte, dass die in der Challenge-Anfrage übergebene Benachrichtigungs-URL auf das Multiexcerpt include |
---|
SpaceWithExcerpt | DE |
---|
MultiExcerptName | Platform-Name |
---|
PageWithExcerpt | Wording |
---|
| zeigt und nicht verändert werden darf. |
AutorisierungNachdem die erfolgreiche Authentisierung des Karteninhabers oder der Nachweis der versuchten Authentisierung/Verifizierung bereitgestellt ist, setzt das Multiexcerpt include |
---|
SpaceWithExcerpt | DE |
---|
MultiExcerptName | Platform-Name |
---|
PageWithExcerpt | Wording |
---|
| die Zahlungsautorisierung automatisch fort.Falls die Authentisierung des Karteninhabers nicht erfolgreich war oder der Nachweise der versuchten Authentisierung/Verifizierung nicht bereitgestellt werden kann, setzt das Multiexcerpt include |
---|
SpaceWithExcerpt | DE |
---|
MultiExcerptName | Platform-Name |
---|
PageWithExcerpt | Wording |
---|
| nicht mit einer Autorisierungsanfrage fort.In beiden Fällen liefert das Multiexcerpt include |
---|
SpaceWithExcerpt | DE |
---|
MultiExcerptName | Platform-Kurz |
---|
PageWithExcerpt | Wording |
---|
| eine endgültige Benachrichtigung an die vom Händler angegebene URLNotify mit den Datenelementen gemäß nachstehender Tabelle.Zahlungs-Benachrichtigung Table Filter |
---|
inverse | false |
---|
default | Description |
---|
isFirstTimeEnter | false |
---|
hideColumns | true |
---|
sparkName | Sparkline |
---|
hidePane | true |
---|
datepattern | dd M yy |
---|
id | 1625088615039_2066111594 |
---|
worklog | 365|5|8|y w d h m|y w d h m |
---|
isOR | AND |
---|
separator | Point (.) |
---|
order | 0 |
---|
| Multiexcerpt include |
---|
SpaceWithExcerpt | EN |
---|
MultiExcerptName | payment_notification |
---|
PageWithExcerpt | EN:Server-2-Server Integration |
---|
|
|
Browser Zahlungs-AntwortZusätzlich werden nachstehende Datenelemente im JSON-Format im Body der HTTP-Antwort zum Browser des Karteninhabers übertragen. Beachten Sie bitte, dass die Datenelemente (d.h. MID , Len , Data ) base64-codiert sind. Datenelemente Table Filter |
---|
inverse | false |
---|
default | Description |
---|
isFirstTimeEnter | false |
---|
hideColumns | true |
---|
sparkName | Sparkline |
---|
hidePane | true |
---|
datepattern | dd M yy |
---|
id | 1625088666860_1486898178 |
---|
worklog | 365|5|8|y w d h m|y w d h m |
---|
isOR | AND |
---|
separator | Point (.) |
---|
order | 0 |
---|
| Multiexcerpt include |
---|
SpaceWithExcerpt | EN |
---|
MultiExcerptName | payment_response |
---|
PageWithExcerpt | EN:Server-2-Server Integration |
---|
|
|
Schema Multiexcerpt include |
---|
SpaceWithExcerpt | EN |
---|
MultiExcerptName | response_schema |
---|
PageWithExcerpt | EN:Server-2-Server Integration |
---|
|
Händler sollten diese Datenelemente zur Entschlüsselung und für den Abgleich mit der Zahlungs-Benachrichtigung am ihren Server weiterleiten. Basierend auf dem Zahlungsergebnis kann der Händler-Server eine entsprechende Antwort an den Browser des Karteninhabers senden (z.B. Erfolgsseite). Entschlüsseltes Objekt Data Table Filter |
---|
inverse | false |
---|
default | Description |
---|
isFirstTimeEnter | false |
---|
hideColumns | true |
---|
sparkName | Sparkline |
---|
hidePane | true |
---|
datepattern | dd M yy |
---|
id | 1625088731125_-874618917 |
---|
worklog | 365|5|8|y w d h m|y w d h m |
---|
isOR | AND |
---|
separator | Point (.) |
---|
order | 0 |
---|
| Multiexcerpt include |
---|
SpaceWithExcerpt | EN |
---|
MultiExcerptName | decrypted_data |
---|
PageWithExcerpt | EN:Server-2-Server Integration |
---|
|
|
Beispiel für entschlüsseltes Objekt Data Multiexcerpt include |
---|
SpaceWithExcerpt | EN |
---|
MultiExcerptName | sample_decrypted_data |
---|
PageWithExcerpt | EN:Server-2-Server Integration |
---|
|
|