ACH Error Codes

Complete reference guide to ACH transaction error codes, rejection codes, and resolution steps for payment processing workflows.

Understanding ACH error codes is essential for troubleshooting payment processing issues and maintaining smooth transaction workflows. This reference guide covers error codes returned during ACH transaction processing and provides actionable steps for resolution.

Compliance Note: ACH transactions must comply with NACHA regulations. Some error resolutions may require customer verification or account updates to maintain compliance standards.

How to Use This Guide

When an ACH transaction fails, the system returns a specific error code. Use this guide to:

  1. Identify the issue - Find the error code in the tables below
  2. Understand the cause - Review the description for context
  3. Apply the resolution - Follow the recommended steps to resolve the issue
  4. Prevent recurrence - Implement validation checks where applicable

Standard ACH Transaction Error Codes

These error codes apply to all ACH transaction types, including sales, credits, and returns.

CodeMessageDescriptionResolution
0ApprovedThe transaction was successfully approved and processed. No validation or processor errors occurred.None required.
96ErrorThe transaction failed due to an unhandled exception in the application. This can happen during validation, routing, processor communication, or other processing logic.Contact Support for assistance.
29Unauthorized TransactionMerchant's configuration does not include permission for standalone ACH transactions. Attempting a standalone credit without authorization triggers this error.Verify merchant provisioning includes permission for standalone ACH transactions. Contact Support to update merchant permissions if needed.
140Verification ErrorThe routing number provided failed validation during ACH verification.Verify that the routing number is correct and valid for the customer's bank. The number must be a valid 9-digit ABA routing number.
1000Unknown UserThe credentials, such as the AccountID, Username, or Password in the ServiceCredential section provided in the API request, are invalid.Confirm that valid credentials are used in both the ServiceCredential section and the Basic Auth header. Ensure no fields are missing or set to null.
190Null/Invalid AlphaNumeric First & Last Individual/Company NameThe transaction is missing the required First Name and Last Name values for the payer. This occurs when both the FirstName and LastName fields are empty or contain invalid characters (non-alphanumeric).Ensure that both FirstName and LastName fields contain valid alphanumeric values. For business transactions, supply the company name in the appropriate field.
209Invalid Transaction CodeThe system receives an unrecognized or unsupported transaction type. Occurs when TransactionType is NotSet or does not match supported cases (Sale, StandAloneCredit, Refund, ACHReturn, Void, etc.).Ensure that the correct TransactionType is being set before calling the route.
17Invalid Batch NumberThe system was unable to locate a valid ACH settlement batch for the transaction.Contact Support for batch resolution.
96Error - ProcessorThe system attempted to process a transaction but found that the processor information was missing or not configured. This typically occurs when the processor is not provisioned for the merchant account.Verify that the processor is properly provisioned for the merchant account. Contact Support to provision or activate the processor.
814Provisioning DeactivatedThe merchant's processor is inactive or disabled due to compliance issues, account suspension, or maintenance.Confirm that the merchant account and processor provisioning are active. If deactivated, contact Support to re-enable provisioning before resubmitting transactions.
1007SEC Code Not AuthorizedThe submitted SEC (Standard Entry Class) code is not provisioned or authorized for the merchant.Contact Support for assistance.
701Invalid or Unroutable Routing NumberThe routing number failed validation during ACH verification.Verify that the routing number is correct and valid for the customer's bank. The number must be a valid 9-digit ABA routing number.
702Invalid Account NumberThe bank account number is invalid, missing, formatted incorrectly, or fails validation checks (contains invalid characters, wrong length, or checksum error).Verify that the customer's bank account number is correct and formatted properly (numeric only, no spaces or special characters). If issues persist, confirm account details directly with the customer's bank.
703Invalid Account TypeThe AccountType value is not recognized or unsupported. Acceptable values: 0 (Checking), 1 (Savings).Verify that the request specifies a valid account type: 0 for Checking or 1 for Savings. Update the field value and resubmit the transaction.
704Invalid Account Holder TypeThe AccountHolderType is invalid or missing. Acceptable values: 0 (Personal), 1 (Business).Verify that the request specifies a valid account holder type: 0 for Personal or 1 for Business. Update the value and resubmit the transaction.
706Invalid CityThe City field is invalid or improperly formatted. Validation rules: Must not exceed 50 characters; may contain letters, spaces, hyphens (-), periods (.), or apostrophes (') only.Ensure the City field contains a valid name (e.g., "New York", "St. Louis", "O'Fallon"). Remove any numbers, symbols, or extra characters, then resubmit.
705Invalid ZipcodeThe ZipCode field is invalid or improperly formatted. Validation rules: Must not exceed 10 characters; may contain letters, numbers, spaces, or dashes (-) only.Ensure the ZipCode field is properly formatted (e.g., "12345" or "12345-6789"). Remove any invalid characters or extra spaces, then resubmit.

ACH Refund-Specific Error Codes

These error codes are specific to ACH refund transactions and require the original transaction context.

CodeMessageDescriptionResolution
801Original Transaction Not FoundThe refund transaction references an originalTransactionID that cannot be found in the system.Verify the original TransactionID is correct. Ensure the original transaction exists and is in a refundable state. Correct the transaction ID and resubmit the refund.
802Original Transaction Not ApprovedThe refund references an original transaction that was unsuccessful. Refunds can only be issued for successfully processed transactions.Verify the status of the original transaction. Refunds can only be created for approved transactions (0: Approved). Ensure the original transaction was successfully processed before retrying the refund.
814Provisioning DeactivatedThe merchant's processor provisioning is currently inactive or disabled due to compliance issues, account suspension, or maintenance.Confirm that the merchant account and processor provisioning are active. If deactivated, contact Support to re-enable provisioning before resubmitting transactions.

Important: Refund transactions have specific timing requirements under NACHA rules. Review ACH Refund Guidelines for compliance requirements.

ACH Rejection Codes

ACH rejection codes are returned by the receiving bank or the ACH network, indicating why a transaction was rejected after initial processing.

Rejection CodeMessageDescriptionResolution
14Invalid AccountThe bank account has been identified as closed or invalid due to risk or verification checks.Verify the customer's bank account status with their financial institution. If the account has been closed, request updated payment details before retrying the transaction.
996Risk DeclineThe risk engine flagged the transaction due to suspicious account activity or high-risk indicators. Triggered when the account matches known fraud, closed, or suspicious activity lists.Review the customer's history and account information. Contact the Support Team to determine if the transaction can be retried with verified details. Avoid immediate retries until the risk flag is resolved.
4001Risk DuplicateThe transaction is identified as a duplicate transaction by the risk management system.Confirm the transaction has not already been processed. Check your Transaction History and avoid resubmitting duplicate requests.
4013Risk IP BlockThe transaction was blocked because the originating IP address is on the system's risk exclusion list.Review the IP address used in the API request. If the address is legitimate, contact Support to remove it from the exclusion list. Ensure requests originate only from authorized, trusted IP addresses.
4019Risk Sale Transaction Amount LimitThe ACH sale transaction amount exceeds the permitted range defined by the risk configuration.Verify that the transaction amount is within the merchant's configured ACH sale limits. If higher limits are required, contact Support to request an increase.

ACH R Codes

The ACH return code is sent directly to Stax by the merchant’s bank. An "R Code" provides additional information on why the attempted debit or credit by Stax failed. Please contact Stax Partner Support via Stax Connect for any additional assistance.

R CodeDescription
R01: Insufficient FundsThe available balance is insufficient to cover the debit amount.
R02: Account ClosedAn account that was previously active has been closed by the customer.
R03: No Account / Unable to Locate AccountThe account information provided is valid, but the account number does not match the individual/business.
R04: Invalid Account NumberThe account number format is invalid.
R05: Unauthorized Debit to Consumer Account Using Corporate SEC CodeA debit was posted to a consumer account, but the account holder has not authorized the entry.
R06: Returned per ODFI's RequestThe ODFI requested that the RDFI return the ACH entry.
R07: Authorization Revoked by CustomerThe customer who initially authorized the ACH entry has revoked authorization.
R08: Payment StoppedThe receiver of a recurring debit transaction placed a stop payment order.
R09: Uncollected FundsA sufficient ledger balance, but the available balance is below this dollar value.
R10: Customer Advises UnauthorizedThe receiver has notified their bank that this entry is unauthorized.
R11: Check Truncation Entry ReturnOnly used when returning a check truncation.
R12: Branch Sold to Another DFIA financial institution received an entry to an account that has been sold to another institution.
R13: Invalid ACH Routing NumberThe provided routing number is invalid.
R14: Representative Payee Deceased or Unable to ContinueThe representative payee is either deceased or can no longer continue in their original capacity.
R15: Beneficiary or Account Holder DeceasedThe beneficiary or Account Holder is deceased.
R16: Account FrozenAccess to the account is restricted due to legal action or a specific action taken by RDFI.
R17: File Record Edit CriteriaA transaction may contain invalid account information (excluding routing and account numbers) or be questionable.
R20: Non-transactional AccountThe account is not set up to accept payments.
R29: Corporate Customer Advises Not AuthorizedThe account holder advised the RDFI that the originator cannot debit their account.

Next Steps

For Developers

For Partners

  • Configure Transaction Monitoring to track error patterns
  • Review Risk Management Settings to optimize approval rates
  • Access the Merchant Portal for account provisioning updates

Need Help?

  • Reach out to Support for integration assistance, provisioning and compliance questions.

This documentation is updated regularly to reflect current NACHA regulations and processing requirements. Last updated: November 2025.