Paypal IPN suddenly not responding - paypal

I have a site that offers services to paid members.
When a member subscribes, he goes to Paypal, pays the subscription and then Paypal calls my ipn script which takes care of updating the database and sending a message to the member.
Everything is working fine, but some time ago, I started receiving some messages from Paypal:
"Please check your server that handles PayPal Instant Payment Notifications (IPN).
IPNs sent to the following URL(s) are failing:
http://domain.com/ipnhandler.php
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."
I found it strange, because at the same time, people went on subscribing, and the database was updated everytime. So I found strange to receive a message from Paypal saying that the URL was failing... How could it be failing, while the script was working fine?!
Then, one day, the database stopped from being updated. It started in early december, and since then, people pay their subscription but nothing happens. I had a look at the ipn history in my Paypal account, and I can see that Paypal called the script once (only once) for each payment, but the script returned nothing (http response is empptty). And on my side, I had a look at my log file, and there's nothing in it.
In my ipn script, the first thing I do is logging the call in the log file. But it's desperatingly empty since december...
Is there anyone who could help me with this issue? It's very upsetting because I have to register eveything manually... And everything was working fine, so I don't understand why it's not wirking anymre as I didn't change anything in the script neither in Paypal setup.
Please, I really need your help!!!
Thanks

The IPN script will need to load completely in order to return a 200 OK response from your server back to PayPal. What tends to happen is you could have an error happening near the end of the script after everything else has run, so while it seems like the script completed because you see emails/database updates, etc, it actually did not complete successfully.
Any time I have something going wrong with my IPN stuff I follow the steps in this guide on testing PayPal IPN and I'm able to track down the problem. I would recommend you follow those steps to find your problem.

Related

Paypal IPN not working on another paypal account

We have this website that was running since September 2013 and relying on paypal IPN for user registration. However, this week we got a report from the client where 3 users was able to pay through paypal but was not registered into the site.
We temporary changed the paypal email('business' field) from the client's to another paypal account. Went through the process of registration and the IPN was successfully delivered. The user was created in the system, the IPN transaction was logged into our system. When we tried to changed it back to the client's paypal email account, but unfortunately the IPN did not reached through our system.
Here are some questions that I have in mind
Does the type of paypal account (ie. business or personal account) matter when sending and receiving IPNs? Could this be a possibility? (even though last year it was working perfectly fine with the client's paypal account)
We've been receiving this paypal email (below) for the past months. That email was appearing after a few months when we opened the site and we didn't even changed a single code from our IPN listener. Could this be the reason why the IPN was not sent when we use the client's paypal account? However, we always use the notify_url field since we have multiple IPN listeners.
>Please check your server that handles PayPal Instant Payment
>Notifications (IPN). IPNs sent to the following URL(s) are failing:
>
>http://<site>/payment/postback/
>
>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.
thanks,
Your IPN script is not completing successfully, so PayPal's server is not getting a 200 result back, which causes it to send repeat IPN's and will eventually disable itself as the message says.
Your web server logs should provide the info you need. Check there to see the history of the IPN script getting hit and you'll probably find some 500 results. Those should also provide the actual error that happened so you can get it resolved.
It's possible that some IPN's are working just fine but others are failing based on certain characters in payer information or other similar issues. You need to get all of that worked out in your IPN script so it can handle anything thrown at it.

PayPal Adaptive Payments login fails

My website uses the PayPal Adaptive Payments API with the Embedded Payments flow and simple payments. On my checkout page I execute a Pay API call, receive successful response, then call SetPaymentOptions and again get successful response. The customer then reviews the order form and upon confirmation of the order is redirected to https://www.paypal.com/webapps/adaptivepayment/flow/pay in the PPDGFrame iFrame with expType set to "light" and the paykey received from the Pay API call.
I have successfully tested it in a sandbox and rolled it out to production. The application worked great for a day or two and then stopped working, with buyers now receiving a "Please try again later" error when trying to login. I am still getting successful responses on both the Pay and the SetPaymentOptions API calls and the customer is successfully redirected to the PayPal login screen. The customer enters the login credentials, clicks the Login button and a couple seconds later gets the "Please try again later" message.
Now here are some really odd behaviours if I've ever seen odd... This problem first appeared about 4 days ago. Since PayPal advised me that it will take them "several weeks" to get back to me, I have tried the checkout again two days ago and experienced the same problem. I have then tried a guest checkout and it worked! Next I tried a regular user checkout and it was successful as well so I thought to myself that the problem has somehow resolved itself.
Yesterday morning I tried the checkout again, and got the same problem as before. Again I tried to checkout as guest, which again was successful, and then immediately after I have tried regular checkout and again this time I was able to login successfully.
Today the flow is broken again. What gives? Nothing is changing on my site. Why does it sometimes work and sometimes doesn't, and how is it that a guest checkout seems to be able to temporarily resolve the issue?
The problem has been resolved with no action on my part and no change to the website or application code. After a couple weeks of the API simply not working, it started working intermittently with gradually improving success rate while my support ticket with PayPal was sitting in a "Waiting" status. I was told that the "engineering team" is waiting for a server code roll-out. The intermittent nature of the problem and a gradually improving situation suggests that PayPal was rolling out a fix to their servers in a staged approach and outcome of the API operation depended on which server the PayPal load balancer happened to send the request to. After about a week of that, the problem was resolved completely. PayPal of course maintains that they have not made any server changes.

Can fraud activity cause an IPN script to fail?

Payments from my website continue to be logged on paypal.com, but the IPN script is not processing those transactions in my database. Members who have upgraded are complaining that they are not getting access to the paid features. The odd thing is, I have not touched the IPN script, written in PHP, for months! I'm baffled as to why it suddenly stopped working, so are the tech support boys at Paypal. I'm convinced it has something to do with the fraud that took place on my merchant account this past weekend, but Paypal denies it. When I alerted them of fraud activity on my account, they rightfully deactivated my paypal debit card. It was around that time that my IPN script stopped working.
Any ideas on what is happening behind the scenes here? I can understand if I was messing with the code recently, but I wasn't.
Thanks!
Apparently it was paypal's fault once again. Late in the afternoon the whole process started working again, without me editing the IPN script at all.

Cubecart and Paypal IPN

We seem to be having an issue with a customer who has a cubecart store and Paypal IPN. The issue is that the IPN notification URL's were working and changing the order status upon a successful purchase, but now it seems to have stopped working. The orders go through ok and the item appears in the Paypal account, but it is not updating the order status on the store (goes from pending to processing automatically).
Check your IPN history in your account. First verify that the IPN is being sent out. If the IPN log shows the IPN being sent out, see if it is in a failed or retrying status. Also look at the details of the IPN message and see if it shows the status code that is being returned back from your site. The IPN system expects a 200ok response to be returned. If there is a different status code, this may help to determine the cause of the issue. Also, double check with your hosting provider if hosting with a 3rd party to make sure they haven't done any updates to firewalls or proxy's that may have affected your script.

Paypal does not Call IPN Script when payment is made from paypal.co.uk

I have developed one regular paypal form along with IPN script(in PHP).
When I make the payment using sandbox, everything works fine and flawlessly !
But when the form goes live, it doesn't even call the IPN.
Please note that the live payment is made through paypal.co.uk.. and Form submits data to paypal.com.
So, I think this is happening due to paypal.co.uk.
Is it so ?
Is there any solution for this ?
No. Your IPN script is likely still configured to verify the IPN data at https://www.sandbox.paypal.com/ instead of https://www.paypal.com/, which will cause it to fail, which in turn will cause the script not to get executed.
You can review individual IPN messages to were sent for your account in History > IPN History on your PayPal account overview as well.