- Return: the receiving bank sends a transfer back, for reasons like a closed account, insufficient funds, or an unauthorized debit. You can return transfers you receive, and transfers you originate can be returned to you.
- Reversal: you originated a transfer by mistake (a duplicate, a wrong amount) and initiate a correcting entry to recover the funds.
- Notification of Change (NOC): the receiving bank accepts your transfer but tells you a detail was incorrect, and provides the corrected value to use on future transfers.
- Originator: the person or business that initiates an ACH transfer.
- ODFI (Originating Depository Financial Institution): the bank that sends a transfer into the ACH network.
- RDFI (Receiving Depository Financial Institution): the bank that receives it.
Returns
You can return an ACH transfer you received for any valid reason usingPOST /v1/ach/{ach_id}/return. External banks can likewise return transfers you originate; those arrive as status changes and webhooks on the original transfer (see Statuses).
The deadline depends on the return reason:
- Standard returns must be available to the ODFI by the opening of business on the second banking day after the original settlement date.
- Unauthorized debit returns (R05, R07, R10, R11) have until the opening of business on the 60th calendar day after settlement, and require a signed Written Statement of Unauthorized Debit (WSUD). Obtain the WSUD before initiating the return and retain it for at least one year from the settlement date.
posted. Lead accepts the return request immediately, but does not send it to the Fed until the original transfer posts.
Return Codes
Thereturn_code you pass to POST /v1/ach/{ach_id}/return determines what the call does: a standard code initiates a return, a dishonor code dishonors an existing return, and a contest code contests an existing dishonored return. In every case you target the original transfer’s ach_id, and the code must match the transfer’s current position in the return chain.
Standard return codes initiate a return against a transfer you received:
A return can itself be disputed, and both sides of that dispute run through the same endpoint. Submitting a dishonor or contest code moves the original transfer through the corresponding return chain statuses (
pending_dishonored_return, return_dishonored, pending_contested_return, return_contested).
Dishonored return codes dishonor a return you received against a transfer you originated. Submit within 5 banking days of the return settling:
Contested dishonored return codes contest a dishonor of a return you issued. Submit within 2 banking days of the dishonor settling:
Late Returns
If you suspect a debit from one of your accounts was unauthorized but the return window has passed, contact Lead promptly with documentation showing the authorization is invalid. Lead will review the request and, if appropriate, ask the ODFI for permission to make a late return. The same process can run against you as an Originator. Nacha requires Originators to retain proof of authorization for two years after the settlement date of the last debit, so keep authorization records ready to support or dispute late return requests.Reversals
Use a reversal to correct a transfer you originated in error: a duplicate payment, a wrong amount, or a wrong receiver. Initiate it withPOST /v1/ach/{ach_id}/reverse within five banking days of the original settlement date. Reversals are only for genuine mistakes; never use them to claw back a transaction you believe is unauthorized (that is a return, initiated by the receiving side).
How reversals behave:
- A reversal is a separate ACH transfer with its own lifecycle and the same statuses as any other transfer.
- The original transfer is annotated with a reversal object containing the reversal reason and the ID of the reversal transfer.
- No webhooks fire on the original transfer when a reversal is created. Watch the reversal transfer for status webhooks.
- A reversal can itself be returned by the receiving bank.
Return or Reversal?
Who made the mistake determines the tool. If you originated it, reverse it. If you received it, return it.Notifications of Change
Instead of returning a transfer, an RDFI can accept and post it but send back a Notification of Change (NOC): a notice that a detail of the transfer was incorrect, along with the corrected value to use on all future transfers to that receiver. You don’t need to parse Nacha change codes. Lead normalizes each NOC into acorrection object on the original ACH transfer, containing only the fields that changed. At least one field will be present:
account_number: the corrected counterparty account number.routing_number: the corrected counterparty routing number.account_type: the corrected counterparty account type,checkingorsavings.
What You Must Do
- The transfer that triggered the NOC processes as usual; no action is needed on it.
- Update your counterparty records with the corrected values within six banking days of receiving the correction, or before initiating the next transfer to that receiver, whichever is later. Originators of one-time payments are exempt.
- Do not keep using the old details. Lead may reject a subsequent transfer to a corrected counterparty with the rejection reason
previously_corrected, which references the ACH that carried the correction. Lead also monitors NOC activity and may reach out if the same correction keeps arriving.
Manage the corrections you receive proactively. If you have questions or see unexpected activity, contact Lead as soon as possible.
Mapping to Nacha Change Codes
If you reconcile against raw Nacha data, such as the Return/NOC file, the common change codes map tocorrection fields as follows:

