When you are integrating Paypal payment gateway. During testing, you might face “payment_status” as pending in your PayPal IPN (Instant Payment Notification).
This issue may cause due to different currency selected in your seller account and the integration code. For example, in your Paypal account USD currency is set and in your integration code, you have set GBP (in British pounds). For this payment status issue, the reason can be different in your scenario.
Steps to resolve Payment Status as Pending issue
You can resolve this issue as follows:
1) Login to your Paypal Developers account.
2) Go to “Dashboard”
2) Enter “Test Accounts” on the left side
3) Expand your seller account and click on “Profile” link
4) In the Popup window, go to “Settings” tab
5) For “Payment Review” select option “Off”
6) Now, “Enter Sandbox site” by selecting the link above your test accounts section
7) Then Log-in to your seller account on sandbox
8) Go to “Profile” -> “My Selling Tools”
9) Update “Block Payments”
10) For “Allow payments sent to me in a currency I do not hold” select the first option i.e. “Yes, accept and convert them to U.S. Dollars”.
Now hopefully, your Paypal Payment Status as Pending will be resolved.