These are the primary reasons for R04 returns for ACH transactions with Chase TANs:
-
Mismatched account number and routing number
- The TAN comprises a specific tokenized, or virtual, account number and routing number, which are different from the user's true account numbers. Chase does not share the full true account number and routing number through their APIs. The TAN pair must be used as provided. Combining the normal account number with the TAN routing number, or vice versa, will result in an R04 or other applicable return code.
-
Truncating digits
- The tokenized account number shared through the API is 17-digits, with “00” as the first 2 digits. The two leading 0s may be dropped, but it’s important to keep the remaining 15 digits when generating the NACHA file. Chase has seen instances where leading or trailing digits were dropped, causing the account lookup to fail and an R04 response.
-
Using a disabled TAN – Chase reports that customers using invalid TANs account for the largest number of R04s seen in their logs.
-
When account access consent is revoked for any reason, the associated TAN is disabled. Chase has seen instances where the TAN was disabled shortly before the ACH transaction, and other instances where the TAN was disabled months prior to the transaction. Using TANs is different from the typical “one and done” account verification. It’s important that you maintain awareness of your user's account consent status before submitting their TANs for transactions.
-
Additionally, the Plaid team has built webhooks to provide you with real-time alerts when a user updates their data sharing preferences on Chase’s domain and a TAN is invalidated. While no action is required, we strongly encourage your team to listen for these webhooks in order to be notified of these changes and mitigate issues with Chase TANs. Learn more in our technical docs on the
USER_ACCOUNT_REVOKED
andUSER_PERMISSION_REVOKED
webhooks.
-
When account access consent is revoked for any reason, the associated TAN is disabled. Chase has seen instances where the TAN was disabled shortly before the ACH transaction, and other instances where the TAN was disabled months prior to the transaction. Using TANs is different from the typical “one and done” account verification. It’s important that you maintain awareness of your user's account consent status before submitting their TANs for transactions.
-
-
-
USER_ACCOUNT_REVOKED
: If you are using Auth and receive this webhook for a Chase Item, this webhook indicates that the TAN associated with the revoked account is no longer valid and cannot be used to create new transfers. You should not create new ACH transfers for the account that was revoked until access has been re-granted.
-
-
-
-
USER_PERMISSION_REVOKED
: If you receive this webhook for a Chase Item, you should not create any new ACH transfers for that Item, as they will be returned.
-