Support

Home Forums Event Espresso Premium IPN & Force SSL Set Up: Purchases Still Say Status "Pending"

IPN & Force SSL Set Up: Purchases Still Say Status "Pending"

Posted: October 31, 2014 at 12:03 pm


Carrie

October 31, 2014 at 12:03 pm

Hi guys,

Not sure what I’ve missed? When I make a registration payment, the status still says “Pending,” and includes the PayPal box at the bottom, to prompt [users] to make payment (second time). I’m hoping we can push those payments to “Confirmed/Green Checkmark” as soon as users have paid, as I wouldn’t want to see anyone get confused, and pay again!! Here’s what we’ve gotten set up so far:

Our Info!
WordPress Version 4.0
Event Espresso 3 – Add-Ons: MailChimp Integration
New Installation
Live Site (Test) Registration Page: https://thegoddesscircle.net/test-courses/

PayPal:
– Yes, it’s a verified Business account
– Yes, the IPN setting are enabled
– The IPN settings are pointing to this page: https://thegoddesscircle.net/transactions

HTTPS:
– We’ve got our SSL Certificate
– The site’s been configured for the SSL Certificate (all pages are viewing with https://)
– WordPress SSL has been installed, and each of the following Critical Pages are set for “HTTPS – Secure Post” –
1) Registration – [ESPRESSO_EVENTS]
2) Thank You – [ESPRESSO_PAYMENTS]
3) Registration Cancelled – [ESPRESSO_CANCELLED]
4) Transactions – [ESPRESSO_TXN_PAGE]

Event Espresso:
– General Settings >> Default Payment Status >> “Pending”
– On the event, itself: Default Payment Status for Event: “No Change”

I believe that’s about all I’ve done. Is there something that I’m missing, be it either in WordPress or PayPal settings? As well, is there a chance that upon check out, users may just hit that “Pending/or Incomplete” status, if their firewall says otherwise?? Is it possible, with IPN enabled, for the transaction to read “Status Complete”?

Didn’t mean to be so wordy, I didn’t want to leave anything out!

Thank you guys so much!!

-Jen Dyck
(TGC Support)


Josh

  • Support Staff

October 31, 2014 at 2:02 pm

Hi Jen,

I can recommend installing the simplified transactions page template onto the WP theme, and set the transactions page to use that template. You can download a copy from here:

https://eventespresso.com/wiki/how-to-set-up-paypal-ipn/

Also, if you check the IPN log file in /wp-content/uploads/espresso/logs you’ll find some errors that will help point what to do next.


Josh

  • Support Staff

October 31, 2014 at 2:05 pm

Hi Jen,

I can recommend installing the simplified transactions page template onto the WP theme, and set the transactions page to use that template. You can download a copy from here:

https://eventespresso.com/wiki/how-to-set-up-paypal-ipn/

Also, if you check the IPN log file in /wp-content/uploads/espresso/logs you may find some errors that will help point what to do next.


Carrie

October 31, 2014 at 7:04 pm

Hi Josh,

Thank you for the link to the simplified transaction page. I’ve got it set up, and the /transactions/ page is using it as a template.

Thanks as well for directing me to the IPN log. I’ve found it, opened it up, and I admit, I’m not super smart when it comes to programming, and I’m unsure about what I’m looking at, or trying to find, that may help me try to figure out what’s happening. The only thing that looks questionable, is that every entry states:

key = payer_status
value = unverified

At the end of each piece, it states:
IPN Response from gateway Server:
VERIFIED

Might I be able to get your help with checking through this, to make sure I haven’t set something up wonky?

Thank you very much!

-Jen Dyck
(TGC Support)


Tony

  • Support Staff

November 3, 2014 at 5:42 am

Hi Jen,

Can you email us a copy of the IPN log file please? Or just a selection of the entries from the log file so we see if there is any reason for this.

Please use support[at]eventespresso.com and include a reference to this thread.


Carrie

November 3, 2014 at 9:35 am

Hi Tony,

Thanks for this! I’ve emailed the paypal.ipn_results.log to the above email address.

(From Yesterday):

Tried a pile of different things, wanted to update you guys, but I wanted to wait for your reply, so I didn’t bump this thread:

I’ve been reading through this article [https://eventespresso.com/wiki/setup-nocache-exclusion-rules-event-espresso/], it makes so much sense, to make sure that these pages are not caching!! However, I’ve noticed that under General Settings >> Page Settings – None of these pages have the green “OK” viewing, for both statuses: Page Status OK, and Shortcode OK. I haven’t changed anything to these pages, in fact I figured adding brief SEO content for all of these pages, might help. Do you think there might be something wrong with my pages, or how they are set up?

I ran a test, where I’ve selected the Main Registration Page, that doesn’t include the shortcode ([ESPRESSO_EVENTS]). After doing this, I refreshed the page, and this page doesn’t show any notification that the page is “Not OK.”

*I ran another test, after doing all this, clearing my full internet browsing history and cache, then registered, while not logged in as an administrator. The Payment Status still displays as “Pending.”

**Going to try adding all critical page slugs to a non-cache list. On this web page however, it lists five different page slugs – within our Page Settings, only four out of these five pages are displaying. The one page that isn’t displaying is /registration-checkout/

I’ve installed WP Super Cache (https://wordpress.org/plugins/wp-super-cache/), installed it, and added all critical page slugs to the “never cache” area. Tried testing it again, and the same result:

My payment status is still reading as “Pending.”

Is there anything from here on, that I’ve missed??

*Checked out this thread for more tips (https://eventespresso.com/topic/paypal-payment-status-pending-not-complete/), and tried disabling the HTTPS add on. Here’s what I did next:
– Disabled HTTPS – force HTTPS
– Set our PayPal’s IPN page to direct to the “Thank-You” page
– Added both shortcodes to the “Thank-You” page:

[ESPRESSO_PAYMENTS]
[ESPRESSO_TXN_PAGE]
– Under Page Settings, I’ve got the “Transactions” page set to the “Thank-You” page.

Payment status still saying “Pending.” I’ve put all of my settings back to normal (PayPal IPN points to: https://thegoddesscircle.net/transactions/, and removed [ESPRESSO_TXN_PAGE] from the Thank You page. As well, the Transactions page is using the txn page template, thank you for directing me to that! I’ve also turned the Force HTTPS back on.)

Any other suggestions? Sorry that was so long and wordy!

Thank you guys so much for your continued support with this.

Thanks,

Jen D.
(TGC Support)


Lorenzo Orlando Caum

  • Support Staff

November 3, 2014 at 3:13 pm

Hi,

I’ve run some testing on the PayPal IPN today via the PayPal Sandbox. Does this only occur when the site is running in full HTTPS mode?

For example, could you temporarily disable the force HTTPS option and try again?


Lorenzo


Carrie

November 3, 2014 at 6:30 pm

Hi Lorenzo,

I’ve deactivated the WordPress HTTPS plugin, tested it while logged out, and I’ve gotten Status Pending again. Do you think it may be doing this because the site has HTTPS?

*I noticed that the wp-config.php file doesn’t include a line for
define( 'force_SSL', true );
So I’ve added it, and set it to false. The site’s working fine, however it’s still giving me Status Pending :s Any other suggestions?

Thanks,

-Jen D.
(TGC Support)


Tony

  • Support Staff

November 4, 2014 at 3:57 am

The IPN log looks fine.

Can you check one of these registration within the Admin (Look in the Attendee list for the event) and check if the status is still Pending or if it has been updated to Complete please?

It looks like you have gone through most of the troubleshooting steps we recommend. Another step would be to use sandbox credentials for both the buyer and seller and retest. Doing so would rule out any issues with the live account.


Carrie

November 4, 2014 at 7:09 am

Hi Tony,

Each of the attendees are marked as Complete status, except for one marked Pending, I wonder if that was the one I cancelled while on the PayPal screen.

One more thing – I’ve been paying through my PayPal account, which is set up as a Business account as well. One thing I hadn’t considered is that MY PayPal isn’t set up for IPN – will this make a difference, as many who sign up will have Personal accounts??

I’ll install the PayPal SandBox and test again. I’ll be sure to shut off plugins along the way as well, to see if that makes a difference.

Thanks for your suggestion! I appreciate it!

-Jen D.
(TGC Support)


Tony

  • Support Staff

November 4, 2014 at 8:34 am

Hi Jen,

When testing this, continue through and make a payment, when you get back to the ‘Thank you’ page, the status is Pending yes?

Now leave that page open for a minute or so then refresh the page.

Does the status change to Complete?

If so it is not a problem with the IPN’s, well it is, but the IPN’s are actually working and being received by your site if that’s the case.

Also to note, it makes no difference how the buyers PayPal account is setup, only the Seller’s Account must have IPN’s activated.


Carrie

November 4, 2014 at 12:43 pm

Hi Tony,

Prior to all this testing, every time I refreshed the page after a purchase, the status did go from “Pending/Incomplete” to “Completed.” My worry is that users are going to think that the payment didn’t go through, and try PayPal a second time eek!

I’m glad to hear that the IPN’s are being received by the site. I’ve got PayPal’s IPN Notification URL is set to the /transactions/ page, is this the one it needs to be pointing to?

Oh! I was also going to mention: Under PayPal’s IPN Notification URL, I’ve included “https://” in the URL. Do you think it would make a difference if I left out that portion, and just include “thegoddesscircle.net/transactions/”? Or it may not work at all :s

I’ve never used PayPal Sandbox before, and I’m sure I’m doing something incorrectly. I’ve set up a business account, and when I go through the checkout process, I am seeing the information table, titled “PayPal Debug Mode Is Turned On.” However, when I proceed to make the payment, no matter what PayPal account I try to check out with, I’m continually getting an error message, wrong email/password! (Tried both the Sandbox account login, as well as my personal PayPal credentials). I’ll continue reading the Sandbox documentation, although I admit, it’s confusing, and don’t believe that I’ve set something up/doing something correctly. I Must! Try! Harder! Hehe.

Just to clarify so I know I’m not dreaming, this is possible to achieve, is it not? I’ve seen on quite a few different support threads here, that folks wanted that “Completed” status to appear right after a purchase, so I’m hopeful that it’s definitely possible! Or maybe I’ve been misreading threads???

Next up, I’m going to disable all plugins, and see if one of those helps…or breaks something!

Thanks for all your support on the subject matter, I really appreciate it.

-Jen D.
(TGC Support)


Lorenzo Orlando Caum

  • Support Staff

November 4, 2014 at 1:23 pm

Hi Jen,

The PayPal sandbox is separate from your actual PayPal.com account information.

It requires a separate account for the seller and a test account for the buyer:

https://developer.paypal.com/webapps/developer/applications/accounts

From your testing, it looks like the IPN is working, although it is slow at times. The IPN is usually quick but can be delayed up to about 15 minutes. Keep in mind that the IPN is triggered through the PayPal servers. This isn’t something that we can control on our end.


Lorenzo


Tony

  • Support Staff

November 4, 2014 at 1:24 pm

Hi Carrie,

I think it would be a good idea to explain what I think is happening.

The user registers onto your event.
They select Paypal.
They are taken to Paypal and make a payment.

**Now the important part, Paypal sends an IPN (‘Instant’ Payment Notification) from their servers, to your site. On receiving the IPN Event Espresso updates the registrations status. This should be received before the customer is directed back to the site from PayPal**

The user is returned to the site, the thank you page pulls the Registration status and displays it.

In your case I think what’s happening is the IPN’s are being delayed, the user is being directed to the Thank you page first, so registration status = Pending. Whilst the user now has the thank you page open, the IPN is received & EE updates the status. If you refresh, you see the status is complete.

So if that’s the case, there is actually no issue with your site, or Event Espresso. The problem is with the delay from PayPal sending the IPN’s.

Unfortunately there is little you/we can do about this. The simplified transaction template allows your site to process the IPN as quickly as possible, once it has been received.

We have seen this previously and recommend to contact PayPal themselves to see if there is anything they can alter from their end (maybe use a different server closer to your sites hosting)

It is possible to be caused by the sites theme (however you have the simplified template which removes the theme from the IPN listening page) or a plugin so you can try this with a default theme activated (such as twentyfourteen) and all non-EE plugins de-activated if you prefer, however you will likely find the same issue.

We introduced a different solution within EE4 in that the thank you page constantly ‘pings’ the admin to check for the IPN, so EE4 will automagically update the thank you page whilst the user is there if the above happens.


Carrie

November 4, 2014 at 2:04 pm

Thanks, Lorenzo, I feel better about knowing the IPN is functioning properly.

Thank you, as well, Tony: In regards to the IPN’s being delayed, I’ll try to contact PayPal about this issue. Although I’m curious, you mentioned that

IPNโ€™s are being delayed, the user is being directed to the Thank you page first, so registration status = Pending.

Do you think it would be wise to enable the “Transactions” page as the “Thank You” page, with both of these shortcodes added to the “Transactions” page? –>

[ESPRESSO_PAYMENTS]
[ESPRESSO_TXN_PAGE]

I’m pulling at straws, and I imagine this will break more than fix things :s

Thanks,

-Jen D.
(TGC Support)


Tony

  • Support Staff

November 4, 2014 at 2:11 pm

Iโ€™m pulling at straws, and I imagine this will break more than fix things :s

That it would, but nice try ๐Ÿ™‚

Unfortunately that wont work, even if you could combine those shortcodes (which I would advise against) the same from above would still apply.

The other option is to use another payment gateway, Stripe has always been very quick, however it is an on-site payment gateway.


Carrie

November 4, 2014 at 3:07 pm

Haha, I know it would break things, I don’t want to risk that! There are two pages for a reason ๐Ÿ™‚ Thanks, Tony. The first thing I’m going to look into, is talk to HostGator about whether they think it be wise to move the domain under their wing — er, scales. Both the domain and hosting are with two different companies, and I wonder if having them both HostGator, will solve the issue of the delays.

Thanks as well, I’ll be sure to check out Stripe!
–Jen D.
(TGC Support)


Lorenzo Orlando Caum

  • Support Staff

November 4, 2014 at 4:56 pm

Hi Jen,

I think it would be helpful to remind you that this isn’t not something that is controlled by your site. The PayPal IPN comes from PayPal itself.

Here is an explanation of this on their documentation site:

Using IPN in your checkout flow

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 resents messages for up to 4 days.
Because IPN is not a real-time service, your checkout flow should not wait for the IPN message before it is allowed to complete. If the checkout flow is dependent on receiving an IPN message, processing can be delayed by system load or other reasons. Configure your checkout flow to handle a possible delay.

Reference:

https://developer.paypal.com/webapps/developer/docs/classic/products/instant-payment-notification/


Lorenzo


Carrie

November 5, 2014 at 7:00 am

Hi Lorenzo,

Thank you for posting this. I’ve since discussed with both HostGator and PayPal, and they’ve both offered that it’s [the other’s] issue. I’ve opened a support ticket with PayPal, with hopes that they can look into the IPN delay on their end.

In your opinion, do you think that by using the PayPal Pro feature, this might help to fix the delay?

As well, thank you for letting me know about Stripe. I’ll check into it, however my client is pretty gung-ho about using PayPal, specifically.

Thank you guys so much for your support on this, you’ve been a great help to us!

-Jen D.
(TGC Support)


Lorenzo Orlando Caum

  • Support Staff

November 5, 2014 at 8:26 am

Hi,

PayPal Pro in an onsite credit card processor. It processes immediately and does not use the PayPal IPN so it would not be affected by delays on the IPN.


Lorenzo


Carrie

November 5, 2014 at 11:02 am

Hi Lorenzo,

This is good to know, thanks for the explanation.

I’ve spoken with PayPal tech support, and they mentioned that I hadn’t created a checkout button on the PayPal side – If I were to do that, would it be possible to link that button to fully checkout users, plus register them at the same time? This seems so redundant, as this is what your plugin does, and it’s doing that perfectly!!

I’m going to get our domain switched over to our hosting provider today, and fingers crossed that makes a huge difference!

Thank you guys so much!

-Jen D.
(TGC Support)


Lorenzo Orlando Caum

  • Support Staff

November 5, 2014 at 11:40 am

Hi,

The PayPal buttons that are manually created on PayPal.com can’t be connected to Event Espresso.


Lorenzo


Carrie

November 11, 2014 at 1:29 pm

Hi Lorenzo,

Thanks for letting me know; I figured that wouldn’t work, as EE3 has the PayPal system built right into it.

So far, here is an update on our end:
– The domain and hosting is now under the same company (HostGator)
– Spoke with them on the subject matter, and they directed me to PayPal
– I’ve been talking with PayPal tech support, and while they figure they’ve fixed the issue, I’m still seeing this happening.

Had a gigantic breakthrough today however, while Chrome wasn’t working properly: I ran a test payment (using PayPal live), after successfully completing the PayPal payment portion, the PayPal screen that states “Thanks for your order – if you’re not redirected in 10 seconds, click here.” My browser hadn’t been working properly all morning (just didn’t seem to be responding), so this allowed me the benefit of the page not redirecting back to the website! I’d waited a few seconds longer, than what PayPal would have waited to redirect back, and clicked the link – voila! The payment status read “Completed!” Never been so happy to see that green checkmark!!! The good news is, I’ve learned that this is most definitely a lag issue, between the finalized payment, and getting back over to the website.

To you guys, does this definitely sound like a PayPal issue? (I’m thinking so.) And do you think that between the browser trying to talk to all parties at once (HostGator, WordPress, EE3, and then finally, PayPal), this may be not helping with the delay? *I don’t even want to ask that, as it’s clear that ALL shopping cart systems run through third parties :s

Just wanted confirmation that I’m not crazy, and that this is something PayPal needs to look further into.

Thank you all so much! You’ve all been gems with helping us with this issue. I feel like we’re getting so very close!!!

-Jen D.
(TGC Support)


Lorenzo Orlando Caum

  • Support Staff

November 12, 2014 at 12:27 pm

Hi Jen,

This is an issue with how the IPN works. It is usually quick but can sometimes be delayed on PayPal’s end.

PayPal mentions this on their documentation page:

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 resents messages for up to 4 days.
Because IPN is not a real-time service, your checkout flow should not wait for the IPN message before it is allowed to complete. If the checkout flow is dependent on receiving an IPN message, processing can be delayed by system load or other reasons. Configure your checkout flow to handle a possible delay.

More information is shown here:

https://developer.paypal.com/webapps/developer/docs/classic/products/instant-payment-notification/


Lorenzo


Carrie

November 14, 2014 at 8:35 am

Hi Lorenzo and Team,

@lorenzo: Thank you so much for providing the links again, I had in fact missed something very important: Is Event Espresso considered to be a third-party in this process? This is epic news if so, as I haven’t set up (within PayPal) any 3rd-party API credentials ๐Ÿ™‚ If this is the case, can we please get an Event Espresso’ API credentials username, for this website? Or would that be our support license key?

Thank you for all your continued help and support!!! And happy Friday!!

-Jen D.
(TGC Support)


Lorenzo Orlando Caum

  • Support Staff

November 14, 2014 at 9:51 am

Hi Jen,

Event Espresso does not use that option in PayPal.

It uses the PayPal IPN.


Lorenzo


Carrie

November 14, 2014 at 9:56 am

Hi Lorenzo,

Thanks for letting us know! We will then proceed, as we are ๐Ÿ™‚

Thanks to all of you for your support, we are now ready to close this thread and launch!!!!

-Jen D.
(TGC Support)

The support post ‘IPN & Force SSL Set Up: Purchases Still Say Status "Pending"’ 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