January 22nd, 2019 – We became aware of a potential issue with clients using Authorize.net as their payment processor in Magento stores. The issue originated from an Authorize.net update which led to multiple customers being unable to complete payment for purchases.
During this time, the Nexcess support team were actively engaged in fixing the issue for customers that reached out.
As of January 23rd, 2019, Authorize.net have reverted the changes they made, thereby fixing the problem. If you are still experiencing issues, please get in touch with the Nexcess support team.
Changes made to how character data was submitted to Authorize.net systems led to payment issues arising.
The issue originated as a result of multiple-character delimiters passed via the x_delim_char field no longer being respected by the Auth.net payment gateway. Because of Authorize.net’s change, only the first character in the delimiter was being used.
Customers trying to make purchases on Magento stores that used Authorize.net were unable to complete the checkout process and were instead directed to a 500 page, with the server receiving a RESPONSE_CODE_ERROR (3).
At around 8 pm EST, Authorize.net confirmed that they were planning to revert the changes. At approximately 9:30 pm EST, clients were reporting that their payment processing system is again working.
How to Fix It
Note that as of January 23rd, 2019, Authorize.net have reverted their changes and a temporary fix or workaround should no longer be required. If you have already implemented this fix, we recommend that you revert it – or ask the Nexcess support team to revert it for you.
A quick fix offered by the Magento Community stated that the line:
Be changed in the following class (app/code/core/Mage/Paygate/Model/Authorize.netphp)