> ## Documentation Index
> Fetch the complete documentation index at: https://docs.mx.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Best Practices

These best practices focus on preventing ACH returns when using Instant Account Verification (IAV) for account verification and transfers.

For broader guidance on implementing the Connect Widget and driving user engagement, see [Connect Widget Best Practices](/connect/best-practices).

## Reducing ACH Returns

To limit the number of ACH returns:

* Read the account balance immediately after an IAV.
* Submit an ACH transaction as soon as possible after an IAV.
* Run a balance check and read the account balance before submitting future ACH transfers for an account.

The following table outlines the preventative steps and resolution steps for each return code.

| Return Code                      | Preventative Steps                                                                                                                                                                                                                                                              | Resolution Steps                                                                                                                                                                                                                                                                                 |
| :------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **R01 — Insufficient Funds**     | 1. Read the account balance immediately after an IAV to confirm there are sufficient funds.<br />2. Submit an ACH transaction as soon as possible after an IAV.<br />3. Run a balance check and read the account balance before submitting future ACH transfers for an account. | Wait until there are sufficient funds before submitting another ACH transaction for the account.                                                                                                                                                                                                 |
| **R02 — Account Closed**         | Run a balance check and then read the account details to confirm that the account is still open: `is_closed: false`.                                                                                                                                                            | <ul><li>Stop all future transfer requests for this account.</li><li>Have the end user verify a different account.</li></ul>                                                                                                                                                                      |
| **R03 — Account Not Found**      | N/A                                                                                                                                                                                                                                                                             | 1. Make sure that an [account owner identification (identity)](/products/connectivity/account-owner-identification/) has been performed before initiating an ACH transaction.<br />2. Confirm that the name provided by the end user is the same as the one from the account owner verification. |
| **R04 — Invalid Account Number** | Confirm that the `passed_validation` field is `true` before submitting an ACH transaction for the account.                                                                                                                                                                      | Stop all future transfer requests for this account.                                                                                                                                                                                                                                              |

### Run Only One IAV Per Account

There is usually no need to run multiple IAV jobs for a single account. Once you have the account and routing/transit numbers, these can be reused any number of times for multiple future ACH transfers. There is no need to run an IAV before each ACH transfer with the same account.

However, for ACH transfers that occur more than a few hours after the initial IAV, you must run a [balance check](/products/connectivity/balance-checks) and [read the account balance](/api-reference/platform-api/reference/read-account) in order to confirm the account is still open and there are sufficient funds in it.
