R28 - Routing Number Check Digit Error
The 9th digit of the routing number (the check digit) fails the ABA 3-7-1 weighted modulus-10 validation. The routing number is arithmetically impossible.
R28 - Routing Number Check Digit Error
The 9th digit of the routing number (the check digit) fails the ABA 3-7-1 weighted modulus-10 validation. The routing number is arithmetically impossible. This rejection is recoverable: correct the cause and the same payment can be resubmitted.
What this code means
The 9th digit of the routing number (the check digit) fails the ABA 3-7-1 weighted modulus-10 validation. The routing number is arithmetically impossible.
Typical causes
- Digit transposed in the routing number
- Routing number truncated or padded incorrectly
- Manual entry of the routing number without check-digit validation
What to do
Recompute/correct the routing number and re-send. Not a reinitiation. This is exactly the class of error a client-side ABA validator catches before the file is ever sent.
What it looks like in an ACH return
The return arrives as an Addenda Record (type 99), 94 characters wide. The return reason code sits in positions 4-6.
799R28091000010000001 09100001 091000019000001Tools for this code
Decode a real status report, or check a payment file before you send it — all in your browser, nothing uploaded.
Related codes
Source: Nacha ISO 20022 mapping guide + Federal Reserve ACH Return Reason Report + US Treasury Green Book · Last verified: 2026-07-13
Checked against: nacha.org · frbservices.org