2010-08-05 10 views
5

Ich habe derzeit eine Anwendung, die Authorize.net ARB API verwenden. Ich habe alles funktioniert, wie ich es glaube, aber ich möchte wirklich eine stille Post zurück vom authorize.net Testserver (test.authorize.net) erhalten, wo mein Konto erstellt wird.Testen Silent Post mit Authorize.net

Ich habe den Testmodus deaktiviert, und die Transaktion hat kein Debugging. Damit habe ich bereits eine Seite geschrieben, auf der ich den Post simulieren kann, aber ich muss noch einen sehen.

Erfolgen diese, wenn ein Abonnement erstellt wird oder wenn die Karte belastet wird? Ich habe mehrere Artikel gelesen, die besagen, dass in verschiedenen Testmodi keine stillen Posts gesendet werden.

Gibt es eine Möglichkeit, eine Transaktion eine stille Post zu erzwingen, wenn ARB auf test.authorize.net verwendet?

Danke, Eric

Antwort

9

Sie können nicht testen Stille Post von Authnet ohne Live-Transaktionen ausgeführt werden. Es ist jedoch sehr einfach, Ihr Silent Post-Skript selbst zu testen. All Silent Post macht POST-Transaktionsdaten, die genau mit einer AIM-API-Antwort identisch sind (mit einer Ausnahme: Sie erhalten auch eine Subskriptions-ID mit ARB-Transaktionen). Um alles zu testen, müssen Sie also einen simulierten POST neu erstellen. Dies ist so einfach wie das Erstellen eines Mick-Formulars mit denselben Daten und das Festlegen der Aktion für Ihre Silent Post-URL.

Hier ist ein Musterformular Ich benutze:

<form action="http://www.yourdomain.com/silent-post.php" method="post"> 
<input type="hidden" name="x_response_code" value="1"/> 
<input type="hidden" name="x_response_subcode" value="1"/> 
<input type="hidden" name="x_response_reason_code" value="1"/> 
<input type="hidden" name="x_response_reason_text" value="This transaction has been approved."/> 
<input type="hidden" name="x_auth_code" value=""/> 
<input type="hidden" name="x_avs_code" value="P"/> 
<input type="hidden" name="x_trans_id" value="1821199455"/> 
<input type="hidden" name="x_invoice_num" value=""/> 
<input type="hidden" name="x_description" value=""/> 
<input type="hidden" name="x_amount" value="9.95"/> 
<input type="hidden" name="x_method" value="CC"/> 
<input type="hidden" name="x_type" value="auth_capture"/> 
<input type="hidden" name="x_cust_id" value="1"/> 
<input type="hidden" name="x_first_name" value="John"/> 
<input type="hidden" name="x_last_name" value="Smith"/> 
<input type="hidden" name="x_company" value=""/> 
<input type="hidden" name="x_address" value=""/> 
<input type="hidden" name="x_city" value=""/> 
<input type="hidden" name="x_state" value=""/> 
<input type="hidden" name="x_zip" value=""/> 
<input type="hidden" name="x_country" value=""/> 
<input type="hidden" name="x_phone" value=""/> 
<input type="hidden" name="x_fax" value=""/> 
<input type="hidden" name="x_email" value=""/> 
<input type="hidden" name="x_ship_to_first_name" value=""/> 
<input type="hidden" name="x_ship_to_last_name" value=""/> 
<input type="hidden" name="x_ship_to_company" value=""/> 
<input type="hidden" name="x_ship_to_address" value=""/> 
<input type="hidden" name="x_ship_to_city" value=""/> 
<input type="hidden" name="x_ship_to_state" value=""/> 
<input type="hidden" name="x_ship_to_zip" value=""/> 
<input type="hidden" name="x_ship_to_country" value=""/> 
<input type="hidden" name="x_tax" value="0.0000"/> 
<input type="hidden" name="x_duty" value="0.0000"/> 
<input type="hidden" name="x_freight" value="0.0000"/> 
<input type="hidden" name="x_tax_exempt" value="FALSE"/> 
<input type="hidden" name="x_po_num" value=""/> 
<input type="hidden" name="x_MD5_Hash" value="A375D35004547A91EE3B7AFA40B1E727"/> 
<input type="hidden" name="x_cavv_response" value=""/> 
<input type="hidden" name="x_test_request" value="false"/> 
<input type="hidden" name="x_subscription_id" value="365314"/> 
<input type="hidden" name="x_subscription_paynum" value="1"/> 
<input type="submit"/> 

+0

Danke John. Ich habe das auf Ihrer Website gesehen, und ich habe dies implementiert, ich war nur ein bisschen verwirrt mit dem, was mit einem Testkonto möglich/nicht möglich war – Eric

+0

Danke für die perfekte Antwort. Nur um etwas zurück zu geben, habe ich eine "schönere" Version erstellt, die in Ihrem Browser bearbeitet werden kann: http://codepen.io/gillytech/pen/KbiEF – gillytech

+0

^^^^ geht jetzt zu einem 404 :( –

0

Neben John Conde Antwort, die ich möchte ausgezeichnet ist hinzuzufügen, dass Sie von einer URL mit diesen Daten veröffentlichen versuchen sollte, die anders ist von Ihrer Hauptseite. In bestimmten Situationen möchten Sie keine Posts von externen Websites akzeptieren und es ist eine Sicherheitsfunktion, diese Funktion zu deaktivieren.

Also, wenn Sie gehen zu testen, gehen Sie einfach auf eine JSfiddle-Website und machen Sie Ihre Buchung von dort.