产品购物车 - > Moneris:两种货币

时间:2009-07-30 01:58:15

标签: asp-classic

我们正在尝试自定义脚本以允许加拿大客户以CND美元处理订单以及所有其他客户以美元处理订单;但是,我们无法通过Moneris进行身份验证。为什么这个脚本没有验证?

我们修改了1个文件。

gwMoneris2.asp - 我们在网关帐户之间切换,具体取决于发货国家/地区并显示美元或加元。帐户信息在该文件中硬编码,就像更新前一样。我们还为测试模式添加了单独的storeid / key。

添加了代码

gwMoneris2.asp

'// Set gateway specific variables - modified by egr-se
' Select account depending on Shipping country
if pcShippingCountryCode <> "CA" then
    pcPay_Moneris_StoreId="245ZGD2111"
    pcPay_Moneris_Key="dpQ87CRAVGP5"
else
    pcPay_Moneris_StoreId="AXVRQ47259"
    pcPay_Moneris_Key="dpNLNKHNYK6N"
end if
pcPay_Moneris_TransType=1
pcPay_Moneris_Lang="en-ca"
pcPay_Moneris_Testmode=0
pcv_CVV=0
pcPay_Moneris_Meth = 1
pcPay_Moneris_Interac =0

' Test mode id and key
if pcPay_Moneris_Testmode = 1 then
    pcPay_Moneris_StoreId="HBHTA8ore1"
    pcPay_Moneris_Key="dp1YDH2GJQR2"
end if

和行

 <td><p><%=money(pcBillingTotal)%> <%if pcShippingCountryCode = "CA" 
      then%>CAD<%else%>USD<%end if%>$</p></td>

1 个答案:

答案 0 :(得分:2)

基于代码的这一部分(密钥以dp开头),看起来您尝试设置DirectPost集成:

pcPay_Moneris_StoreId="AXVRQ47259"

pcPay_Moneris_Key="dpNLNKHNYK6N"

为了添加对美元货币的支持,实际步骤将根据商家帐户类型(加拿大商家帐户与美国商家帐户)而有所不同。您拥有的商家帐户类型取决于您的银行帐户所在位置:位于加拿大的银行帐户将使用加拿大支付网关(它支持CDN和美元货币),位于美国的银行帐户将使用美国支付网关(它支持美元货币)。

回顾一下,可能性是:

加拿大银行帐户 - CDN货币帐户(商家帐号将从003开始)

加拿大银行账户 - 美元货币账户(商户账号将从003开始)

美国银行账户 - 美元货币账户(商家账号将以295开头)


如果您正在与加拿大CDN帐户进行集成,那么设置加拿大美元帐户就是小菜一碟,您只需登录您的加拿大美元商家帐户,创建您的DirectPost配置并将凭据复制并粘贴到您的程序中(例如你上面的例子。)

然而:

如果您拥有USA USD商家帐户,则上述步骤将无效,因为USA网关的集成与Canada网关略有不同。您需要从developer.moneris.com下载USA DirectPost集成指南,并使用它来为美国网关创建另一个集成。

例如:

以下是您向加拿大网关(CDN和USD)发送DirectPost购买的方式:

<FORM METHOD=”POST” ACTION=https://esqa.moneris.com/HPPDP/index.php> 
<INPUT TYPE=”HIDDEN” NAME=”ps_store_id” VALUE=”AF4Fs1024”> 
<INPUT TYPE=”HIDDEN” NAME=”hpp_key” VALUE=”dpHsjh4GSr4g”> 
<INPUT TYPE=”HIDDEN” NAME=”charge_total” VALUE=”1.00”> 
Credit Card:<INPUT TYPE=”text” NAME=”cc_num” VALUE=”4242424242424242”><br> 
Exp Month:<INPUT TYPE=”text” NAME=”expMonth” VALUE=”04”><br> 
Exp Year:<INPUT TYPE=”text” NAME=”expYear” VALUE=”07”><br> 
<INPUT TYPE=”SUBMIT” NAME=”SUBMIT” VALUE=”Clickto process transaction”> 
</FORM>

以下是将DirectPost购买发送至USA Gateway(美元)的方法:

<FORM METHOD="POST" ACTION="https://esplusqa.moneris.com/DPHPP/index.php" > 
<INPUT TYPE="HIDDEN" NAME="dp_id" VALUE="DNVRTqa002"><br> 
<INPUT TYPE="HIDDEN" NAME="dp_key" VALUE="dp4IJ78RD5BM"><br><br> 
<INPUT TYPE="TEXT" NAME="amount" VALUE="1.00"><br><br> 
<INPUT TYPE="HIDDEN" NAME="order_no" VALUE ="oid43333"> 
Card Number:<input type="text" name=cc_num value="4242424242424242"><br> 
Expiry Month:<input type="text" name=exp_month value="06"> 
Expiry Year:<input type="text" name=exp_year value="07"><br><br> 
<input type="hidden" name=crypt_type value="7"> 
<!--MORE OPTIONAL VARIABLES CAN BE DEFINED HERE --> 
<INPUT TYPE="SUBMIT" NAME="SUBMIT" VALUE="Click to process transaction"> 
</FORM>

您可以从上面看到字段相同但名称略有不同,具体取决于您使用的网关。