contact_mailContact Form 7errorerrorlocksslcodecURLdescriptioncontact-form-7star_halfUncommonwarningModerate

Contact Form 7: Mail (2) sending failed: SSL certificate verification failed

Contact Form 7 reports a failure when trying to send the secondary email (Mail 2). The error indicates the SSL certificate presented by the SMTP server did not pass verification.

The verification step checks the certificate is signed by a trusted authority, it is still valid, and the hostname matches the certificate. If any of these checks fail, PHP aborts the TLS handshake and the mail is not sent.

Typical triggers include an expired or self‑signed certificate, a missing intermediate in the chain, a mismatch between the SMTP host name used in the form and the name on the certificate, or an outdated CA bundle on the web server.

When the PHP OpenSSL library is unable to locate a current list of root certificates, it treats the server’s certificate as untrusted. The same result occurs if the server requires SNI and the client does not provide the correct hostname.

Symptoms

[dashicons-warning]
Error message in CF7 UI
Mail (2) sending failed: SSL certificate verification failed appears after form submission.
[dashicons-email]
No email received
Secondary email never arrives in the inbox despite successful form submission.
[dashicons-admin-tools]
Debug log entries
WordPress debug log shows stream_socket_enable_crypto failure and SSL operation failed.

Common Causes

Invalid or expired certificate
SMTP server presents a certificate that is no longer valid or is self‑signed.
Hostname mismatch
Host name used in CF7 does not match the certificate’s common name or SAN.
Missing or outdated CA bundle
PHP is unable to find a current root certificate store, causing verification to fail.
Out‑of‑date OpenSSL
Server runs an old OpenSSL version that lacks support for required TLS versions.
Need this fixed right now?

Don't waste your day debugging. Our experts can Fix your issues in under 2 hours.*

Success Rate

100% Guaranteed

Starting from

$35 /hour
99+

Trusted by Business Owners

“I spent 3 days trying to fix the Elementor loading loop. These guys fixed it in 20 minutes. Lifesavers!”

— Sarah J., Web Designer

Related Issues

contact_mail
Contact Form 7: REST API request failed: 503 Service Unavailable
A 503 Service Unavailable response stops Contact Form 7 from sending data...
apiREST APIerror503descriptioncontact-form-7
contact_mail
Contact Form 7: REST API request failed: 429 Too Many Requests

The form tries to send data through the WordPress REST API. The...

apiREST APIerrorerrorsecurityfirewalldescriptioncontact-form-7settingsserver_configuration
contact_mail
Contact Form 7: REST API request failed: 401 Unauthorized

The form tries to send data via the WordPress REST API. The...

apiREST APIadmin_panel_settingspermissionsdescriptioncontact-form-7lock401
contact_mail
Contact Form 7: File upload error: temporary directory missing

The error appears when Contact Form 7 cannot locate a writable temporary...

codePHPcloud_offupload erroradmin_panel_settingspermissionsdescriptiontemporary filedescriptioncontact-form-7
contact_mail
Contact Form 7: Mail (2) sending failed: PHP mail() function disabled

Contact Form 7 reports a failure for Mail (2) when the PHP...

codePHPerrorerrordescriptioncontact-form-7mailMailsettingsserver_configuration
contact_mail
Contact Form 7: Mail (2) sending failed: SSL certificate verification failed

Contact Form 7 reports a failure when trying to send the secondary...

errorerrorlocksslcodecURLdescriptioncontact-form-7