5

我目前有一个使用 Authorize.net 的 ARB API 的应用程序。我的一切都按照我认为的方式工作,但我真的很想收到来自我的帐户创建的 authorize.net 测试服务器 (test.authorize.net) 的无声回复。

我关闭了测试模式,并且事务没有调试。有了这个,我已经写了一个可以模拟帖子的页面,但我还没有看到。

这些是在创建订阅时发生的,还是在卡收费时发生的?我已经阅读了多个项目,说在各种测试模式下,不会发送无声帖子。

在 test.authorize.net 上使用 ARB 时,有没有办法强制事务执行静默发布?

谢谢,埃里克

4

2 回答 2

9

如果不运行实时事务,您将无法通过 Authnet 测试静默发布。但是,自己测试您的 Silent Post 脚本非常简单。Silent Post 所做的只是发布与 AIM API 响应完全相同的交易数据(有一个例外:您还通过 ARB 交易获取订阅 ID)。因此,要对其进行测试,您需要做的就是重新创建一个模拟 POST。这样做就像使用相同数据制作一个 mick 表单并将操作设置为您的静默帖子 URL 一样简单。

这是我使用的示例表格:

<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"/>

于 2010-08-05T12:20:19.420 回答
0

除了 John Conde 的出色回答之外,我想补充一点,您应该尝试从与您的主站点不同的 url 发布此信息。在某些情况下,您不想接受来自外部网站的帖子,禁用该功能是一项安全功能。

因此,如果您要进行测试,只需访问 jsfiddle 站点并从那里发布您的帖子。

于 2013-06-20T20:47:48.863 回答