As identified in this thread: http://www.zen-cart.com/showthread.p...Net-SIM-Issues

A user of authorize.net (SIM) was receiving an error 99 from Authorize.net when trying to reach the point to obtain credit card information from a customer.

Several different actions were attempted to try to resolve the issue (some that I suggested I admit were outrageous and unlikely to solve the situation, but seemed like could unexpectedly resolve the issue): Verifying the time_zone settings in multiple locations, attempting to adjust the time_zone to an alternate location, and adjusting the PHP check made in set_time_zone.php to name a few.

The two solutions that independently worked were 1) to comment out x_currency_code at lines 343 and 381 of includes/modules/payment/authorizenet.php and 2) the following without the x_currency_code being commented out.


Find line 385 that reads:

Code:
$submit_data_security =  $this->InsertFP(MODULE_PAYMENT_AUTHORIZENET_LOGIN,  MODULE_PAYMENT_AUTHORIZENET_TXNKEY,  number_format($order->info['total'], 2), $sequence);
and change to:

Code:
$submit_data_security =  $this->InsertFP(MODULE_PAYMENT_AUTHORIZENET_LOGIN,  MODULE_PAYMENT_AUTHORIZENET_TXNKEY,  number_format($order->info['total'], 2), $sequence,  $submit_data_core['x_currency_code']); //mc12345678 hash the  currency_code.
Some things of note, the system on which this was successful may have been unique, but this solution appears to fall in line with the guidance of the following post: https://support.authorize.net/authkb...=A569&actp=RSS

At last attempt the above site did provide a security warning indicating the certificate was issued by an unknown issuer.

Suggest this solution and issue be reviewed/evaluated for ZC 1.5.3+