Why Am I Receiving PayPal Instant Payment Notification Warning

Every time I am sent a payment, not related to Prosites (for example, a friend sends me money let's say), I get this warning from PayPal:

====

Please check your server that handles PayPal Instant Payment Notifications (IPN). IPNs sent to the following URL(s) are failing:

http://onlinechimpwebsitesolution.com/wp-admin/admin-ajax.php?action=psts_pypl_ipn

If you do not recognize this URL, you may be using a service provider that is using IPN on your behalf. Please contact your service provider with the above information. If this problem continues, IPNs may be disabled for your account.

====

This just started happening about a month ago and I've had prosites setup for over 6 months now. The response code in the IPN history logs for each warning is 404.

ANy ideas?

  • Alexander
    • DEV MAN’s Mascot

    Hi @tmac187,

    Is Pro Sites still working? If you're getting 404s it sounds like PayPal isn't able to find that IPN endpoint. I just checked the URL and it's ok If you're not seeing sites automatically renew, it could be a problem with PayPal contacting your site. So are there any Pro Sites related problems? Or is it just PayPal errors?

    Best regards,

  • Alexander
    • DEV MAN’s Mascot

    HI @tmac187,

    Clicking the IPN hook URL wouldn't really make a difference. The error is because it is expecting some data from PayPal.

    I've done some more research here, and usually these kinds of issues are related to your hosting.

    We can tell that the script is accessible jut by clicking on it, so the problem is that your server is denying the incoming request from PayPal's servers.

    Has anything changed with the hosting recently? It's possible that your host has a firewall that is inadvertently blocking PayPal - you may need to contact them to get your domain whitelisted.

    Best regards,

  • tmac187
    • Design Lord, Child of Thor

    OK, I contacted my host and here is their reply:

    =====

    I did take a look into this and believe this has to do with the shared migration to the upgraded hardware and that your account is on a new ip address. I do believe this is rectified by setting up the IPN url in your paypal IPN account again. I can confirm that we do not block such requests. I found a article that may be of help to correcting this issue within your script/paypal IPN account here: https://premium.wpmudev.org/forums/topic/paypal-ipn-problem#

    ====

    In that link , Aaron, the developer here said :

    "Ok, I think I know what's going on. Those IPNs were not for pro sites, but unrelated paypal transactions. Though they were still forwarded to pro sites which rejected them, rather than ignored.

    I'm not sure why other people are not running into this. I'm gonna make a minor change in the code for the new pro sites to avoid paypal disabling ipns. In the meantime you can safely ignore those messages."

    So, looks like I'm having the same problem as the person in that thread... I'm still not sure what I need to do to resolve this. I'm still getting messages from paypal everyday.

  • Alexander
    • DEV MAN’s Mascot

    Here's what I'm seeing:

    1. PayPal is contacting the webhook URL and getting 404

    2. We can open that URL directly and get a successful response from the server. Status code: 200 (OK) see screenshot

    Something must have changed with your hosting company, or somehow your IPNs are not reaching Pro Sites. I tested an IPN using the PayPal IPN simulator on your site, and on my test site. The test site succeeded, but the IPN to your site failed.

    Because of the simulator test, I think we can rule out that there is a problem with your PayPal account. The simulator is just a test request originating from PayPals servers - there's no account information associated with it.

    Based on this, it looks like all roads are leading back to your host.

    Try creating a new PHP file, and include the code from here: http://pastebin.com/4Zz0gqz1

    This is a bare bones IPN listener that essentially does nothing. When used in the IPN simulator, you should get a successful response.

    If you can get this little script up on your site, I could test it with the IPN simulator for you. This will help us narrow things down a bit further.

    In any case, I think this is worth revisiting with your web host, and having them look into it further.

    Best regards,

  • Alexander
    • DEV MAN’s Mascot

    @tmac187,

    Alright, cool! Looks like we're getting somewhere. I'm glad we tried that because it looks like I was wrong.

    So my next thought is that something in WordPress is keeping Pro Sites from responding appropriately.

    Can you try enabling WP_DEBUG mode and debug logging? To do this, just go to wp-config.php include this:

    define('WP_DEBUG',true);
    define('WP_DEBUG_LOG',true);

    You might already have a line for WP_DEBUG, so just make sure it's set to true. This will create a log file under wp-content/debug.log with detailed information.

    If you'd like to avoid end users seeing error messages, you can include this as well:

    @ini_set('display_errors',0);
    define('WP_DEBUG_DISPLAY', false);

    This will prevent errors from being displayed, but you can still find them in the log file. For information on this, checkout this wpmu.org article.

    Once the debug logging is enabled, let me know and I'll hit the callback a few more times from the simulator. Then you can check the Debug logs to see if anything went wrong during those requests.

    Best regards,

  • Alexander
    • DEV MAN’s Mascot

    @tmac187,

    Alrighty, I just tried a few test IPNs. Take a look at the log and let me know if you see anything suspicious coming from Pro Sites.

    If you'd like to send me WordPress Super Admin and FTP credentials, I could take a look at this on your site directly. If this is ok, you can send them via our contact form: https://premium.wpmudev.org/contact/
    - Choose "I have a different question"
    - Include my name in the subject "Alexander Rohmann"
    - Include a link back to this thread
    - Include any relevant login information

    Best regards,

  • Alexander
    • DEV MAN’s Mascot

    Hi @tmac187,

    Thanks for sending that. Nothing suspicious in the logs. I'm sorry we still haven't figured this out. I'm not really sure where else to look. Let me get in touch with the developer about this. He's actually out of town at the moment so there could be some delay here.

    @Aaron, quick summary:

    * Pro Sites doesn't seem to be sending an appropriate IPN response.

    * We've verified it's not a network/paypal connectivity issue by placing a dummy IPN listener in a PHP file at the root of the site. Connection to this file succeeds via the IPN Simulator. It fails however when connecting to the Pro Sites URL.

    * Nothing notable in debug logs - I'll pass them on to you just in case, but its mostly just notices with an odd warning here or there.

    Best regards,

  • Aaron
    • CTO

    The IPN script can only send 200, 401, or 503 errors. Hitting it directly all looks fine to me, it always says the missing post variables as it should.

    When you saw "0", it was probably because you were logged in.

    So if paypal still gets 404's, then something weird is up with your server. If intermittent I wouldn't worry about it.

    The IPN simulator will not work because it will return an error to it when it doesn't verify as live.

Thank NAME, for their help.

Let NAME know exactly why they deserved these points.

Gift a custom amount of points.