Skip to content

ACH return reason code

R29 return code: Corporate Customer Advises Not Authorized

A business (non-consumer) Receiver says the debit is not authorized.

What R29 means

R29 is the return reason code Corporate Customer Advises Not Authorized. A business (non-consumer) Receiver says the debit is not authorized.

Non-consumer (corporate) accounts; unauthorized consumer debits use R05, R07, R10 or R11 instead.

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

Typical causes

  • The business never authorized this Originator to debit the account, or disputes the debit.
  • An ACH debit block or filter on the account rejected an Originator (Company Identification) the business hadn’t approved.
  • Fraud: the account details were used without permission.

Return timeframe

Available to the ODFI by opening of business on the 2nd banking day after the settlement date of the original entry.

Banking days are the Federal Reserve’s business days: weekends and Fed holidays don’t count, so a holiday in the window pushes the deadline out by a day.

Worked example

For an entry that settled on Wednesday, November 25, 2026, the day before Thanksgiving: must be available to the ODFI by opening of business on Monday, November 30, 2026.

Try your own settlement date in the ACH date calculator

What the Originator can do next

  • Contact the business before sending again; don’t reinitiate until it confirms the authorization.
  • If a debit block caused it, ask the business to give its bank your Company Identification (and any amount limit) so your debits are allowed.
  • Past the 2-banking-day deadline, the RDFI can return a CCD or CTX debit only with the ODFI’s agreement (R31).
  • It counts toward the Originator’s unauthorized return rate, which Nacha reviews above 0.5% of debits.

How R29 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 R29
PositionsFieldIn an R29 return
1Record Type Code7 (addenda)
2–3Addenda Type Code99 (return)
4–6Return Reason CodeR29
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 R29 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/R29?set=ach-return'
MCP · tools/call · lookup_payment_code
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "lookup_payment_code",
    "arguments": {
      "code": "R29",
      "set": "ach-return"
    }
  }
}
Response (JSON)
{
  "code": "R29",
  "set": "ach-return",
  "found": true,
  "matches": [
    {
      "set": "ach-return",
      "code": "R29",
      "name": "Corporate Customer Advises Not Authorized",
      "description": "A business (non-consumer) Receiver says the debit is not authorized.",
      "details": {
        "category": "return",
        "timeframe": "Available to the ODFI by opening of business on the 2nd banking day after the settlement date of the original entry",
        "timeframeKind": "banking-days",
        "timeframeDays": 2,
        "timeframeFrom": "original-settlement",
        "account": "corporate",
        "accountNote": "Non-consumer (corporate) accounts; unauthorized consumer debits use R05, R07, R10 or R11 instead.",
        "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=R29 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.