Authorize.net DPM (SIM) 表格 Post 错误
Authorize.net DPM (SIM) Form Post Error
我在实施 Authorize.net DPM(直接 Post 方法)时遇到一些问题。当我尝试提交表单时,我收到一条失败消息,响应原因代码为 92(网关不再支持所请求的集成方法)。响应确实显示了我的继电器 url 的输出(它只是吐出响应中下面列出的返回的 post 数据)。
如何将 post 直接形成为 authorize.net 并让它中继回我选择的页面而不抛出错误代码 92?
如果我改变 [x_relay_response] = FALSE ;比交易有效,当然,它没有利用我的 relay_url.
原来的REQUEST、RESPONSE和RESPONSE WITH X_RELAY_RESPONSE=FALSE都在下面:
预先感谢您的帮助!
请求
[payMethod] => creditcard
[payType] => VI
[x_card_num] => 4111111111111111
[x_first_name] => test
[x_last_name] => test
[x_exp_date] => 07/2015
[x_card_code] => 123
[x_po_num] =>
[x_login] => [REMOVED]
[x_version] => 3.1
[x_delim_char] => |
[x_delim_data] => TRUE
[x_encap_char] => ^
[x_type] => AUTH_ONLY
[x_method] => CC
[x_tran_key] => [REMOVED]
[x_relay_response] => TRUE
[x_relay_url] => [REMOVED - VERIFIED WHITE LISTED URL]
[x_description] => 183002153
[x_invoice_num] => 183002153
[x_amount] => 114
[x_address] => test address
[x_city] => Bethesda
[x_state] => CA
[x_zip] => 20817
[x_customer_ip] => 71.163.185.8
[x_relay_always] => TRUE
RESPONSE(正确转发给中继 URL)
[fa] => ORDER.authNetRelay
[x_response_code] => 3
[x_response_reason_code] => 92
[x_response_reason_text] => The gateway no longer supports the requested method of integration.
[x_avs_code] => P
[x_auth_code] =>
[x_trans_id] => 0
[x_method] => CC
[x_card_type] =>
[x_account_number] =>
[x_first_name] =>
[x_last_name] =>
[x_company] =>
[x_address] =>
[x_city] =>
[x_state] =>
[x_zip] =>
[x_country] =>
[x_phone] =>
[x_fax] =>
[x_email] =>
[x_invoice_num] =>
[x_description] =>
[x_type] => auth_only
[x_cust_id] =>
[x_ship_to_first_name] =>
[x_ship_to_last_name] =>
[x_ship_to_company] =>
[x_ship_to_address] =>
[x_ship_to_city] =>
[x_ship_to_state] =>
[x_ship_to_zip] =>
[x_ship_to_country] =>
[x_amount] => 114.00
[x_tax] => 0.00
[x_duty] => 0.00
[x_freight] => 0.00
[x_tax_exempt] => FALSE
[x_po_num] =>
[x_MD5_Hash] => [REMOVED]
[x_cvv2_resp_code] =>
[x_cavv_response] =>
[x_test_request] => false
[payMethod] => creditcard
[payType] => VI
RESPONSE WITH [x_relay_response] = FALSE:(注意所有其他请求数据是相同的)
^2^|^1^|^2^|^此交易已被拒绝^|^000000^|^U^|^7073317211^|^183002153^|^183002153^|^114.00^| ^CC^|^auth_only^|^^|^test^|^test^|^^|^测试地址^|^Bethesda^|^CA^|^20817^|^^|^^|^ ^|^^|^^|^^|^^|^^|^^|^^|^^|^^|^^|^^|^^|^^|^^|^[删除]^| ^P^|^^|^^|^^|^^|^^|^^|^^|^^|^^|^^|^^|^XXXX1111^|^签证^|^^|^^ |^^|^^|^^|^^|^^|^^|^^|^^|^^|^^|^^|^^|^^|^^|^信用卡^|^VI^
发现问题:我应该传递指纹数据而不是交易密钥。
删除:
- x_trans_key
添加:
- x_fp_hash
- x_fp_sequence
- x_fp_timestamp
指纹(x_fp_...)数据生成如下:
http://developer.authorize.net/guides/SIM/wwhelp/wwhimpl/js/html/wwhelp.htm#href=SIM_Submitting_transactions.06.3.html
此外:当使用中继时,返回的数据在 header 非定界字符串内容中作为 POST 数据返回,因此现在也可以省略以下字段:
- x_delim_char
- x_delim_data
- x_encp_char
我在实施 Authorize.net DPM(直接 Post 方法)时遇到一些问题。当我尝试提交表单时,我收到一条失败消息,响应原因代码为 92(网关不再支持所请求的集成方法)。响应确实显示了我的继电器 url 的输出(它只是吐出响应中下面列出的返回的 post 数据)。
如何将 post 直接形成为 authorize.net 并让它中继回我选择的页面而不抛出错误代码 92?
如果我改变 [x_relay_response] = FALSE ;比交易有效,当然,它没有利用我的 relay_url.
原来的REQUEST、RESPONSE和RESPONSE WITH X_RELAY_RESPONSE=FALSE都在下面:
预先感谢您的帮助!
请求
[payMethod] => creditcard
[payType] => VI
[x_card_num] => 4111111111111111
[x_first_name] => test
[x_last_name] => test
[x_exp_date] => 07/2015
[x_card_code] => 123
[x_po_num] =>
[x_login] => [REMOVED]
[x_version] => 3.1
[x_delim_char] => |
[x_delim_data] => TRUE
[x_encap_char] => ^
[x_type] => AUTH_ONLY
[x_method] => CC
[x_tran_key] => [REMOVED]
[x_relay_response] => TRUE
[x_relay_url] => [REMOVED - VERIFIED WHITE LISTED URL]
[x_description] => 183002153
[x_invoice_num] => 183002153
[x_amount] => 114
[x_address] => test address
[x_city] => Bethesda
[x_state] => CA
[x_zip] => 20817
[x_customer_ip] => 71.163.185.8
[x_relay_always] => TRUE
RESPONSE(正确转发给中继 URL)
[fa] => ORDER.authNetRelay
[x_response_code] => 3
[x_response_reason_code] => 92
[x_response_reason_text] => The gateway no longer supports the requested method of integration.
[x_avs_code] => P
[x_auth_code] =>
[x_trans_id] => 0
[x_method] => CC
[x_card_type] =>
[x_account_number] =>
[x_first_name] =>
[x_last_name] =>
[x_company] =>
[x_address] =>
[x_city] =>
[x_state] =>
[x_zip] =>
[x_country] =>
[x_phone] =>
[x_fax] =>
[x_email] =>
[x_invoice_num] =>
[x_description] =>
[x_type] => auth_only
[x_cust_id] =>
[x_ship_to_first_name] =>
[x_ship_to_last_name] =>
[x_ship_to_company] =>
[x_ship_to_address] =>
[x_ship_to_city] =>
[x_ship_to_state] =>
[x_ship_to_zip] =>
[x_ship_to_country] =>
[x_amount] => 114.00
[x_tax] => 0.00
[x_duty] => 0.00
[x_freight] => 0.00
[x_tax_exempt] => FALSE
[x_po_num] =>
[x_MD5_Hash] => [REMOVED]
[x_cvv2_resp_code] =>
[x_cavv_response] =>
[x_test_request] => false
[payMethod] => creditcard
[payType] => VI
RESPONSE WITH [x_relay_response] = FALSE:(注意所有其他请求数据是相同的)
^2^|^1^|^2^|^此交易已被拒绝^|^000000^|^U^|^7073317211^|^183002153^|^183002153^|^114.00^| ^CC^|^auth_only^|^^|^test^|^test^|^^|^测试地址^|^Bethesda^|^CA^|^20817^|^^|^^|^ ^|^^|^^|^^|^^|^^|^^|^^|^^|^^|^^|^^|^^|^^|^^|^[删除]^| ^P^|^^|^^|^^|^^|^^|^^|^^|^^|^^|^^|^^|^XXXX1111^|^签证^|^^|^^ |^^|^^|^^|^^|^^|^^|^^|^^|^^|^^|^^|^^|^^|^^|^信用卡^|^VI^
发现问题:我应该传递指纹数据而不是交易密钥。
删除:
- x_trans_key
添加:
- x_fp_hash
- x_fp_sequence
- x_fp_timestamp
指纹(x_fp_...)数据生成如下: http://developer.authorize.net/guides/SIM/wwhelp/wwhimpl/js/html/wwhelp.htm#href=SIM_Submitting_transactions.06.3.html
此外:当使用中继时,返回的数据在 header 非定界字符串内容中作为 POST 数据返回,因此现在也可以省略以下字段:
- x_delim_char
- x_delim_data
- x_encp_char