Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Paypal IPN sending 'pending' with 'multi-currency' as reason?

I am using the Paypal IPN to take payments from my website. The website is only in development at the moment and so I set up a Sandbox site to test and I've been taking payments very successfully in GBP currency (my country of residences currency) with a test account registered in the UK.

However, I want the site to detect a visitors country of origin and allow them to purchase in their own currency. So I accessed the site via a US based proxy. The site used dollars as the currency and I logged into the Paypal sandbox with an account I had set up as US based.

However my return from Paypal has the following:

[payment_status] => Pending
[pending_reason] => multi_currency
[mc_gross] => 4.99
[protection_eligibility] => Eligible
[address_status] => confirmed
[payer_id] => X7QACLK8F7L9Q
[address_street] => 1 Main St
[payment_date] => 13:54:37 Feb 18, 2015 PST
[payment_status] => Pending
[address_country_code] => US
[notify_version] => 3.8
[payer_status] => verified
[address_country] => United States
[num_cart_items] => 1
[address_city] => San Jose
[payment_type] => instant
[address_state] => CA
[pending_reason] => multi_currency
[txn_type] => cart
[mc_gross_1] => 4.99
[mc_currency] => USD
[residence_country] => US
[test_ipn] => 1
[payment_gross] => 4.99

The purchases aren't registering on the site as the payment_status isn't complete (quite correctly). Anyone know the reason for this?

like image 441
John T Avatar asked Feb 18 '15 22:02

John T


4 Answers

Right I've finally worked out what the issue was and managed to resolve this so thought I would post an answer to my own question in order that it may help people in future.

Firstly log in to your Sandbox Developer Site (where you set up all your fake accounts etc). https://developer.paypal.com/developer

We need to be logged in to this site in order to be able to then log in to the Sandbox Paypal Business Account.

Leave yourself logged in to the Sandbox Developer Site above and open a new tab and go to the Sandbox Paypal Business Login: Sandbox Business Login

Now you'll probably see your "pending" transactions in the list. You can choose to "Accept" a pending transaction and the next page will allow you to alter your payment recieving preferences.

I ticked the radio box "Yes, accept and convert them to British Pounds" in answer to what to do with payments from a different currency.

That sorted it for me. Hope it helps someone else along the way.

Thanks to the other posters for their help on this as well. It helped me get to the bottom of it.

like image 112
John T Avatar answered Sep 19 '22 07:09

John T


Please try to follow the instructions below to turn off the Payment Review function for your Sandbox account:

Go to PayPal Developer Website
Log in to your developer account
Click Applications
Click Sandbox accounts
Click on to the email address that you would like to turn off the Payment Review option and click Profile after it expand
Click Settings
And select Off for the Payment review.
Click Close

!!! Make sure you are doing this on your PayPal SandBox Merchant Account!

like image 27
Maximo Avatar answered Sep 20 '22 07:09

Maximo


Login at your main PayPal account (not sandbox), go to Seller preferences and click on update Block payments.

paypal pending status reason multi-currency

like image 21
Alex Florentin Avatar answered Sep 20 '22 07:09

Alex Florentin


As of 2019, it's nightmare to use PayPal tutorial links because they changed the structure of their website without proper redirection of old links.

To accept payments made in difference currencies and marked as unclaimed/pending due to multi_currency, you've 2 options :

  1. Go to https://www.paypal.com/listing/transactions and manually accept the transaction

    enter image description here

    You'll then be presented with options to accept and create balance in X currency:

    enter image description here

  2. Go directly to https://www.paypal.com/cgi-bin/webscr?cmd=_profile-pref, which should redirect you to https://www.paypal.com/businessmanage/preferences/payments, and choose to automatically accept and convert future payments as follows:

    enter image description here

like image 35
Pedro Lobito Avatar answered Sep 19 '22 07:09

Pedro Lobito