2010-08-05 80 views
5

J'ai actuellement une application qui utilise l'API ARB de Authorize.net. J'ai tout ce qui fonctionne comme je le crois, mais j'aimerais vraiment recevoir un message silencieux du serveur de test authorize.net (test.authorize.net), où mon compte est créé.Test de publication silencieuse avec Authorize.net

J'ai le mode test désactivé et la transaction n'a pas de débogage. Avec ceci, j'ai déjà écrit une page où je peux simuler le poteau, mais je n'ai pas encore vu un.

Est-ce que ceux-ci ont lieu lors de la création d'un abonnement ou lors du chargement de la carte? J'ai lu plusieurs articles disant que dans divers modes de test, les messages silencieux ne sont pas envoyés.

Existe-t-il un moyen de forcer une transaction à exécuter une publication silencieuse lors de l'utilisation d'ARB sur test.authorize.net?

Merci, Eric

Répondre

9

Vous ne pouvez pas tester Poste silencieux par Authnet sans courir les transactions en direct. Cependant, il est très simple de tester vous-même votre script Silent Post. Tout ce que Post Silent Post fait est POSTing des données de transaction qui est exactement la même chose qu'une réponse API AIM (à une exception près: vous obtenez également un ID d'abonnement avec des transactions ARB). Donc, pour tester tout ce que vous devez faire est de recréer un POST simulé. Cela est aussi simple que de créer un formulaire avec les mêmes données et de définir l'action sur votre URL Silent Post.

Voici un exemple de formulaire que j'utilise:

<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

Merci John. Je l'ai vu sur votre site Web, et j'ai mis en œuvre cela, j'étais juste un peu confus avec ce qui était possible/impossible avec un compte de test – Eric

+0

Merci pour la réponse parfaite. Juste pour rendre je ai fait une version "plus jolie" qui est modifiable sur votre navigateur: http://codepen.io/gillytech/pen/KbiEF – gillytech

+0

^^^^ va à un 404 maintenant :( –

0

En plus de la réponse de John Conde qui est excellent, je voudrais ajouter que vous devriez essayer de poster ces informations à partir d'une URL différente depuis votre site principal. Dans certaines situations, vous ne souhaitez pas accepter les publications provenant de sites Web externes. La désactivation de cette fonctionnalité est une fonctionnalité de sécurité. Donc, si vous allez tester, allez sur un site jsfiddle et faites votre post à partir de là.