Support

Home Forums Event Espresso Premium Payment Incomplete

Payment Incomplete

Posted: February 2, 2016 at 4:33 am

Viewing 13 reply threads


James Murrin

February 2, 2016 at 4:33 am

Hello Tony

I’m preparing the site for live ticket sales wef 1 March.

I have a problem with Payments from Paypal, but before we go there, here’s some relevant background …

The Web Hosting people are changing their mail servers in 2 weeks’ time so that we HAVE to use SSL authentication. So, I’ve disabled Postman SMTP (which worked nicely) and replaced it with the Configure SMTP plugin. Configure SMTP is using SSL authentication and I’ve tested it and it worked fine.

So, I returned to my ticket testing, and now, unfortunately, Paypal is not sending ANY emails to gbftickets@ or primary registrants’ email address plus the Payment Overview box is saysing ‘Payment Incomplete’, as is the ticket record.

Within the ticket record, the Transaction ID from the gateway is blank:
Transaction ID: ( or cheque #, gateway response, etc )

0

I’ve tried refreshing my Thank You page over the last half hour, and the payment status doesn’t change, so it doesn’t seem to be Laggy Paypal IPN servers this time, I think (?)

Incidentally, I last tested this system on 7th Jan and the payments were working fine. I have only swapped out the Postman SMTP for Configure SMTP (with SSL Auth), and upgraded WP Smush.

I know I’m on an old EE version. I thought I’d only update that once everything was ‘working’. Trying to reduce my number of changing parameters….

Please could you let me know which way to go.

Thank you v much.

Dee


Lorenzo Orlando Caum

  • Support Staff

February 2, 2016 at 11:27 am

Hi Dee,

It sounds like there are two issues here:

1) You are concerned about the emails not going out and are using an SMTP solution

2) PayPal isn’t updating payments on your site.

Payments need to be updated for emails to go out so lets look at the PayPal issue first. Could you double-check that the PayPal IPN is enabled on your site?

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


Lorenzo


James Murrin

February 3, 2016 at 6:46 am

Hi Lorenzo & Tony

Thanks for your email Lorenzo. This is what I’ve done:

I upgraded EE3 to 3.1.37.7.P
Wordpress is at: WP 4.4.2
There are no page caching plugins running
No security plugin is running
I reverted to the Postman SMTP plugin to see if Payment would complete (as it had in Jan 2016), but didn’t. So I returned to Configure SMTP using SSL auth.

I went through https://eventespresso.com/wiki/how-to-set-up-paypal-ipn/#paypal and confirmed:
Paypal sandbox on,
Paypal business account
Within PayPal, I changed the PayPal button language coding from windows-1252 to utf-8.
No need to add PayPal’s ip address to server firewall settings as I’m not running any ip blockers
I confirmed that we have the 4 required pages for EE3 and I checked that the shortcodes were good, and that they were all in published mode.
There is no maintenance mode type plugin active.
I have not forced https on return url since we don’t have an ssl cert with the hosting company.
No bad behaviour plugs running.
I downloaded your latest txnpage.zip file and uploaded the txnpage.php file to my child theme and made sure it was enabled on the /transaction page.
The wp-content/uploads/espress/gateways directory has been renamed so it’s not pulling gateway info from there.
I’ve looked a the IPN error log. Here’s the last 4 lines of the latest entry for my latest Payment Incomplete ticket:

Errors resulting from the execution of curl transfer: error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure[02/03/2016 1:18 PM] - FAIL: IPN Validation Failed . /cgi-bin/webscr : www.sandbox.paypal.com
IPN POST Vars from gateway:
mc_gross=10.00, protection_eligibility=Ineligible, item_number1=, payer_id=74VRJGPBJRBQC, tax=0.00, payment_date=05:18:48 Feb 03, 2016 PST, payment_status=Pending, charset=windows-1252, mc_shipping=0.00, mc_handling=0.00, first_name=deetst, notify_version=3.8, custom=, payer_status=verified, num_cart_items=1, mc_handling1=0.00, verify_sign=AhCUXkI1-b5peEUfvPt3CKY1GWrqAzeq7aoq6cd26d7d91lGi1xhGaSz, payer_email=dee@binalogic.co.uk, mc_shipping1=0.00, tax1=0.00, txn_id=5AG03480WH0014602, payment_type=instant, payer_business_name=deetst bina\'s Test Store, last_name=bina, item_name1=General Admission for Session One Fri 10 June 1800 2200 hrs Attendee: Dee Stevens, receiver_email=secretary@guildfordcc.com, quantity1=1, pending_reason=unilateral, txn_type=cart, mc_gross_1=10.00, mc_currency=GBP, residence_country=GB, test_ipn=1, transaction_subject=, payment_gross=, ipn_track_id=9d83e4a04ac96, 
IPN Response from gateway Server:   

Please note, there’s nothing after IPN Response from gateway Server:

Here’s the address of the ‘Thank you’ page: http://guildfordbeerfestival.co.uk/thank-you/?r_id=10-56b1fe04dcc86&type=paypal

Inside the attendee record in EE the payment status is:
Payment Status: Incomplete Incomplete [ View/Edit Payment ]

Inside the payment record it’s:
Transaction ID: ( or cheque #, gateway response, etc )
0

Finally, I did a bit of trawling of old support calls, and found that Toni had recommended here https://eventespresso.com/topic/paypal-payment-made-but-still-pending-payment-on-both-incomplete-and-even-abando/ that I go in to PayPal and turn on auto return. Auto return is now set to: http://guildfordbeerfestival.co.uk/transactions/

and I did that before the last test which failed.

Please could you help out. What to do now?


James Murrin

February 3, 2016 at 7:21 am

Just another thought. On 20th Jan I got this email from my hosting company.
A recent review of our mail platform has shown that the following mailboxes in your Fasthosts account are setup to be accessed using a password authentication method called “CRAM-MD5”. We are planning to switch off CRAM-MD5 support on 22nd February 2016 in-line with industry standards. Therefore, you must update your email clients to use SSL to improve your email security – and to continue using your mailboxes after February.

So, I think we can guess they’re doing something with their servers to do with SSL, yes?

If you look at the paypal.ipn_results log, the corresponding bit of the message (see above) said this:

 Errors resulting from the execution of curl transfer: [01/07/2016 3:31 PM] - SUCCESS!
IPN POST Vars from gateway:
mc_gross=20.00, protection_eligibility=Ineligible, item_number1=, tax=0.00, item_number2=, payer_id=74VRJGPBJRBQC, payment_date=07:31:50 Jan 07, 2016 PST, payment_status=Pending, charset=windows-1252, mc_shipping=0.00, mc_handling=0.00, first_name=deetst, notify_version=3.8, custom=, payer_status=verified, num_cart_items=2, mc_handling1=0.00, mc_handling2=0.00, verify_sign=AWlpMEKr1B-fiuanqDTdbMsRWouOAszV3gnb-KGvvu6m4gSStEHJaqxU, payer_email=dee@binalogic.co.uk, mc_shipping1=0.00, mc_shipping2=0.00, tax1=0.00, tax2=0.00, txn_id=9LM6462888664481D, payment_type=instant, payer_business_name=deetst bina\'s Test Store, last_name=bina, item_name1=General Admission for Session Two Sat 11 June 1200 1600 hrs Attendee: Chad Murrin, receiver_email=secretary@guildfordcc.com, item_name2=General Admission for Session Two Sat 11 June 1200 1600 hrs Attendee: Chad Murrins Friend, quantity1=1, quantity2=1, pending_reason=unilateral, txn_type=cart, mc_gross_1=10.00, mc_currency=GBP, mc_gross_2=10.00, residence_country=GB, test_ipn=1, transaction_subject=, payment_gross=, ipn_track_id=9c9355fdb1865, 
IPN Response from gateway Server:
 VERIFIED 

Just to say again, I last did tests on 7 Jan when everything was fine. I came back to it yesterday 2 Feb when everything isn’t fine. So, comparing the error messages when the IPN Response from gateway server: VERIFIED (7th Jan and backwards) and IPN Response from gateway server: >BLANK<< (2 Feb onwards) don’t you think it’s got something to do with Fasthosts and what they’re doing their end?

If so, what should I be asking them?

Thank you.
Dee


James Murrin

February 3, 2016 at 7:58 am

I’ve just checked & done this now:

Auto return is on, and the return address is: http://guildfordbeerfestival.co.uk/thankyou/

The IPN url is set to http://guildfordbeerfestival.co.uk/transactions/.

Did another test – payment incomplete. Here’s the latest ipn results log entry:

Errors resulting from the execution of curl transfer: error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure[02/03/2016 2:33 PM] - FAIL: IPN Validation Failed . /cgi-bin/webscr : www.sandbox.paypal.com
IPN POST Vars from gateway:
mc_gross=10.00, protection_eligibility=Ineligible, item_number1=, payer_id=74VRJGPBJRBQC, tax=0.00, payment_date=06:33:48 Feb 03, 2016 PST, payment_status=Pending, charset=windows-1252, mc_shipping=0.00, mc_handling=0.00, first_name=deetst, notify_version=3.8, custom=, payer_status=verified, num_cart_items=1, mc_handling1=0.00, verify_sign=AiKZhEEPLJjSIccz.2M.tbyW5YFwAqp9sc7Huwv7kp5rkl9i71pzxIfy, payer_email=dee@binalogic.co.uk, mc_shipping1=0.00, tax1=0.00, txn_id=9EV09964MG416851G, payment_type=instant, payer_business_name=deetst bina\'s Test Store, last_name=bina, item_name1=General Admission for Session One Fri 10 June 1800 2200 hrs Attendee: Dee Stevens, receiver_email=secretary@guildfordcc.com, quantity1=1, pending_reason=unilateral, txn_type=cart, mc_gross_1=10.00, mc_currency=GBP, residence_country=GB, test_ipn=1, transaction_subject=, payment_gross=, ipn_track_id=441de59370f4d, 
IPN Response from gateway Server:

Would appreciate any ideas or pointers you have, many thanks.


Lorenzo Orlando Caum

  • Support Staff

February 3, 2016 at 9:55 am

Thanks for sharing that. This shows that the IPN is failing to communicate with your site:

Errors resulting from the execution of curl transfer: error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure[02/03/2016 2:33 PM] - FAIL: IPN Validation Failed . /cgi-bin/webscr : www.sandbox.paypal.com

Who is your hosting provider?


Lorenzo


James Murrin

February 3, 2016 at 10:46 am

Hosting provider is Fasthosts:

https://www.fasthosts.co.uk/

well known uk based web hosting company.

Please advise.


Josh

  • Support Staff

February 3, 2016 at 11:08 am

I’d advise firstly to contact your hosting provider and ask them to make sure your server is compliant with PayPal’s new requirements, which are listed here:

https://www.paypal-knowledge.com/infocenter/index?page=content&widgetview=true&id=FAQ1766&viewlocale=en_US&direct=en

Secondly, while this normally shouldn’t be necessary if the server has SSLv3 disabled, you can add a patch to your copy of Event Espresso 3 by adding this code in between line 90 and 91 of /event-espresso/gateways/paypal/Paypal.php:

$error["set_sslversion"] = curl_setopt($ch, CURLOPT_SSLVERSION, CURL_SSLVERSION_TLSv1);


James Murrin

February 4, 2016 at 5:19 am

Hello Josh

Thank you for your ideas. Tried the code, didn’t work I’m afraid.

Contacted web hosting company. They confirm SHA-256 supported. Not clear yet whether they also expect G5 root certificates.

Please could you confirm that the handshake error was from the hosting company’s shared web hosting server and not from their mail server? I’m guessing it was the web hosting server since the IPN from Paypal was trying to make contact with EE’s transaction / thank you pages and the process hadn’t got around to sending out emails yet?

I don’t have a dedicated SSL on this website. Would all problems be solved if I did? If I go ahead and buy dedicated SSL, do I need to do anything to the EE setup in order to activate it and solve the Payment Incomplete problem?

Thank you for your help.

Dee


Tony

  • Support Staff

February 4, 2016 at 5:45 am

Please could you confirm that the handshake error was from the hosting company’s shared web hosting server and not from their mail server?

Yes this is an issue with the web hosting server, not the mail server.

I’m guessing it was the web hosting server since the IPN from Paypal was trying to make contact with EE’s transaction / thank you pages and the process hadn’t got around to sending out emails yet?

Its actually the other way around, the IPN has been received but EE is attempting to verify the IPN by connecting to PayPal. This is done to prevent users from sending fake IPN’s to your site and completing the transaction. However the issue is still the same 🙂

I don’t have a dedicated SSL on this website. Would all problems be solved if I did? If I go ahead and buy dedicated SSL, do I need to do anything to the EE setup in order to activate it and solve the Payment Incomplete problem?

Possibly yes, but only because then the server ‘should’ be correctly set up to handle the https connections correctly, the issue here is to do with the server setup so we can’t give a true yes or no.

Depending on the version of cURL installed on the server this may be a bug within cURL and they (the hosting company) need to update.

It could even be related to the version of apache they are running, see here: http://serverfault.com/questions/640344/why-did-git-stop-working-after-server-disabled-sslv3

Generally when these issues come up it turns out that the host either doesn’t have CA Root cert installed or it needs to be updated, so I personally I would start be requesting the host look into this.


James Murrin

February 4, 2016 at 8:49 am

Tony, thanks very much for your help. I’ve put some Qs to the hosting company to find out more & will come back let you know.

Dee


James Murrin

February 10, 2016 at 8:22 am

Hello Tony

I am about to migrate my website to a new hosting platform which will enable me to have the SSL certificate and then get around this Payment incomplete problem.

I’ve just migrated another website to this same platform and I’ve discovered, due to increased security requirements, that the hosting company requires certain conditions to be met in order for the website to ‘send’ email.

I’m looking at this document:
https://help.fasthosts.co.uk/app/answers/detail/a_id/40/~/sending-email-from-your-website

In order to successfully send a form via email (from a Contact-Us page) I used this:

Use the PHP mail function and set the ‘mail from’ value using the following code - replacing email@yourdomain.com with the appropriate email address.

$email_from = “email@yourdomain.com”;
ini_set("sendmail_from", “$email_from");

You need to add a fifth “-f” parameter to the sendmail function. This will set the name of the from address.

mail($email_to, $email_subject, $email_message, $headers, ‘-f’.$email_from);

It’s explained in full here: https://help.fasthosts.co.uk/app/answers/detail/a_id/59

I used this code and created a sendmail.php file which was called by the form. That is about as sophisticated as my php skills go, so ……….

can you help me so that we can incorporate this code somehow in to the EE3 software so that we can send emails from my website and meet the conditions of their SMTP mail servers please?

Thank you very much.

Dee


Josh

  • Support Staff

February 10, 2016 at 8:45 am

Hi Dee,

You shouldn’t need to change anything in EE3 because EE3 uses the wpmail() function, which is a wrapper for PHP mail() function. Instead you can use the WP Mail Options plugin, and follow the steps listed in this guide for fixing WordPress mail problems on Fasthosts.


James Murrin

February 10, 2016 at 11:46 am

Thank you very much Josh – both those are really helpful to know. This gives me enough to be getting on with now, so okay to close the call.

Many thanks for you all for your time & help.

Dee

Viewing 13 reply threads

The support post ‘Payment Incomplete’ 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