Pain001 Pain001

ACH PPD payroll run, two employees.

A payment initiation file for United States on the ach-credit rail, shipped in pain.001.001.03, pain.001.001.09, generated and checked by pain001 0.0.70. It is a synthetic example built from the public scheme rulebooks: no real party, account or bank guideline behind it.

Files#

The twin is the same payment in the ISO 20022 Registration Authority's JSON convention, lossless in both directions; its JSON Schema (2020-12) is published per edition: pain.001.001.03, pain.001.001.09. An agent can produce a twin that validates against the schema and hand it to the library to render the XML.

Run it in your browser#

Open this scenario in the demo: the pain001 library loads in a Python runtime in your browser, rebuilds the file from the 2 record(s) below, checks it against the us-ach rulebook and the official XSD, and shows the JSON twin. Nothing leaves your machine.

The flat records the library rebuilds it from (the CSV pipeline's own column names):

id,date,nb_of_txs,ctrl_sum,initiator_name,payment_information_id,payment_method,batch_booking,service_level_code,requested_execution_date,debtor_name,debtor_agent_BIC,charge_bearer,payment_id,payment_amount,currency,creditor_agent_BIC,creditor_name,remittance_information,local_instrument_code,category_purpose_code,initiator_postal_code,initiator_town_name,initiator_country_subdivision,initiator_country_code,initiator_address_line,initiator_id,debtor_postal_code,debtor_town_name,debtor_country_subdivision,debtor_country_code,debtor_address_line,debtor_id,debtor_account_number,debtor_account_scheme,debtor_agent_clearing_system,debtor_agent_member_id,creditor_postal_code,creditor_town_name,creditor_country_subdivision,creditor_country_code,creditor_account_number,creditor_account_scheme,creditor_agent_clearing_system,creditor_agent_member_id,purpose_code,initiator_id_scheme_proprietary,debtor_id_scheme_proprietary,debtor_agent_town_name,debtor_agent_country_code,creditor_agent_town_name,creditor_agent_country_code,payment_currency
CMI-PAY-20260925,2026-09-23T17:00:00,2,5995.65,Cascade Millwork Inc,PAY-20260925-01,TRF,true,NURG,2026-09-25,Cascade Millwork Inc,RSEDUS60,SLEV,PAY-2026-09-0001,3120.55,USD,HQSGUS70,Jordan Lee,Payroll Sep 2026,PPD,SALA,97204,Portland,OR,US,1200 Pine Street,1234567890,97204,Portland,OR,US,1200 Pine Street,1234567890,4412345678,BBAN,USABA,021000021,97209,Portland,OR,US,7712345678,BBAN,USABA,121000248,SALA,COMPANY-ID,COMPANY-ID,New York,US,San Francisco,US,USD
CMI-PAY-20260925,2026-09-23T17:00:00,2,5995.65,Cascade Millwork Inc,PAY-20260925-01,TRF,true,NURG,2026-09-25,Cascade Millwork Inc,RSEDUS60,SLEV,PAY-2026-09-0002,2875.10,USD,QMOLUSD0,Sam Rivera,Payroll Sep 2026,PPD,SALA,97204,Portland,OR,US,1200 Pine Street,1234567890,97204,Portland,OR,US,1200 Pine Street,1234567890,4412345678,BBAN,USABA,021000021,97214,Portland,OR,US,7798765432,BBAN,USABA,026009593,SALA,COMPANY-ID,COMPANY-ID,New York,US,New York,US,USD

How the library checked it#

  • Official XSD: passed.
  • ISO message definition rules: passed.
  • Rail profile us-ach: passed.
  • Rail profile anti-duplicate: passed.

Confidence derived: built from the public rulebook or implementation guide; no published sample was available to compare.

Where the content comes from#

  • Nacha Operating Rules and Guidelines, PPD entries (read 2026-09-10)
  • Bank of America pain.001.001.09 formatting guide (read 2026-09-10)

SHA-256 of each file is in its provenance record. Your bank's own usage guideline is not represented here: apply it privately with the library's overlay tooling.

Back to the example corpus · All payment files by country