Authorize.net Curl 77 Connection Error
If you’ve spent enough time working with e-commerce carts, the chances that you’ve run into the dreaded “CURL Connection Error” are pretty high. Thankfully solving it is not that difficult.
When processing a transaction in Authorize.net (and also CIM), your webserver makes several encrypted connections to Authorize.net. SSL certificates play a large role in ensuring that your webserver is in fact speaking with the correct and authorized server. Your webserver basically has a phone-book that lists all of the authorized servers and their correct contact information, that your e-commerce cart uses to lookup Authorize.net. If that phone-book becomes out of date OR gets updated, then your webserver will no longer be able to trust the connection to Authorize.net and will fail each attempt at connecting. The most common error we see is the “CURL Connection error: (77)”
If you are on a hosted platform, this generally happens after a software/security update has been processed on the server. Most cases this is because the “phone-book” was updated, but the webserver is still using an older copy of it in memory.
The quickest method is to immediately restart both the webserver and any services that may be running your underlying e-commerce server (php-fpm and nginx). Nine times out of ten this solves the issue.
If you are on a managed hosting environment, you will need to immediately contact your support team. We would recommend a phone call as the most timely option.
Another good tool to use, if its installed, is CURL.
A simple command to an HTTPS site (ig: curl -v -v -v -D – “https://google.com”) will provide a lot of debugging information as well as the paths that CURL is using to find the correct CRT file (phonebook). Again, your hosting company should be able to update it quickly with a fresh copy
A very good run-down of the issue can be found on StackOverflow.
Don’t hesitate to reach out if you need any help!