CPA-005 — transit 099999999 passes: there is no check digit in Canada
A customer-to-bank payroll file that a US-trained validator would wrongly reject twice over. Its first credit routes to transit 099999999, which carries no arithmetic check digit — the Canadian DPRN has none at all: Standard 005 validates it by lookup against the Financial Institutions File, and Standard 006 defines no checksum. Transposing the US ABA 3-7-1 rule here rejects perfectly valid files. Its item trace numbers are also left at zero, which is normal on a file a customer sends its bank (the Direct Clearer assigns them) — hence two warnings and zero errors.
CPA Standard 005 — Valid
A customer-to-bank payroll file that a US-trained validator would wrongly reject twice over. Its first credit routes to transit 099999999, which carries no arithmetic check digit — the Canadian DPRN has none at all: Standard 005 validates it by lookup against the Financial Institutions File, and Standard 006 defines no checksum. Transposing the US ABA 3-7-1 rule here rejects perfectly valid files. Its item trace numbers are also left at zero, which is normal on a file a customer sends its bank (the Direct Clearer assigns them) — hence two warnings and zero errors.
What this file shows
A customer-to-bank payroll file that a US-trained validator would wrongly reject twice over. Its first credit routes to transit 099999999, which carries no arithmetic check digit — the Canadian DPRN has none at all: Standard 005 validates it by lookup against the Financial Institutions File, and Standard 006 defines no checksum. Transposing the US ABA 3-7-1 rule here rejects perfectly valid files. Its item trace numbers are also left at zero, which is normal on a file a customer sends its bank (the Direct Clearer assigns them) — hence two warnings and zero errors.
| Transactions | 2 |
|---|---|
| Total | CA$2,230.75 |
| Date in the file | 2026-07-12 |
The defects it carries
- CPA-TRACE-1Record 2 (type C), segment 1: the item trace number is empty. It is mandatory in inter-member exchange, but financial institutions commonly assign it themselves on files they receive from their customers.
- CPA-TRACE-2Record 2 (type C), segment 2: the item trace number is empty. It is mandatory in inter-member exchange, but financial institutions commonly assign it themselves on files they receive from their customers.
Quoted verbatim from the validator, not paraphrased.
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
A0000000010000012345000102619300300 CAD
C0000000020000012345000120000001250000261930999999991234567 0000000000000000000000000ACME PAYROLL CHLOE GAGNON ACME MANUFACTURING INC XREF-C-0001 0004100109876543 PAYROLL 0000000000000000000000000000000000020000000980750261930000100237654321 0000000000000000000000000ACME PAYROLL SAMUEL COTE ACME MANUFACTURING INC XREF-C-0002 0004100109876543 PAYROLL 00000000000000000000000000000000000
Z000000003000001234500010000000000000000000000000000002230750000000200000000000000000000000000000000000000000000
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.
CPA-005 / AFT payment file (Canada)
- CPA-005 — payroll direct deposit (two credits in one record)
- CPA-005 — a pre-authorised debit and its NSF return (code 901)
- CPA-005 — the error correction folded into the debit total
- CPA-005 — credits (C) and debits (D) in one file, four pairs of totals balanced
- CPA-005 — Notice of Change file (U / S / V records, 208 characters)