PayPal IPN not working in sandbox - paypal

I'm brand new to setting up IPN's. I've built websites, but never a subscription site like the one I'm building now. I'd like to set up a recurring monthly subscription option and a recurring yearly subscription option.
My website is built on Joomla 3 and I'm using a plugin for the subscription module. I set up the PayPal subscription buttons just as explained in the directions, which I followed to the letter. Nevertheless, when I go to test it in the PayPal sandbox, I keep getting the same error, which says that it wasn't sent and the handshake wasn't made, and to check my settings. That's all it says. I don't know if the issue is with my site, my server or the settings I'm entering into the actual sandbox. I checked with my server and they said there's nothing wrong on their end. Do I need an SSL for the integration to work?
Please keep in mind that, while I can follow explicit directions, I'm so new at this that I don't even know how to access my 'listener,' so if you respond, please let me know where to find things, if necessary.
Any help would be very greatly appreciated - I've been at this for 12 hours now and I'm at a complete loss.

This issue has two sides
1. Is Paypal IPN enabled on the sandbox account where you are trying to receive the payments
2. You would need a IPN listener script to get the IPN notifications
This process is the same for Sandbox or live mode
https://www.jotform.com/help/276-How-to-Enable-IPN-for-Paypal
https://github.com/paypal/ipn-code-samples
This should help you get started

Related

PayPal IPN and PDT suddenly does not work anymore

Since this week the forwarding to our site after payment does not work anymore in production mode, while it still works within the sandbox.
Actually we use PDT for the direct forwarding and IPN as backup. For some reason the payment is not finished fully. There seems no PDT or IPN connection to be established from PayPal since beginning of this week.
A payment from March 9th was successful, but all payments since March 11th are marked as successful on the PayPal page, but our site "does not know it", so customers don't get their accounts updated.
When trying to track the bug, I switched to the sandbox, but there everything works fine there.
Has PayPal changed something recently? (The design during payment process ist now, but I don't know since when...)
Thanks!
The biggest downfall with PDT is the message is only sent once, where as IPN is repeatedly sent until the server responds with the correct message. You can run both, but from my experience it is very uncommon (and I build eCommerce systems for a living). Recently a lot of my company's clients who run PayPal as their payment method have come to us with a similar problem (even more so with RBS WorldPay). And the solution has been to try the following:
Confirm that the IPN listener URL is still working and pointing to
the right site (some people try to use one PayPal account for
multiple sites, and change it to the 2nd site not thinking it will
stop IPN for the 1st site).
Make sure the latest version of the PayPal gateway is installed (if
on OpenCart / WooCommerce / Magento / etc...). The latest version
requires SHA-256.
Ensure the server has SHA-256 enabled, as above PayPal is now asking
users to make sure they have it for the hashing to work.
Ensure that an SSL certificate is installed. It is not yet a certain requirement, but in this day and age if you don't have one, you are not likely to get many orders. Also for some strange reason it has fixed IPN for some clients.
Hope this helps!

Paypal IPN not firing?

I have a question about Paypal IPN, I was wondering when does the IPN activate and send it's message to my website.
I currently have my website that has a buy button. When the client buy the service, he is directed to paypal. Once he pay the service, nothing happen. In order for me to receive the IPN notification, the user has to click "Return to merchant website" or whatever the link is, then I receive the IPN notification.
Is it normal, does it work like that for everyone?
Cause right now, most people when they are done with the payment, just close the website and I don't receive any notification.
Thanks for any help !
Your question leaves a lot of missing information so I will go through each option for you:
Read here about how to setup a sandbox account if you don't already have one: https://developer.paypal.com/docs/classic/lifecycle/sb_create-accounts/
Bare in mind that your sandbox account is entirely separate in every way from your live paypal account. All settings will need to be checked and customised as needed.
Set up your IPN URL on your sandbox account Here: https://www.sandbox.paypal.com/uk/cgi-bin/webscr?cmd=_profile-ipn-notify
Once set up, you then need to download and set your code (PHP or something else) to the listener (referenced in the above sandbox profile link). You can find IPN code examples here: https://github.com/paypal/ipn-code-samples
When that's all set you need to set your listener to using the sandbox mode and then log in to your live account and then run the IPN simulator from here: https://developer.paypal.com/developer/ipnSimulator/
Paypal will send messages to your IPN listener and you need to do something with the messages, typically output them into some sort of log file. Any issues, you can read Paypals feedback and IPN data/delivery information here https://www.sandbox.paypal.com/uk/cgi-bin/webscr?cmd=_display-ipns-history&nav=0.3.4 [Found from History->ipnHistory on the Paypal menu] and it should list them out. You can resend any failed or queued or undelivered messages.
Paypal is a terribly documented and terribly structured system for coding with. I hate it. Use Stripe.
I love bullet points.
Paypal claims they will try and resend failed/queued IPNs 16 times over 5 days. I have yet to see this, you need to resend them manually (at least, sandbox ones)
Please remember all the settings and changes you have made to your Sandbox account will need to be also made to your live account before you make your payment system live!
Solution
My return_URL is the location of my IPN.php file which take care of the data sent and received. My problem is that the IPN is only firing when I click the "Return to merchant website" and not when the payment is actually completed
What you have done, from reading your comments, is set your IPN page to being your return from paypal page, this is NOT the way IPN is supposed to work, the IPN page should never be visited by the customer, only ever by Paypal.
Read through my anwser (points 2,3,4) and set up your IPN web link as I have described above, your return_url value should be a basic page to say to the customer "transaction complete". The IPN page is defined on your paypal accounts (sandbox and live) as I stated above.
This will fix your problem.

Testing Paypal Credit with Express Checkout

I'm implementing PayPal Express Checkout and I'm having trouble testing out PayPal Credit as the payment method. When I choose it as the method of payment, the response comes back as ERRORCODE0=10486 which means "This transaction couldn't be completed. Please redirect your customer to PayPal." It works fine when using other methods of payment.
Does anyone know if it's possible to make test transactions with PayPal Credit? I haven't been able to find anything in the docs or google about it so hoping someone on here knows!
Thanks!
You have two options for testing.
You can test it with the PayPal Demo site, which not only demos from start to finish paying with PayPal Credit. It also has working sample code available.
I found that you can simulate a PayPal Credit transaction in a sandbox account. I tested it on one of my sandbox accounts. You have to login in to one of your sandbox accounts that is not the merchant account that you are testing. I put in demo info when it asked me to apply for the product. My sandbox account was approved.
So I was able to get it to kind of work (at least in the sandbox). The issue was that it seems like it didn't like me passing in:
"USERSELECTEDFUNDINGSOURCE" => "BML" (old version) or "USERSELECTEDFUNDINGSOURCE" => "Finance" (new version)
When I used this option it sent me to a page that looked like this: http://imgur.com/J1exMJb
Which is what I wanted as we mainly wanted to focus on offering customers PayPal Credit.
When you remove the USERSELECTEDFUNDINGSOURCE option it takes you to a page like this: http://imgur.com/0XOaTOL
If you choose change payment source on this page and choose PayPal Credit, the transaction goes through successfully.
It's not exactly a solution to the problem but hopefully this helps anyone who was also having a similar issue.

PayPal subscription doesn't happen

This question is not basic so that means i have read some paypal documentation about this.
I have attached an image. The problem is that i make a Paypal subscription and while its active and stating that the next payment should be done next day, it doesn't happen, what could be the problem? BTW I am using the sandbox
The sandbox tends to get delayed sometimes, and payments don't occur exactly when they should. The production server doesn't have this issue, usually, but it can happen.
From what I can see you've got it setup correctly so it's just a matter of their system kicking in and processing it accordingly. Not a lot you can do it about it other than wait.
You could post a ticket to www.paypal.com/mts, but by the time they respond the payment will probably go through.
You could also call their tech support line, which you can find by logging in to your PayPal account, click Contact Us, then by Phone, and it will give you separate numbers for general and technical support. You can let them know what's going on and they may be able to find what's causing the delay and get it fixed.

PayPal Sandbox Notifications Problem

I have a .NET site which integrates with PayPal. I am currently working with the Sandbox, and with recurring subscriptions.
I have created my buttons, and I am able to subscribe with them. I see the money go out of my test user accounts and into my test business account. I receive notifications back to my notification URL...all good.
My buttons are currently set to recur subscribe payment every day.
My problem is that the recurring payments are never made, and I never receive any notifications.
Everything looks good in the Sandbox...all of my subscriptions appear active in the business account profile, and all of the buttons look correct.
NOTE: I used to get many recurring notifications when I was in early development and failed to unsubscribe. I cleaned out my accounts by resetting them, and I now unsubscribe correctly, but I don't get notifications beyond the initial signup.
Questions:
Any ideas? Has anyone else seen this issue?
What is the best way to ask for help with this other than SO?
Should I delete and recreate all of my test accounts? I have
tried to reset them all, with no change in behavior.
UPDATE: The problem isn't me. I found out by browsing the forums on x.com that PayPal subscription notifications in the Sandbox has been down for over a week!!!!! Not good, but the problem wasn't me.
I'm actually currently dealing with their recurring payments API as well.
When working with their DoDirectPayment API, the money wasn't always transferred from test account to test account. However, after switching to live mode, every thing worked fine. Although, I did receive payment notifications in sandbox mode.
To be more helpful, I would suggest registering at x.com. There, the forums are moderated by PayPal technicians, and can provide helpful insight and well-suited solutions for your problems. They can also personally check your sandbox accounts for you.
I assume from what you say that you are receiving an IPN for the initial payment but no recurring IPNs. In that case I would strongly suspect that the recurrence is not being setup correctly.
Can you check the subscriptions?