Our site www.viart.com site is operated by latest Viart Shop 5 with default Clear design
Topic Information
battleaxe
battleaxe
I am live and today a customer ordered using express pro. It was passed to Paypal as USD but showed in GBP the customr was returned to the site having paid. When I checked the item, say ?10 had been sold for $10.
 
GBP is the default currency in admin.
 
and has always been the default in Paypal.
 
Ordinary paypal is fine and works in GBP.
 
In 'countries' I have linked uk address with GBP
 
I have checked personally on live site and the same thing is happening. It is no the customers fault.
 
Can you tell me what is happening? It is urgent as it is a live site now.
 
regards
Kim
Last modified: 21 Aug 2007 12:21 PM
 
Ned
Ned
It looks like Express Paypal Pro is US only so it may not be looking at the currency code even if youve set it in ViArt Payment Systems. Perhaps turn that payment option off?
 
battleaxe
battleaxe
Mmmm, no, I have checked thoroughly and it is UK too. Three is even a forum on UK Express Checkout in the developers side. But thanks anyway.
 
 
It is odd, because I had messed up the settings, and had to replace the table in the database to go back to the default settings and re enter my details. But before that I was managing to pass some orders in GBP
 
What does a person have to do around here to get an answer to an urgent question?
 
SajMalik
SajMalik
I have this problem and have a ticket with Viart to resolve this - I have a number of other custom programming issues as well so I am waiting for their solutions.
 
However, if you are more experienced as PHP than me you may want to look at:
Payments > paypal_checkout.php
On line 215 you will find —
$currencyID = (isset($params["currencyID"]) && strlen($params["currencyID"])) ? $params["currencyID"] : "USD";
perhaps "USD" just needs to be changed to "GBP"?
 
battleaxe
battleaxe
Solved by support, many thanks
 
Ned
Ned
Would you care to enliigten us? Its useful for the archive.
 
battleaxe
battleaxe
Ned
 
I would love to, and would have, except support didn't give me any details about what they did to my code to change it. I can see from my admin that they have added full shipping address details, and perhaps that is all it is.
 
If anyone needs the code they can have a copy of my express checkout code to compare with their own and make the necessary changes, or if you prefer I can post the file here (I think). I would imagine that Christopher has also had his code modified.
 
Maybe we can appeal to support to post up a fix in the announcements section...
 
SajMalik
SajMalik
I am still awaiting for my code to be changed but I am going to try just changing the USD to see what happens
 
battleaxe
battleaxe
Tested this tonight ready to go live with it and maybe it is something I have done. I have added the sandbox username and password, the sandbox ssl cert url and the proxy settings for godaddy.
 
I could see that the support test was successful in the admin under their test name Joy.
 
However, the transaction has always showed up correctly in the admin, it is the currency that is deducted from the visitors Paypal account and added to the merchants account that is coming up in USD.
 
Christopher, I tried changing the USD to GBP but it didn't work, this was a while back whilst I was waiting for support to answer. Maybe I missed a file, but there are a few. Let us know how you get on
 
SajMalik
SajMalik
I also found that changing USD to GBP did not work.
 
Anjula is doing a doing some custom work for me for other things related to check out . . . and that now includes this fix as well.
 
I am just waiting for this - getting irsorting is so important [and urgent] as I cannot go live until it is working.
 
One of the key reasons for choosing a good English-based program is that they would better understand the British requirements than the US site I currently use - who cannot give any date for PayPal UK who, they told me, requires different criteria to PayPal Pro in the US.
 
battleaxe
battleaxe
Christopher
 
I think I have solved it. We need to edit 2 files
 
find paypal_checkout.php
 
find the following code
on or about line 222
 
<SetExpressCheckoutRequestDetails xmlns="urn:ebay:apis:eBLBaseComponents">
';
$currencyID = (isset($params["currencyID"]) && strlen($params["currencyID"])) ? $params["currencyID"] : "USD";
 
and change it to
 
<SetExpressCheckoutRequestDetails xmlns="urn:ebay:apis:eBLBaseComponents">
';
$currencyID = (isset($params["currencyID"]) && strlen($params["currencyID"])) ? $params["currencyID"] : "GBP";
 
then find file paypal_payment.php
and find the following code on line 154
 
$currencyID = (isset($params["currencyID"]) && strlen($params["currencyID"])) ? $params["currencyID"] : "USD";
 
and change it to
 
$currencyID = (isset($params["currencyID"]) && strlen($params["currencyID"])) ? $params["currencyID"] : "GBP";
 
It works for me, at least in the sandbox, about to go live with it.
 
SajMalik
SajMalik
Wow - battleaxe - that's magic.
I have just made a sterling purchase with PayPal Express.
Thanks you for that!
 
Now to get PayPal API sorted!!!