2009-07-30 7 views
0

Nous essayons de personnaliser le script pour permettre aux clients canadiens de traiter les commandes en dollars CND et tous les autres clients pour traiter les commandes en USD; Cependant, nous ne pouvons pas nous authentifier avec Moneris. Pourquoi ce script ne s'authentifie-t-il pas?Product Cart -> Moneris: deux devises

nous avons modifié 1 fichier. GwMoneris2.asp - nous faisons le basculement entre les comptes de passerelle en fonction du pays de livraison et affichons USD ou CAD. Les informations de compte sont codées en dur dans ce fichier tel qu'il était avant la mise à jour. Nous avons également ajouté un storeid/clé séparé pour le mode de test.

ajouté le code

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 

et ligne

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

Répondre

2

Sur la base de cette partie de votre code (clé commence avec dp), il ressemble à votre essayer de mettre en place une intégration DirectPost:

pcPay_Moneris_StoreId="AXVRQ47259" 

pcPay_Moneris_Key="dpNLNKHNYK6N" 

Afin d'ajouter la prise en charge de la devise USD, les étapes réelles varient en fonction du type de compte du marchand (compte marchand du Canada et compte du marchand américain). Le type de compte marchand dépend de l'emplacement de votre compte bancaire: les comptes bancaires basés au Canada utiliseront la passerelle de paiement canadienne (il prend en charge les devises CDN et USD) et les comptes bancaires situés aux États-Unis utiliseront la passerelle de paiement des États-Unis (il prend en charge la devise USD).

Pour récapituler ici, sont les possibilités:

banque canadienne Account- compte en devise CDN (numéro de compte marchand commencera par 003)

Account- banque canadienne USD compte en devises (numéro de compte marchand commencera par 003)

Account- bancaire Etats-Unis USD compte en devises (numéro de compte marchand commencera par 295)


Si vous avez un inte de travail Il vous suffit de vous connecter à votre compte marchand Canada USD, de créer votre configuration DirectPost et de copier et coller les informations d'identification dans votre programme (comme dans l'exemple ci-dessus).

Cependant:

Si vous avez un compte marchand USD Etats-Unis, puis les étapes ci-dessus ne fonctionnera pas car la passerelle États-Unis a une intégration légèrement différente de celle de la passerelle Canada. Vous devez télécharger le Guide d'intégration USA DirectPost à partir de developer.moneris.com et l'utiliser pour créer une autre intégration pour la passerelle USA.

Par exemple:

Voici comment vous envoyez un achat DirectPost à la porte d'entrée du Canada (CDN et 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> 

Voici comment envoyer un achat DirectPost à la passerelle Etats-Unis (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> 

Vous pouvez voir ci-dessus que les champs sont les mêmes, mais leurs noms sont légèrement différentes en fonction de la passerelle en utilisant votre.

Questions connexes