Корзина товара -> Moneris: две валюты - PullRequest
0 голосов
/ 30 июля 2009

Мы пытаемся настроить скрипт, чтобы позволить канадским клиентам обрабатывать заказы в долларах США, а всем остальным клиентам обрабатывать заказы в долларах США;однако мы не можем аутентифицироваться с Moneris.Почему этот скрипт не аутентифицируется?

мы изменили 1 файл.

gwMoneris2.asp - там мы переключаемся между учетными записями шлюза в зависимости от страны доставки и отображаем USD или CAD.Информация об учетной записи жестко запрограммирована в этом файле, как это было до обновления.Также мы добавили туда отдельный storeid / ключ для режима тестирования.

добавил код

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 Ответ

2 голосов
/ 28 ноября 2012

Исходя из этой части вашего кода (ключ начинается с dp), похоже, что вы пытаетесь настроить интеграцию DirectPost:

pcPay_Moneris_StoreId="AXVRQ47259"

pcPay_Moneris_Key="dpNLNKHNYK6N"

Чтобы добавить поддержку валюты USD, фактические шаги будут варьироваться в зависимости от типа торгового счета (торговый счет Канады против торгового счета США). Тип торгового счета у вас зависит от того, где находится ваш банковский счет: банковские счета в Канаде будут использовать канадский платежный шлюз (он поддерживает как CDN, так и доллары США), а банковские счета, расположенные в США, будут использовать платежный шлюз США ( поддерживает валюту USD).

Напомним, здесь есть следующие возможности:

Канадский банковский счет - валютный счет CDN (номер торгового счета начинается с 003)

Канадский банковский счет - валютный счет в долларах США (номер торгового счета начинается с 003)

Счет в банке США - валютный счет в долларах США (номер счета продавца начинается с 295)


Если у вас есть работающая интеграция с учетной записью Canada CDN, тогда настройка учетной записи Canada USD является простой задачей. Просто войдите в свою учетную запись Canada USD Merchant, создайте конфигурацию DirectPost, скопируйте и вставьте учетные данные в свою программу (как в ваш пример выше).

Однако:

Если у вас есть торговый счет в долларах США, описанные выше шаги не будут работать, поскольку шлюз США имеет несколько иную интеграцию, чем шлюз Канады. Вам нужно скачать Руководство по интеграции USA DirectPost с developer.moneris.com и использовать его для создания другой интеграции для шлюза США.

Например:

Вот как вы отправляете покупку DirectPost на шлюз Канады (CDN и USD):

<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 на шлюз США (USD):

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

Вы можете видеть сверху, что поля одинаковы, но их имена немного различаются в зависимости от того, какой шлюз вы используете.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...