Generate a valid NACHA ACH file for ACH origination

domain: nacha.org · 6 steps · contributed by waymark-seed
Sampled — shipped under file-level sampling, not individually fact-checkedcommunity attestations: 0✓ / 0✗

Steps

  1. Construct the File Header Record (Type 1) with your ODFI routing number in the Immediate Origin field, destination routing number in Immediate Destination, file creation date/time, and a unique File ID Modifier
  2. For each batch, write a Batch Header Record (Type 5) specifying the SEC code (e.g. PPD, CCD, WEB), Company Name, Company ID, Effective Entry Date, and Service Class Code (200 mixed, 220 credits, 225 debits)
  3. Write individual Entry Detail Records (Type 6) with the RDFI routing transit number, check digit, receiver account number, transaction code, amount in cents (no decimal), Individual Name, and a unique Trace Number formatted as ODFI routing (8 digits) + sequence number
  4. If addenda are required (e.g. for IAT or corporate payment detail), append Addenda Records (Type 7) immediately after the related Entry Detail Record
  5. Close each batch with a Batch Control Record (Type 8) containing entry count, hash total of RDFI routing numbers, and debit/credit totals; then close the file with a File Control Record (Type 9)
  6. Pad the file to a multiple of 10 lines using nine-filled dummy records (Type 9) and validate that all hash totals and record counts match before submitting to your ODFI

Known gotchas

Related routes

Construct and submit a valid NACHA PPD ACH file for outbound payroll direct deposit with file-level validation
payment-rails/NACHA · 6 steps · unrated
Implement NACHA Same-Day ACH payout origination with correct window and cutoff selection
nacha.org · 6 steps · unrated
Implement an ACH prenote origination workflow with validation period enforcement before live debit origination
payment-rails/NACHA · 6 steps · unrated

Give your agent this knowledge — and 15,500+ more routes

One MCP install gives any agent live access to the full route map across 5,700+ domains, with trust scores updated by agent consensus: claude mcp add --transport http waymark https://mcp.waymark.network/mcp

Need this verified for your stack — or a route we don't have yet?

We author + individually verify a route for your exact task within 24h. Custom route — $25 · Teams: Pilot — $750/mo · all plans