Paypal IPN always return "payment_status: Pending" on sandbox?

marc picture marc · Nov 28, 2010 · Viewed 50.3k times · Source

I'm trying to implement PayPal on my website.

I use this class: http://www.micahcarrick.com/php-paypal-ipn-integration-class.html

Right now I'm testing using the PayPal sandbox.

Here is the problem:

  1. User makes payment - ok
  2. User returns to my website succesfully - ok
  3. After a few seconds PayPal calls my website using IPN - ok
  4. My class successfully validate incoming IPN data.
  5. PayPal returns "payment_status: Pending"

I don't know why PayPal IPN calls back with the payment status of "pending"?

Does anyone know what I'm doing wrong?

Answer

Wes Hanney picture Wes Hanney · Apr 2, 2012

When you're logged into your test business account, manually navigate to:

https://www.sandbox.paypal.com/businessmanage/preferences/payments

You would normally be able to get there by going through your "My Business Setup" but currently it redirects to PayPal live (despite being in the sandbox).

Once you're on that page, change "Block payments sent to me in a currency I do not hold" to "No, accept them and convert them to ..."

Also, don't forget to confirm your business account using the PayPal Sandbox front-end and "Test Email" section of the API.