Wesley Skeen
Wesley Skeen

Reputation: 8295

Paypal incorrect currency conversion from my site goes

I have the following issue.

My customer paid for the product that costs 13,60 € but when he paid in Paypal it was 13,60 $, it didn't convert the price into $. So that is the odd thing...because my prices on my site are in EUROS. My paypal account's main currency is set to € as I created it in Spain and my bank account is in Spain. The customer also is in Spain and his Paypal is based in Spain.

I am using PayPal express checkout

Upvotes: 0

Views: 286

Answers (2)

Benjohn P. Villedo
Benjohn P. Villedo

Reputation: 101

Good Day!

This has been 4 years ago, does it still apply today? It seems this is still recurring. Here is what I have but the currency still defaults to USD is there a policy change in PayPal i.e. new fee, new membership type to get this to change for Express Checkout using NVP?

I have tried both but no luck so far:

    <form name="pp_form" id="pp_form" action="pp_ec_redirect.php" method="POST">
        <input type="hidden" name="VERSION" value="109.0"></input>
        <input type="hidden" name="PAYMENTREQUEST_0_PAYMENTACTION" value="SALE"></input>
        <input type="hidden" name="PAYMENTREQUEST_0_CURRENCYCODE" value="CAD"></input>
        <input type="hidden" name="PAYMENTREQUEST_0_AMT" value="10.00"></input>
        <input type="hidden" name="PAYMENTREQUEST_0_DESC" value="xxx"></input>
        <input type="hidden" name="MAXAMT" value="100.00"></input>
        <input type="hidden" name="NOSHIPPING" value="1"></input>
        <input type="hidden" name="ALLOWNOTE" value="1"></input>
        <input type="hidden" name="RETURNURL" value="http://www.xxxxx.ca/xxxxx.php?rid=xxxxx"></input>
        <input type="hidden" name="CANCELURL" value="http://www.xxxxx.ca/xxxxx.php?rid=xxxxx"></input>
        <input type="image" src="https://www.paypalobjects.com/webstatic/en_US/i/buttons/checkout-logo-large.png" alt="Check out with PayPal"></input>
    </form> 

and

    <form name="pp_form" id="pp_form" action="pp_ec_redirect.php" method="POST">
        <input type="hidden" name="PAYMENTREQUEST_0_PAYMENTACTION" value="SALE"></input>
        <input type="hidden" name="CURRENCYCODE" value="CAD"></input>
        <input type="hidden" name="PAYMENTREQUEST_0_AMT" value="10.00"></input>
        <input type="hidden" name="PAYMENTREQUEST_0_DESC" value="xxx"></input>
        <input type="hidden" name="MAXAMT" value="100.00"></input>
        <input type="hidden" name="NOSHIPPING" value="1"></input>
        <input type="hidden" name="ALLOWNOTE" value="1"></input>
        <input type="hidden" name="RETURNURL" value="http://www.xxxxx.ca/xxxxx.php?rid=xxxxx"></input>
        <input type="hidden" name="CANCELURL" value="http://www.xxxxx.ca/xxxxx.php?rid=xxxxx"></input>
        <input type="image" src="https://www.paypalobjects.com/webstatic/en_US/i/buttons/checkout-logo-large.png" alt="Check out with PayPal"></input>
    </form> 

Found the fix at least for the PHP API version i am using, instead of CURRENCYCODE or PAYMENTREQUEST_0_CURRENCYCODE

    <input type="hidden" name="currencyCodeType" value="CAD"></input>

Hope this helps the next guy who needs an answer to this riddle. Thanks for reading this far... all the best!

Pal,
Benjohn

Upvotes: 0

Robert
Robert

Reputation: 19356

You must include CURRENCYCODE (or PAYMENTREQUEST_0_CURRENCYCODE, depending on your API version) in your SetExpressCheckout and DoExpressCheckoutPayment API calls.
If you don't specify the currency code in the API call, it defaults to USD.

Upvotes: 1

Related Questions