Authorize.Net

Issues & Errors Fix

Estimated reading: 7 minutes

Authorize.Net Test Credentials

To run tests with this plugin, you will need a set of dedicated test credentials from Authorize.Net. Your live credentials cannot be used in “Test” mode. When you change the Environment setting to “Test”, the Connection Settings fields will remove your live credentials and let you enter your test credentials. When you switch back to “Production”, the plugin will restore your live credentials.Note: Do not set your production accounts into test mode from within your Authorize.Net account – this returns dummy data for live transactions, but does not work with the plugin’s test mode, since you’re still using production credentials.


Authorize.Net Error Codes

Authorize.Net provides many different error/response codes that can provide helpful information about what caused an error during payment processing. Click here to review Authorize.Net’s Response Code Reference. You can enter the code in this reference tool to see the cause of the error. In some cases, such as a transaction being held for review or declined, the plugin can’t resolve the issue. In those cases, you must fix the problem from your Authorize.Net account.

Notes:

  • Orders with Response Code = 4 will be approved, but can be cancelled manually in the WooCommerce admin and Authorize.Net Merchant Area area later if they fail review.
  • Be sure to have “Partial Authorization” turned off in your Authorize.Net Merchant Area. This will restrict orders with Response Code = 4 and Response Code = 295 from being approved. “Allow Partial Payments” is off by default, but to verify it is off, follow these steps:
    • Login to your Authorize.Net merchant area.
    • Go to Account > Partial Authorization.
    • Ensure that Allow Partial Payments is unchecked and click Submit to save your changes, if applicable.

Required Field Errors

If you receive an error like (E00027) - The transaction was unsuccessful. Error Code: 33 - [Field Name] is required., your Authorize.Net account is likely setup to require a field that our plugin cannot send. These errors can occur on orders, refunds, and void transactions.

To resolve this issue, you should remove all field requirements from your Authorize.Net account by following the steps below:

  1. Login to your Authorize.Net Account.
  2. Go to Account > Payment Form > Form Fields.
  3. Uncheck the Required boxes for all fields.
  4. Click Submit.

Accept.js Errors

If you receive an error like Accept.js Error: payment nonce is missing, your checkout page is likely not loading the Accept.js file when our plugin expects it to. This is usually caused by a JavaScript conflict of some kind, typically with your theme or another plugin. Optimization plugins can interfere with how JavaScript loads on your checkout page and cause this error. A few conflicting plugins to look for are:

  • Autoptimize
  • SG Optimizer
  • Hummingbird Pro

If you are using one of these plugins, disabling the plugin completely or adjusting its settings so they don’t optimize your checkout page should resolve the error.


eCheck Issues

If you enabled eChecks in the Authorize.Net gateway plugin but have not enabled WEB eCheck enabled on your Authorize.Net account, you may see errors like [Code 246] - This eCheck.Net type is not allowedClick here for instructions on setting up eChecks on your Authorize.Net account.


Refund Issues

When attempting to process an automatic refund, you may see the following error message:

Oops, you cannot partially void this order. Please use the full order amount.

This means that you’re trying to perform a partial refund, but the charge hasn’t been settled yet. This can happen when you try to refund within a day of purchase. The Authorize.Net plugin tries to void this order since the funds haven’t been transferred yet, but Authorize.Net doesn’t permit partial voids.

To resolve this, please wait until the charge has settled (about 24 hours after the order was charged) before trying the refund again.


Failed Subscription Renewals

The most frequent cause of failed subscription renewals is the “Payment token is missing or invalid” error. This occurs when payment data has changed on your site or within Authorize.Net for this user, but the subscription record hasn’t been updated.

For a renewal to process successfully, a few conditions must be met:

If the customer profile ID and payment profile ID (payment token) don’t match between the user and subscription records, any automated renewal orders will fail until you update the subscription record IDs to match the user record IDs.

We have a few recommendations for preventing mismatches between user and subscription records:

  • Don’t use the same Authorize.Net API credentials on multiple sites. If customer payment information is changed on one site but not another site, your payment profile information may no longer sync with your Authorize.Net account properly.
  • If you take customer information over the phone, be sure to update the payment information on your site instead of on Authorize.Net. Our plugin will push changes from your site to your Authorize.Net account, but won’t be notified of payment information changes in Authorize.Net, so it can’t update your site’s subscription records.
  • If you make any changes to customer or payment profile information from your Authorize.Net account, be sure to also update the subscription records on your site. You should double-check customer profile ID and payment profile ID for the subscription any time you make changes in Authorize.Net.
  • If your customers want to update a subscription payment method, they must use the subscription “Change Payment” process. Simply adding a new payment method to their site account won’t change the subscription’s payment method. If you’re doing this for them, we recommend using the free User Switching plugin to impersonate their account.

Other Issues

Having a different problem? Follow these steps to make sure everything is setup correctly before posting a support request:

EASY ACCESS