2016-09-29 4 views
0

Ich habe World Pay mit php sdk implementiert, ich habe Worldpay.useTemplateForm({'reusable':true,}) gesetzt, es funktioniert, als ich versuchte, das generierte Token für meine erste Bestellung zu verwenden. Mein Code istWorldpay WorldpayException (400) CVC kann nicht null/leer sein

$worldpay = new Worldpay('T_S_a61fda99-5c06-47fb-abc4-113db39c09d7'); 
$obj = array(
    "token" => "my-generated-toke", //worldpay.js 
    "orderDescription" => "your-order-description", 
    "amount" => 500, 
    "currencyCode" => "GBP", 
    'name' => '', 
    'reusable'=>true 
); 

Aber wie ich für die zweite Ordnung versuchen, das gleiche Token, es gibt mir die folgende Fehlermeldung:

Worldpay WorldpayException (400) CVC can't be null/empty

Antwort

0

ich das Problem behoben haben, bitte einfach in Lohnkonto Welt melden Sie sich mit Ihre Zugangsdaten und klicken Sie dann auf den folgenden Link.

https://online.worldpay.com/settings/risk

Von dort gerade "Card Security Code überprüfen" deaktivieren, so können Sie Ihr Token für mehrere Zeit wiederzuverwenden.

+0

Ich würde nicht empfehlen zu tun, Das deaktiviert die Überprüfung des 3-stelligen Sicherheitscode auf der Rückseite der Karte und reduziert die Sicherheit. – Scriptable

+0

Ich stimme dir zu, Scriptable, aber in meinem Fall muss ich das Karten-Token in der Datenbank speichern, und später wird dieses Token immer wieder verwendet, also wenn wir diese Option einschalten, dann muss es das aktualisieren Token für CVC für jede neue Bestellung, was ziemlich nervig ist. – user1875774

+0

@ user1875774 "ziemlich nervig" - Ich denke, die PCI-Compliance ist ziemlich nervig, aber ich möchte auch wissen, dass meine Kartendetails nicht gespammt werden können! – RemarkLima

1

Sie müssen die CSC-Funktion nicht deaktivieren, Worldpay darf jedoch die CVC-Nummer nicht speichern. Also vor jeder Bestellanfrag sollten Sie rufen:

curl https://api.worldpay.com/v1/tokens/[your token] 
-H "Content-type: application/json" 
-X PUT 
-d '{ 
     "cvc": "123",   
     "clientKey": "T_C_client_key" 
}' 

Ansonsten das nächste Mal versuchen und verwenden, die es Token würde scheitern.

Warum Sie den CVC nicht zusammen mit der Bestellanforderung übergeben können, schlägt mich.

https://developer.worldpay.com/jsonapi/api#cvcfortoken

+0

Dies besagt, dass dies nicht im Code verwendet wird, da wir dann den CVC sehen können ... Was ist besser als das Ausschalten? Nur eine Einschränkung, die man beachten sollte. – RemarkLima