versionOfTLS() depends on www.howsmyssl.com, which didn't renew its own SSL cert!
Closed this issue · 6 comments
Today our site stopped processing credit card authorizations. I tracked the problem down to versionOfTLS() in BaseCurl.php. It makes a connection to https://www.howsmyssl.com/a/check
https://github.com/intuit/PHP-Payments-SDK/blob/master/src/HttpClients/core/BaseCurl.php#L151
Today howsmyssl.com's own SSL certificate expired, causing versionOfTLS() to fail, in turn causing setSSLConfig() to throw a PHP exception which prevents any Quickbooks Payments communication!
Fixing it now. Will make a quick release.
Looks like howsmyssl has just now updated their site with a free Let's Encrypt cert.
Still, maybe not such a great design to depend upon this free site?
Definitely not. It was there when we just started disabling tls 1.1 and developers are not understanding which tls version they are using. It is no longer necessary.
You might also consider updating cacert.pem. It appears to be 2 years old.
I disable the SSL checkings as well. Right now, it will not "verify" the certificate to see if it is signed by a valid authority. For maintenance purposes, "accept all certificate" is the default option.
In case somebody needs the validation, updated the cacert.pem as well.