PayPal Instant Payment Notification Warning

Once in a while you may get an email from PayPal with subject “PayPal Instant Payment Notification Warning” indicating the IPNs are failing

Generally this only happens if:

  • the wrong URL is specified as the PayPal IPN Listener; or
  • there is something blocking the page such as an incorrect .htaccess rule; or
  • your server is down for an extended period; or
  • your server is running very slowly and PayPal times out while waiting for a response; or
  • PayPal is running slowly and your server times out while waiting for PayPal

PayPal makes a number of attempts to send IPNs and will only inform you if detects a potential ongoing problem.

For some people the PayPal IPNs runs fine for a couple of years, then they get errors for a week, and then it goes back to working again without having to do anything.

It is only a problem if it persists. and PayPal sends you this email a few times in close succession.

There are 4 suggested actions:

1. Check You Have Not Disabled IPN Verification

PayPal expects an acknowledgement for each IPN it receives. You can disable SubscriptionBoss from sending these acknowledgements. You should only do this is SB is a secondary listener and you have another separate script responding to PayPal IPNs and forwarding them on to SB. However, if you have cleared this checkbox by mistake then PayPal will not be getting acknowledgements and hence flag the error.

Screenshot of SubscriptionBoss PayPal Notification Settings

2. Switch To HTTPS

One suggestion which helps the reliability of IPN delivery is to switch to HTTPS assuming of course you have a valid SSL certificate installed on your website.

Go into PayPal > Profile Selling Tools > Instant Payment Notifications

Change the enabled listener URL to https://www.yoursite.com/wp-content/plugins/subscriptionboss/subb-ipn.php substituting your domain as approproiate.

3. Resend Any Missing IPNs

PayPal will try to resend IPNs a number of times so check in PayPal IPN history and compare it to Subscription Notifications to see if anything has been missed. If it has, you can click a checkbox in PayPal to resend the missing IPNs. SubscriptionBoss will not reprocess payments if they have already been credited so resending IPNs multiple times is not an issue.

4. Check The Log Files

Look in the Apache error log, PHP logs or system logs for any error messages.

Also look in the Apache access logs to see what HTTP status code was generated in response to each IPN; 200 is success, 500 is internal error, 404 is a file not found, 301 is a redirect, etc

You might find clues as to why the plugin is not able to respond in a timely fashion with acknowledgements to the PayPal IPNs.

For example, if your site is under a denial of service attack, it might be slowed down sufficiently not to have the capacity to respond to PayPal in time. Evidence of the attack is likely to be seen in the system logs.

Leave a Reply