Wenn Sie eine Antwort auf eine über unser 3DS API gesendete Anfrage erhalten, muss Ihr System die folgenden Überprüfungen der zurückgegebenen Werte (sofern zutreffend) durchführen, um sicherzustellen, dass die Anfrage erfolgreich bearbeitet wurde.
Struktur der Antwort
Ihr System wird zahlreiche Felder im Antwortobjekt zurückerhalten. Sie müssen den Inhalt dieser Felder interpretieren, um sicherzustellen, dass es sich um die erwarteten Werte handelt.
Im Folgenden finden Sie ein Beispiel für eine Antwort von THREEDLOOKUP:
{
"requestreference": "A3579dkvx",
"response": [{
"cachetoken": "XXXXX",
"errorcode": "0",
"errormessage": "Ok",
"maskedpan": "490049######0501",
"paymenttypedescription": "DELTA",
"requesttypedescription": "THREEDLOOKUP",
"threedstransactionid": "733ab129-1126-4b80-97a4-f3d8fee9c564",
"threedversion": "2.2.0",
"transactionstartedtimestamp": "2022-05-24 12:59:27"
}],
"secrand": "VqOIoVXOJP7rZuxw",
"version": "1.00"
}
<responseblock version="3.67">
<requestreference>A3579dkvx</requestreference>
<response type="THREEDLOOKUP">
<operation>
<cachetoken>XXXXX</cachetoken>
</operation>
<billing>
<payment type="DELTA">
<pan>490049######0501</pan>
</payment>
</billing>
<error>
<message>Ok</message>
<code>0</code>
</error>
<threedsecure>
<transactionid>733ab129-1126-4b80-97a4-f3d8fee9c564</version>
</threedsecure>
<timestamp>2022-05-24 12:59:27</timestamp>
</response>
<secrand>VqOIoVXOJP7rZuxw</secrand>
</responseblock></responseblock>
Fehlercode
Die Seite errorcode ist ein grundlegend wichtiges Feld, da es das Ergebnis der eingereichten Anfrage anzeigt. Ihr System muss den zurückgegebenen Code überprüfen und die Situation entsprechend dem zurückgegebenen Code behandeln. Im Folgenden finden Sie eine Liste der üblichen errorcode Werte, die zurückgegeben werden können und die Ihr System erwarten und verarbeiten können sollte:
Errorcode 22000 wird zurückgegeben, wenn die paymenttypedescription für 3-D Secure nicht unterstützt wird. Wenn dieser Fehler zurückgegeben wird, können Sie mit der Zahlung fortfahren, obwohl Sie sich bewusst sein sollten, dass es in diesem Szenario keine Haftungsumkehr gibt.
{
"requestreference":"W23-fjgvn3d8",
"version":"1.00",
"response":[{
"errorcode": "22000",
"errormessage": "Bypass",
"requesttypedescription": "ERROR",
"transactionreference": "44-2-81001",
"transactionstartedtimestamp": "2022-03-29 06:43:42"
}],
"secrand":"zO9"
}
<responseblock version="3.67">
<requestreference>X617j6u8v</requestreference>
<response type="ERROR">
<error>
<code>22000</code>
<message>Bypass</message>
</error>
<timestamp>2022-03-29 06:43:42</timestamp>
<transactionreference>44-2-81001</transactionreference>
</response>
<secrand>D2i8Z</secrand>
</responseblock>
Errorcode 60031 wird zurückgegeben, wenn die Bank des Kunden für 3-D Secure nicht unterstützt wird. Wenn dieser Fehler zurückgegeben wird, können Sie mit der Zahlung fortfahren, obwohl Sie sich bewusst sein sollten, dass es in diesem Szenario keine Haftungsumkehr gibt.
{
"requestreference":"W23-fjgvn3d8",
"version":"1.00",
"response":[{
"accounttypedescription": "ECOM",
"errorcode": "60031",
"errormessage": "Invalid acquirer for 3-D Secure",
"issuercountryiso2a": "US",
"livestatus": "0",
"maskedpan": "630485######0701",
"merchantcountryiso2a": "GB",
"merchantname": "Test Merchant",
"merchantnumber": "00000000",
"operatorname": "webservices@example.com",
"paymenttypedescription": "LASER",
"requesttypedescription": "THREEDQUERY",
"tid": "27882788",
"transactionreference": "44-2-81003",
"transactionstartedtimestamp": "2022-03-28 19:57:15",
"settleduedate": "2022-03-28",
"settlestatus": "0"
}],
"secrand":"zO9"
}
<responseblock version="3.67">
<requestreference>Xpbt194u6</requestreference>
<response type="THREEDQUERY">
<billing>
<payment type="LASER">
<issuercountry>US</issuercountry>
<pan>630485######0701</pan>
</payment>
</billing>
<error>
<code>60031</code>
<message>Invalid acquirer for 3-D Secure</message>
</error>
<live>0</live>
<merchant>
<merchantcountryiso2a>GB</merchantcountryiso2a>
<merchantname>Test Merchant</merchantname>
<merchantnumber>00000000</merchantnumber>
<operatorname>webservices@example.com</operatorname>
<tid>27882788</tid>
</merchant>
<operation>
<accounttypedescription>ECOM</accounttypedescription>
</operation>
<settlement>
<settleduedate>2022-03-28</settleduedate>
<settlestatus>0</settlestatus>
</settlement>
<timestamp>2022-03-28 19:57:15</timestamp>
<transactionreference>44-2-81003</transactionreference>
</response>
<secrand>bUQL</secrand>
</responseblock>
Eingeschrieben
Wenn die Antwort THREEDQUERY Folgendes enthält enrolled mit dem Wert "N", bedeutet dies, dass die Karte nicht in einem 3-D Secure System angemeldet ist. Bevor Sie eine Autorisierung -Anfrage mit einer nicht registrierten Karte durchführen, müssen Sie zunächst den Wert des Parameters issuercountryiso2a zurückgegeben, um das Land zu ermitteln, in dem die Karte ausgestellt wurde. Wenn das Land des Ausstellers das Vereinigte Königreich oder der EWR ist, können Sie darf nicht die Transaktion fortzusetzen, um die Bestimmungen von PSD2 einzuhalten. Befindet sich das Land des Emittenten jedoch außerhalb des Vereinigten Königreichs und des EWR, können Sie sich dafür entscheiden, die Transaktion fortzusetzen, wobei Sie davon ausgehen, dass keine Haftungsverlagerung stattfindet.
Anforderungstyp
Jede Antwort enthält eine requesttypedescription. Der Wert dieses Feldes, der in der Antwort zurückgegeben wird, sollte immer mit dem in der Anfrage angegebenen Wert übereinstimmen.
Wenn Sie requesttypedescription mit dem Wert "ERROR" erhalten, wurde die Anfrage möglicherweise nicht erfolgreich bearbeitet und Sie müssen der Sache nachgehen.
Live-Status
Dieser Wert wird in den Antwortmeldungen von THREEDQUERY zurückgegeben:
- 0 - Testverarbeitung
- 1 - Live-Verarbeitung
Zurück: Erste Schritte mit 3DS API Nächste: Prüfung der reibungsfreien Strömung - Durchgang