Slash raises $100M Series C at a $1.4B valuation

Learn more
R04

ACH Return Code R04: Invalid Account Number Structure

Invalid Account Number Structure

R04: Invalid Account Number Structure Explained

The R04 return code can present on both consumer and non-consumer accounts. R04 indicates that the account number structure is not valid. This return code is not restricted to a particular SEC code or account type. The RDFI has a 2-banking day window for return.

Common causes of ACH return code R04 typically stem from account numbers containing too many/few digits, transposed numbers, invalid characters, or other formatting errors that prevent the receiving bank from recognizing the account number.

The standard in finance

Slash goes above with better controls, better rewards, and better support for your business.

The standard in finance

What is an ACH Return Code?

An ACH return code is a standardized code used to explain why an Automated Clearing House (ACH) transaction was returned by the receiving bank.

Codes are issued by the Receiving Depository Financial Institution (RDFI) and maintained by Nacha, the organization that governs the ACH Network. Certain codes may apply to consumer accounts, non-consumer (business) accounts, or both. These codes help banks, payment processors, and originators understand what went wrong during an ACH transaction so they can determine the appropriate next steps, such as retrying the payment, correcting information, or contacting the customer.

What Does R04 Mean?

The ACH return code R04 means that the account number is malformed — it fails mathematical check digit validation or it has the wrong number of digits. The bank cannot process the entry as the number does not conform to the basic ACH standards.

R04 vs R03: The Key Distinction

Where they differ:

  • R04 = account number is structurally invalid (wrong format)
  • R03 = account number is structurally valid but doesn't match any open account.

The fix to code R04 is by correcting the account number format, whereas fixing code R03 requires verifying account ownership.

Why Does R04 Happen With Correct Information?

Even with correct information, ACH return code R04 can appear for a few reasons:

  • Leading zeros stripped during data entry
  • Originator system truncating long account numbers
  • Routing number entered in the account number field
  • Spaces or dashes in the number string
  • Data migration errors that drop digits

Check Digit Validation Explained

ACH account numbers use a check digit algorithm to catch transcription errors. If a single digit is wrong, the check digit fails and R04 is returned at the RDFI level before the entry posts to any account.

NACHA Administrative Return Rate for R04

R04 counts towards NACHA's 3% administrative return rate threshold (alongside R02 and R03). Because R04 is a direct result from a data formatting error, a rate above 3% signals a systemic problem in how banking details are collected.

How to Fix an R04 Return

The fix of an R04 return is simple — obtain the correct information:

  • Request a voided check to verify that the account number and supporting information is correct
  • Check your system and number inputs for leading zero truncation and missed character limits
  • Submit a new ACH transaction with the corrected information
  • Do not re-present the original.

Sending ACH Payments with Slash

Slash validates banking details and vendor onboarding, catching formatting errors before they result in R04 returns. The platform flags suspicious account number entries and prompts re-verification that reduces failed payment rates and the overhead of chasing corrections.¹

You can send domestic or international ACH payments using Slash by following these steps:

  1. Navigate to the Payments dashboard and click Transfer Funds in the top-right corner.
  2. Select a recipient using saved contact and banking information, or add a new recipient by entering their contact and bank details.
  3. Choose the Slash account you want to use as the payment source, select ACH Transfer as the payment method, choose the destination bank account, and enter the payment amount (in USD).
  4. Optionally, send the recipient an email confirmation with a payment description. You can also add a memo with internal notes that are visible only to you and other Slash account administrators.
  5. Review the recipient’s bank name, account number, and ACH routing number to ensure the payment details are correct.
  6. Once all information is confirmed, click Send Payment.

Slash offers 24/7 support by phone and email to help resolve any issues with sending payments. You can also improve how you manage ACH transfers by scheduling recurring ACH payments, receiving low-balance notifications, and tracking returned payments alongside other transactions. With Slash, you can view all account balances, ACH activity, and transfers in one centralized dashboard.

Apply in less than 10 minutes today

Join the 10,000+ businesses already using Slash.

How to resolve this return code

Follow these steps to address and prevent this ACH return.

1

Check if account and routing numbers were swapped.

Review the payment order to verify the numbers were not accidentally reversed.

2

Remove invalid characters from the account number.

Strip any extra spaces, symbols, or non-numeric characters from the field.

3

Confirm correct format with the recipient's bank.

Contact the bank directly to verify the required account number format and length.

Send ACH payments with confidence

Slash provides real-time account validation, intelligent retry logic, and comprehensive analytics to help you minimize ACH returns and optimize your payment operations.

Apply in less than 10 minutes today

Join the 10,000+ businesses already using Slash.