When using Authorize.net SIM module, your customers may encounter the following error message:
An error occurred while trying to report this transaction to the merchant. An e-mail has been sent to the merchant informing them of the error. The following is the result of the attempt to charge your credit card.
There are several reasons for seeing this message:
1. Your site is too slow in responding to Authorize.net's attempt to return the customer to your site and/or send back transaction authorization to your site. Maximum 10 seconds is permitted. If your server is slower than 10 seconds when attempting to load a page, you have a more serious problem than merely handling payments. You need to resolve your server speed problem first. Start by talking to your hosting company, and/or consulting our FAQs on speed and performance.
2. If your store is in Down For Maintenance mode, you cannot test SIM transactions.
3. You have the Authorize.net server's IP address blocked in your store's server firewall or .htaccess rules. Consult your server's apache errorlog to find the IP address which is being repeatedly denied when payments are attempted, and unblock it.
4. You may have entered invalid URLs into your Authorize.net "Relay Response URL" and/or "Receipt URL" settings. Ideally you should leave them blank and let your store send the proper values with your transactions, or if you are uncomfortable with that for some reason, set them to point to your index.php?main_page=checkout_process URL.
5. You might have a problem caused by an invalid or improperly configured SSL certificate on your site. Thus, if Authorize.net is attempting to respond to your site and your site has problems in SSL mode, then Authorize.net will be encountering either an error message or delayed response, thus triggering symptoms similar to #1 above.
6. You might have invalid rewrite rules set as a result of creating or adding an .htaccess file to rewrite URLs as part of so-called "seo" addons, or installed such an addon. Many times such addons fail to properly handle all returning responses from external systems properly, resulting in serious system problems.
7. If your site has a problem with sessions handling or cannot properly set a valid session cookie, you might have similar problems because the return response cannot be connected to the customer's original shopping session, and thus an error is returned, and thus Authorize.net doesn't see the expected "200" response code they want to see. (If they don't see a "200" response, they send the error message which is the topic of this article.)