Skip to content

ACH return reason code

R06 return code: Returned per ODFI's Request

The ODFI asked the RDFI to return the entry (it may ask for any reason: an erroneous or a fraudulent entry, for example) and the RDFI agreed.

What R06 means

R06 is the return reason code Returned per ODFI's Request. The ODFI asked the RDFI to return the entry (it may ask for any reason: an erroneous or a fraudulent entry, for example) and the RDFI agreed.

It is sent by the RDFI as a return entry: the original entry goes back to the ODFI with an addenda record carrying R06, and the ODFI passes the return on to the Originator.

Typical causes

  • The ODFI asked the RDFI to send an entry back — an erroneous or duplicate entry, or one the Originator reports as fraudulent, for example — and the RDFI agreed. Since October 1, 2024 the ODFI may ask for any reason.

Return timeframe

No fixed timeframe: the ODFI may ask the RDFI to return an entry for any reason (and indemnifies it); the RDFI may agree but does not have to, and since April 1, 2025 must tell the ODFI its decision or the request’s status within 10 banking days of receiving it.

What the Originator can do next

  • The ODFI indemnifies the RDFI for an R06 return; the RDFI may refuse the request.
  • Since April 1, 2025 the RDFI must tell the ODFI what it decided, or where the request stands, within 10 banking days of receiving it.
  • Match the return to the request that caused it before reconciling.

How R06 appears in a NACHA file

A return is the original entry detail record (type 6) sent back with a return transaction code — 21 or 26 for a checking account, 31 or 36 for savings (21 and 31 return a credit, 26 and 36 a debit) — the original amount, and an addenda record of type 99 that carries the reason. The batch keeps the original entry’s SEC code.

Return addenda record (type 99) with R06
PositionsFieldIn an R06 return
1Record Type Code7 (addenda)
2–3Addenda Type Code99 (return)
4–6Return Reason CodeR06
7–21Original Entry Trace NumberTrace number of the entry being returned
22–27Date of DeathYYMMDD for R14 and R15; blank otherwise
28–35Original Receiving DFI IdentificationFirst 8 digits of the original entry’s RDFI routing number
36–79Addenda InformationFree text from the RDFI
80–94Trace NumberThe return entry’s own trace number

To read a return file record by record, open the file in NACHA Navigator, a free sister site that parses NACHA files in your browser without uploading them.

Look up R06 from code or an AI agent

The code table on this page is the one behind the REST API and the MCP server, so a script or an AI agent gets the same answer as JSON. No key and no account.

REST · GET · no key
curl -s 'https://payopskit.com/api/v1/codes/R06?set=ach-return'
MCP · tools/call · lookup_payment_code
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "lookup_payment_code",
    "arguments": {
      "code": "R06",
      "set": "ach-return"
    }
  }
}
Response (JSON)
{
  "code": "R06",
  "set": "ach-return",
  "found": true,
  "matches": [
    {
      "set": "ach-return",
      "code": "R06",
      "name": "Returned per ODFI's Request",
      "description": "The ODFI asked the RDFI to return the entry (it may ask for any reason: an erroneous or a fraudulent entry, for example) and the RDFI agreed.",
      "details": {
        "category": "return",
        "timeframe": "No fixed timeframe: the ODFI may ask the RDFI to return an entry for any reason (and indemnifies it); the RDFI may agree but does not have to, and since April 1, 2025 must tell the ODFI its decision or the request’s status within 10 banking days of receiving it",
        "timeframeKind": "agreement",
        "timeframeDays": null,
        "timeframeFrom": null,
        "account": "any",
        "accountNote": null,
        "writtenStatement": false,
        "initiatedBy": "RDFI",
        "note": null,
        "effectiveFrom": null,
        "upcomingChange": null,
        "caveat": null
      }
    }
  ]
}

The MCP server is at /mcp (Streamable HTTP, no key); the API and MCP docs show how to connect Claude, Cursor or VS Code.

The deadline for a settlement date: GET /api/v1/ach/return-deadline?settlement_date=2026-11-25&code=R06 or the MCP tool ach_return_deadline.

Source: Nacha Operating Rules, Appendix Four (Return Entries). The code’s title is the Rules’ own; the rest is this site’s plain-language summary. It is informational and not a substitute for the Rules, your ACH Operator’s schedule or your ODFI agreement.