ValidateFin

ACH — entry hash mismatch (truncated or tampered file)

A PPD credit file whose entry hash is wrong. The entry hash is the sum of the 8-digit routing numbers of every entry, truncated to its last ten digits — a checksum whose only job is to catch a file that lost, gained or had an entry altered in transit. Here the batch control and the file control both declare 28905251 while the four entries add up to 27905251. The amounts still balance, which is the point: the hash is the control that fires when nothing else does.

Nacha 94-character — Invalid

A PPD credit file whose entry hash is wrong. The entry hash is the sum of the 8-digit routing numbers of every entry, truncated to its last ten digits — a checksum whose only job is to catch a file that lost, gained or had an entry altered in transit. Here the batch control and the file control both declare 28905251 while the four entries add up to 27905251. The amounts still balance, which is the point: the hash is the control that fires when nothing else does.

ACH / NACHA file (US) Nacha 94-character ACH / NACHAExpected result: Invalid — 2 errors

What this file shows

A PPD credit file whose entry hash is wrong. The entry hash is the sum of the 8-digit routing numbers of every entry, truncated to its last ten digits — a checksum whose only job is to catch a file that lost, gained or had an entry altered in transit. Here the batch control and the file control both declare 28905251 while the four entries add up to 27905251. The amounts still balance, which is the point: the hash is the control that fires when nothing else does.

Transactions4
Total$10,403.25
Date in the file2026-07-12

The defects it carries

  • EntryHashBatch 0000001 : Entry Hash déclaré (28905251) ≠ somme calculée des routing numbers (27905251).
  • EntryHashFile Control : Entry Hash déclaré (28905251) ≠ somme calculée (27905251).

Quoted verbatim from the validator, not paraphrased.

Last verified: License: CC-BY-4.0

Every party, IBAN and amount below is fictitious. The IBANs are structurally valid — they pass the mod-97 check — but they belong to no real account.

File content

101 091000019 0910000192607121200A094101RECEIVING BANK         ORIGIN BANK                    
5220ACME MFG INC                        1234567890PPDPAYROLL         260712   1091000010000001
6220210000214512338901       0000285000EMP-00114      SARAH T MILLER          0091000010000001
6221210428827788990011       0000312450EMP-00115      DAVID R OKONKWO         0091000010000002
6320260095939900112233       0000198075EMP-00116      LIN CHEN                0091000010000003
6221110000253344556677       0000244800EMP-00117      MARCO ROSSI             0091000010000004
822000000400289052510000000000000000010403251234567890                         091000010000001
9000001000001000000040028905251000000000000000001040325                                       
9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999
9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999

How we know these results hold

Every file in this library is run through the site's own validator on each build. The expected result stated above is asserted by an automated test — if a file stopped matching what this page claims, the build would fail. Two inherited fixtures were repaired this way before publication: three IBANs failed the mod-97 check and several names used characters outside the basic SEPA character set.

ACH / NACHA file (US)