Complete, generated specifications for every ISO 20022 payment-initiation message Pain001 supports — element paths, cardinality, data types, constraints and code lists.
Everything here is generated from the official ISO XSDs, the same files the validator enforces. Nothing is hand-transcribed, so the reference cannot drift from what the software actually does, and every value can be checked against ISO's publication.
Versions#
| Version | Elements | Required | Types | Code lists | Schema generated | ISO source | Reference |
|---|---|---|---|---|---|---|---|
pain.001.001.03 |
529 | 113 | 66 | 17 | 2009 Jan 08 | ISO 20022 archive | Element reference |
pain.001.001.04 |
535 | 114 | 72 | 16 | 2012 Jun 07 | ISO 20022 archive | Element reference |
pain.001.001.05 |
538 | 115 | 72 | 16 | 2013 Mar 05 | ISO 20022 archive | Element reference |
pain.001.001.06 |
539 | 114 | 77 | 16 | 2015 Feb 24 | ISO 20022 archive | Element reference |
pain.001.001.07 |
539 | 114 | 82 | 16 | 2016 Feb 12 | ISO 20022 archive | Element reference |
pain.001.001.08 |
541 | 116 | 83 | 16 | 2017 Jan 27 | ISO 20022 archive | Element reference |
pain.001.001.09 |
703 | 139 | 88 | 17 | 2019 Feb 14 | ISO 20022 archive | Element reference |
pain.001.001.10 |
735 | 149 | 99 | 19 | 2020 Mar 05 | ISO 20022 archive | Element reference |
pain.001.001.11 |
735 | 141 | 99 | 19 | 2021 Feb 16 | ISO 20022 archive | Element reference |
pain.001.001.12 |
770 | 141 | 97 | 17 | 2024 Feb 29 | ISO 20022 archive | Element reference |
pain.001.001.13 |
771 | 142 | 100 | 17 | 2026 Mar 02 | ISO 20022 catalogue | Element reference |
pain.008.001.02 |
488 | 90 | 63 | 15 | 2009 Jan 08 | ISO 20022 catalogue | Element reference |
On the dates. Schema generated is the timestamp inside the shipped XSD, written by ISO's Standards Editor when the schema was produced. It is not the same as ISO's publication date and should not be read as one — pain.001.001.13 was generated on 2 March 2026 and published later that month. Four of the files shipped with Pain001 carry no header at all; those rows say so rather than showing a date that cannot be evidenced. Every row links to ISO's own page so the version can be checked at source.
Also here#
- Code lists — every closed value set, with the versions each appears in.
- What changed between versions — element-level diffs, which the ISO catalogue does not publish.
How to read the tables#
| Column | Meaning |
|---|---|
| Element | The XML tag, indented by its depth in the message |
| Path | The full path from the message root, for XPath and mapping work |
| Card. | Cardinality as ISO writes it — 0..1 optional, 1..1 required, 0..* repeating. Required is shown in bold |
| Type | The ISO data type; simple types carry the constraints |
| Constraints | Length, pattern, decimal places and code-list size |
Scope and honesty#
- These pages describe the base ISO standard. A document that conforms here can still be rejected by a scheme rulebook, by your bank's own profile, or by the channel you submit it through — see the four-layer model.
- The reference is English only. It is generated data that grows with every ISO release, and the site's translated pages are parity-checked in CI; localising a growing generated surface into 34 languages is not a commitment that could be kept honestly.
- Regenerate with
python3 scripts/extract_message_specs.py && python3 scripts/generate_message_specs.pyafter a schema update.