Support

Home Forums Event Espresso Premium [EE3] PayPal Double Payments!

[EE3] PayPal Double Payments!

Posted: October 23, 2015 at 2:45 pm


B D

October 23, 2015 at 2:45 pm

Hi,

We’re in the process of testing our website and using PayPal Sandbox. More than half of the transactions have been paid twice! I’ve Googled this problem and it seems like a recurring issue with Event Espresso. Is there a solid solution for this?

Some more details – when the user registers for an event, they fill out the form and then get redirected to PayPal. Once PayPal does it’s thing, it redirects back to the website showing “Incomplete” and then the website redirects the user BACK to PayPal. If the user waits 5 seconds and clicks back then our website says “complete” but we can’t rely on this for production since the majority of users will just enter their info again (we’ve tested this with multiple testers).

We’ve tried setting/unsetting “Bypass Payment Overview”, using the reduced txnpage.php template and disabling plugins… we’re really not sure what else could be causing this.

Your immediate help on this would be greatly appreciated.

Thank you!


Lorenzo Orlando Caum

  • Support Staff

October 23, 2015 at 3:11 pm

Hi, the redirect that you are seeing is being caused by the bypass payment overview option. Please ensure that is turned off:

http://cl.ly/image/3M1J1T0p1M04

The other part of this issue is that you are seeing a slow IPN response. The IPN is usually quick but can be delayed.

Although PayPal usually processes IPN messages immediately, IPN is not synchronized with actions on your website. Internet connectivity is not always 100% reliable and IPN messages can be lost or delayed. The IPN service automatically resends messages until the listener acknowledges them. The service resends messages for up to 4 days.

Would you like some help in adjusting the content on that area of the page (e.g. removing the status line)?


Lorenzo


Josh

  • Support Staff

October 23, 2015 at 3:20 pm

You can change the default registration status to pending and that will solve the issue for you, or upgrade to Event Espresso 4. Event Espresso 4 adds a feature where it checks back for the notification from PayPal every few seconds and automatically updates the page.


B D

October 26, 2015 at 3:27 pm

Hi,

Thank you for the suggestions. I tried setting bypass to No and setting the default to “Pending”. Both aren’t working for me.

Also, I originally had EE4 installed but it doesn’t have the import feature which I needed and we had to re-do a lot of styling/coding to get EE3 to work so we really don’t want to go back to EE4…

I’m really not sure what to do with this issue as you can imagine we can’t go live like this…

Thank you.


Josh

  • Support Staff

October 26, 2015 at 7:17 pm

Can you explain how setting the bypass setting to No isn’t working? Is it still doing the redirect? Also, when you set the default registration status, does the registration status automatically get set to Pending, or is it getting set to another status?


B D

October 27, 2015 at 7:49 am

Hi,

Yes, when I set the bypass setting to No it still redirects.

Also, when I set the default registration it does set to pending (I see it when PayPal send me back to the website). But then it just redirects to PayPal again.

I didn’t try both setting byass to No AND set the default status to pending. I’ll try that but we would really really like the user NOT to have to select PayPal (which is the only payment option anyway).

Thank you.


Lorenzo Orlando Caum

  • Support Staff

October 27, 2015 at 8:12 am

Hi, do you see that redirect behavior when only Event Espresso is running?

For example, on one of my testing sites, I sometimes use a maintenance mode plugin and that will block the IPN from being received.


Lorenzo


B D

October 27, 2015 at 3:58 pm

We do have the Password Protected plugin installed but I make sure to disable it when testing payments. Also, payments ARE successfully completed – just not the first time around.

Do you have my email address on file? If you email me privately (please ask for Jonathan) I can send you some links and details if you and your team would be so kind to take a look?

By the way, I disabled bypass and set to pending. It doesn’t redirect now but the page just stays as pending. Maybe I can add a message on this page?


Tony

  • Support Staff

October 28, 2015 at 4:31 am

Hi there,

I think it would be good to explain whats actually happening here so you understand why this is happening.

When you register onto an event and select PayPal EE has no way of knowing if a payment has been made until PayPal sends their IPN to your site and EE updates the registration.

So whats happening is the user is being redirect back to your site before PayPal has sent their IPN to update the registration. So then the user loads the thank you page, which loads the registration which is currently pending (this then loads the payment overview), as you had the bypass overview page setting enabled this then triggered a redirect to PayPal…

In the meantime PayPal would have sent the IPN which updates the registration, which is why when the user clicked back the registration showed correctly as Complete. So the problem is the time it is taking for PayPal to send their IPN to your site, not EE.

Unfortunately delayed IPN’s are a problem with all offsite payments methods. EE4 was designed to try and help reduces this as mentioned above.

By the way, I disabled bypass and set to pending. It doesn’t redirect now but the page just stays as pending. Maybe I can add a message on this page?

So if you wait a few seconds on the thank you page at that point and refresh the page after say 10-20 seconds, the registration updates to show Complete?

If so then yes adding a message to that page will work.


B D

October 28, 2015 at 8:58 am

Hi Tony,

Thank you so much for that explanation! I absolutely understand the issue at hand is PayPals IPN being slow and this is not a direct issue with EE.

But the main concern right now is double payments. EE is AUTOMATICALLY sending the user BACK to PayPal after they were already sent there. I understand there is no way to know if the user successfully paid unless PayPal hits the IPN page on time to notify us, but I feel EE should not AUTOMATICALLY redirect the user again (no matter which settings you choose).

i.e. store a cookie to track that the user was already sent to PayPal for a specific item and don’t automatically redirect the user back to PayPal (make them manually go to PayPal again but warn them first). Another idea would be to check the referral source. It would be even better if you could check with PayPal (based on internal order#) if the payment went through when the user manually tries to go to PayPal again and stop the user if it was paid.

With that being said, I’ll play around with the messaging on this page but if you have any ideas/solutions that would be appreciated!

Thank you!


Josh

  • Support Staff

October 28, 2015 at 10:29 am

You can try setting the Show payment options for “Pending Payments” on the Payment Overview page? to No in Event Espresso > General Settings. This way if it’s Pending, the option to pay will not be displayed there, and no redirect will occur.

The support post ‘[EE3] PayPal Double Payments!’ is closed to new replies.

Have a question about this support post? Create a new support post in our support forums and include a link to this existing support post so we can help you.

Event Espresso