Paypal sandbox exchange rate is two times the real one - paypal

Paypal sandbox acts weirdly:
I make payment of 700 RUB(Russian currency) to USD Seller account.
700 RUB in the real world is something around 10 USD, but when I make this payment in sandbox I got the conversion to 22.55 USD. I would understand difference +/-10%, but this is more than double the real price. Unfortunately I can't test such conversion on the real paypal accounts now, but paypal guy says that "the currency conversion you see in Sandbox accurately reflects our rates at that time." - https://www.paypal-community.com/t5/Selling-on-your-website/Completely-inaccurate-currency-conversion/td-p/184328?profile.language=en-gb
So how is it possible and what is the problem? Did anyone have this issue?

There's an API you can use to get the real time conversion rate that PayPal uses https://developer.paypal.com/webapps/developer/docs/classic/api/adaptive-payments/ConvertCurrency_API_Operation/

Related

How to handle PayPal currency conversions causing a higher charge at order checkout?

We have an online platform where we sell our product and we use Paypal to handle payments. Our customers are shown the amount they need to pay in Lek. Since our home currency, Albanian Lek, is not supported in Paypal, we convert the order price in Euro and we pass that to PayPal on checkout.
When checking out, PayPal converts the amount from Euro back to Lek, using their own conversion rates, which charges the customer a higher amount that the one they were shown in the beginning.
We want to be transparent with our customers and we don't want to show them a different amount to be paid when they checkout.
How can we get around this? Our options are:
Get PayPal's conversion rates, do a reverse calculation ourselves and display the right price to the customer.
Have the user pay the exact amount they were told in the beginning and we pay the conversion cost.
Any other ideas than the ones mentioned?
If you have a PayPal account manager, you can ask them about presentment currencies.
Assuming you do not have such a PayPal business contact (most do not), the best solution is to simply display actual EUR prices on your site. An approximate LEK conversion can be shown alongside, if you must, but the EUR price is what will be used for the actual PayPal transaction.
The payer will only see a conversion from some local currency to EUR if they are using a funding source denominated in that local currency.. This conversion happens prior to the EUR payment being made, which again is the actual PayPal transaction between that payer and the receiver account; any conversion from LEK (or other local currency) to EUR is happening before the actual PayPal transaction in EUR

Braintree in multi-currency

I'm trying to integrate Braintree into my website to accept payments and I have a couple of questions regarding the multi-currency support.
First let me say that I have created an account that accepts EUR, since I live in the EU.
Now, let's say that an american guy wants to buy something on my webapp. He obviously has a credit card tied to a USD bank account. Reading the doc I found that in Braintree I cannot specify the currency, hence my amount, in this case 10, is 10 EUR
gateway.transaction.sale({
amount: 10,
paymentMethodNonce: nonceFromTheClient,
options: {
submitForSettlement: true
}
})
Which means that on my website I'll have to display
Would you like to buy this item for 11.16 USD?
where 11.16 is the current conversion rate (at the time of writing).
Is this the right way to do this?? I am skeptical for 2 reasons:
Say I use an online real-time converter >> if the user refreshes the page he may find a different amount (BAD UX)
Say I set a fixed conversion rate, e.g. 1 EUR == 1.1 USD >> the user will find a different amount charged on his card wrt to the one displayed in the website. This is because I actually charge 10 EUR not 11 USD as advertise (BAD UX)
Can you please help me understand the correct way to handle this??
Every time I bought something from a foreign website I got the conversion displayed in EUR and I've been charged with the exact amount, but here on Braintree I don't understand how to do it.
Thanks in advance
Full disclosure, I work at Braintree. If you have any further questions, I recommend reaching out to our awesome Support Team.
You specify the currency of a transaction by passing the merchantAccountId. This prevents you from having to do a ton of conversion for every transaction.
Here's a modified version of the example from Braintree's developer docs:
gateway.transaction.sale({
amount: "10.00",
merchantAccountId: "your_merchant_account",
paymentMethodNonce: nonce_from_the_client,
options: {
submitForSettlement: true
}
})
If you haven't already and you have a production account, you should reach out to Braintree's team to request the currencies you need to process. If you're just testing in sandbox, you can create test merchant accounts by following these steps.

PayPal micropayment

I m planning to integrate micropayment in my ASP.NET website. I need to use PayPal to achieve this.
The cost of the service I deliver is low, about $1 per month. I'd like to know more about PayPal service for this kind of cheap transactions.
How much does PayPal hold for each $1 payment ? I found this explaining the PayPal conditions for micropayment. Any feedback on this ?
Plus, how does PayPal handle currency conversion ? My service is worldwide, so I want my users to be able to buy my product not only using dollars, but euros or another currency.
Thanks
In the link you quoted the fees section is expandable and you can see the Micropayments pricing:
5% + $0.05
Signing up for it doesn't require any vetting or contract changes. Contact Customer Service and they file a request to a team that enables Micropayments. Should be done within a few days.
Currency conversion and cross-border transacitons are also in this page:
International Sales: The pricing table above applies to domestic payments in US dollars. There's an additional 2.5% charge for any currency conversion and a 1% charge to receive payments from another country.
If you decide to charge your buyers in USD only, they will be able to choose if they wish he card issuer or PayPal to convert the money. Most won't even notice the conversion took place and it will make your reconciliation much easier.

PayPal Adaptive Payment - multiple currency issues

I'm having a real headache with these damn Adaptive Payments for PayPal! So far, I've got it working - but now I'm trying to resolve some issues with it.
Why on earth don't they just let you request a payment in the sellers currency? I'm acting as a 3rd party system for people- so they list on my site, and then the buyer purchases from our site - but the money gets sent direct to them (via our account, with Adaptive payments - so we can do IPN requests). The problem here, is that not everyone will use the same currency.
To get around this, I've been using the ConvertCurrency feature ( https://developer.paypal.com/docs/classic/api/adaptive-payments/ConvertCurrency_API_Operation/ ). This works OK - as I can then give the prices to the buyer in their desired currency.
However, when I then send to paypal to make the payment - it requires multiple payments (at once) to be done in just 1 currency. So for example, I have:
Seller 1- $50 US
Seller 2- 10 EUR
I convert those into GBP, which gives me say £30 and £8 - so a total of £38. This payment goes through, but the problem arises when the IPN gets run. If the person receiving the funds hasn't already setup the account to accept in that currency, the get a message about "accepting" the funds, as seen here:
https://www.paypal.com/uk/cgi-bin/webscr?cmd=p/sell/mc/mc_receive-outside
Until they have decided on what to do there, I can't do squat with the payment - as it comes back with the status:
'transaction[0].pending_reason' => 'MULTI_CURRENCY',
I know for a fact the buyers are not going to like having to wait for a confirmation of their order. Why can't I just get it to accept in that currency, and convert automatically into their primary currency?
The other bad thing about this, is that I doubt the seller is going to be the amount they expect. PayPal are going to take their commission when doing the conversion 1 way, and then again when the person receiving it goes to convert it into their own currency.
How does eBay, etsy and other large sites that offer multiple purchases handle this? Its driving me up the wall!
Ok, well its not really a "solution", but its the route I'm going to have to go down - as I can't see any other option.
Now, I'm storing the converted amounts into my DB, and then showing those to the buyers (these numbers are updated via a cron, 2 times a day).
The buyer then gets shown the prices in their own currency, but when they go to paypal it actually asks for the money in the sellers currency. This means that the artist will always have the correct incoming currency, and I will not get that annoying issue.
If all goes to plan, the price the buyer see's on our site, should be the same as the amount they get charged,as I'm using the ConvertCurrency API to convert the amounts into the most up to date prices.
Hopefully this helps someone else, if they come across this post.

Currency exchange rates for paypal

Does anyone know a way to get the currency exchange rates for paypal?
We have custom shopping cart and use Paypal (Website Payments Standard) to handle payments.
Our 'home' currency is Euro, but we would like to present our customers the option to pay in different currencies (USD, CAD, AUD and GBP).
PayPal offers the option to:
a) automatically convert our Euro quoted prices to, for example, USD upon checkout
b) checkout in USD directly
With option a):
We get paid in Euro, the customer pays for the currency exchange (good).
The customer does not know what he/she is going to be charged in USD until checkout. (bad)
With option b)
The customer pays in USD, then the currency is converted into EUR and we pay the the currency exchange.
The customer never has to worry about the different currencies (excellent)
We do not know the exchange rate PayPal is going to use so we cannot quote the correct prices to our customer (showstopper)
So my question is:
Does anybody know a way to get the PayPal exchange rates?
or
Does anybody know how to make a good estimate?
Update:
PayPal updates it's exchange rate 2 times a day. (at least, that is what they state). They use the Interbank Exchange Rate provided by ??? and add a 2.5% spread above this rate to determine their retail foreign exchange rates.
Unforunately, there the Interbank Exchange Rates vary from source to source and from minute to minute.
We have been monitoring the PayPal exchange rates and cross referenced them with the Official reference rates provides by the European Central Bank. the results vary widely, somewhere from 1 to 6 ! percent...
https://www.paypal.com/us/cgi-bin/webscr?cmd=_convert-currency-withdrawal is a (needs login) page on Paypal where you can perform currency conversions at Paypal's rates.
I just found this:
https://www.x.com/thread/38451 (This link is now broken)
so it look like there is something you could use
https://www.x.com/docs/DOC-1400 (This link is now broken)
https://www.x.com/docs/DOC-1401 (This link is now broken)
I also found this
http://apipay.net/easyapi/index.php?sid=paypal&id=nvp_adpay&ac=convertcurrency (This link is now appears to be broken also)
and there is someone that already posted a question about that
PHP example for PayPal Adaptive Payments ConvertCurrency API
Regarding getting a good estimate; PayPal says here that they base their rate on the "Interbank Exchange Rate" and that "Customers may use these rates as a reference".
However they of course go on to say that these rates are not guaranteed, and if you want the precise rate you need to see what rate they apply in the transaction.
I am not aware of any way of obtaining the precise rate programmatically.
I suppose you could make your own payment of $0.01 every day and observe the exchange rate applied - but even that assumes they only update their rate every day.
I contacted their customer service and they explained, that at least in my region, they added 3.5% over the XE.com exchange rates. I was able to hand this to my accountant and use it as evidence of a tax-deductible business expense.
Their exchange rates are ~10% off the daily spot rates in the currencies I use (THB/USD). And although I have USD bank accounts they refuse to transfer USD to my USD accounts. Not sure if that is their policy for all countries / all currencies though, but for THB/USD they are inflexible.
Another thing to be aware of when using paypal - their "seller protection" is limited depending on what you sell and through what channels. In other words, you need to do a certain amount of fraud checking yourself to avoid shipping to customers who have used stolen credit card #s.
As you say, they base the "PayPal exchange rate" on the "recent currency conversion rate". In my experience, they add 3-4%.
The only place I found to get the PayPal exchange rate is here but it needs you to be logged in.
I've created a publicly visible Google doc that lists the historical rates.
This allows you to track the PayPal exchange rates so that you know when best to withdraw or transfer your money. Please contribute to the data by adding today's rates into this form.
If you are strictly interested in conversion from and to Euro, the European Central Bank has a public (and free) xml document that is updated daily:
http://www.ecb.europa.eu/stats/eurofxref/eurofxref-daily.xml
Parsing it is easy:
$XML=simplexml_load_file("http://www.ecb.europa.eu/stats/eurofxref/eurofxref-daily.xml");
foreach($XML->Cube->Cube->Cube as $rates){
if($rates["currency"] == 'USD'){
$rate = ''.$rates["rate"];
// do your thing with it here
}
}
I found paypal adaptive payment service to integrate currency exchange rates on website but it is not working correctly on live account. You can go through the details from the link https://developer.paypal.com/webapps/developer/docs/classic/products/adaptive-payments/
Well, the following service should be useful for the conversion: http://rate-exchange.herokuapp.com/. Our company uses this for many live projects including an Chrome extension which seems running so far.