Pain001

This is the complete element reference for pain.001.001.09, generated directly from the official ISO 20022 XSD that Pain001 validates against — not transcribed by hand. Every cardinality, type and code value below can be checked against ISO's own publication.

703 elements · 139 required · 88 types · 17 code lists

Cardinality is shown as ISO writes it: 0..1 optional, 1..1 required, 0..* repeating. Required elements are bold — those are the ones whose absence makes the document invalid before any bank sees it.

Schema provenance. The shipped file carries the header “Generated by Standards Editor on 2019 Feb 14” — that is the schema generation timestamp, not necessarily ISO's publication date. Verify against the ISO 20022 archive.

CstmrCdtTrfInitn#

Element Path Card. Type Constraints
CstmrCdtTrfInitn CstmrCdtTrfInitn 1..1 CustomerCreditTransferInitiationV09

GrpHdr#

Group Header — one per message

Element Path Card. Type Constraints
  GrpHdr CstmrCdtTrfInitn/GrpHdr 1..1 GroupHeader85
    MsgId CstmrCdtTrfInitn/GrpHdr/MsgId 1..1 Max35Text length 1–35
    CreDtTm CstmrCdtTrfInitn/GrpHdr/CreDtTm 1..1 ISODateTime
    Authstn CstmrCdtTrfInitn/GrpHdr/Authstn 0..2 Authorisation1Choice
      Cd CstmrCdtTrfInitn/GrpHdr/Authstn/Cd 1..1 Authorisation1Code 4 codes
      Prtry CstmrCdtTrfInitn/GrpHdr/Authstn/Prtry 1..1 Max128Text length 1–128
    NbOfTxs CstmrCdtTrfInitn/GrpHdr/NbOfTxs 1..1 Max15NumericText pattern [0-9]{1,15}
    CtrlSum CstmrCdtTrfInitn/GrpHdr/CtrlSum 0..1 DecimalNumber 17 decimals max
    InitgPty CstmrCdtTrfInitn/GrpHdr/InitgPty 1..1 PartyIdentification135
      Nm CstmrCdtTrfInitn/GrpHdr/InitgPty/Nm 0..1 Max140Text length 1–140
      PstlAdr CstmrCdtTrfInitn/GrpHdr/InitgPty/PstlAdr 0..1 PostalAddress24
      Id CstmrCdtTrfInitn/GrpHdr/InitgPty/Id 0..1 Party38Choice
      CtryOfRes CstmrCdtTrfInitn/GrpHdr/InitgPty/CtryOfRes 0..1 CountryCode pattern [A-Z]{2,2}
      CtctDtls CstmrCdtTrfInitn/GrpHdr/InitgPty/CtctDtls 0..1 Contact4
    FwdgAgt CstmrCdtTrfInitn/GrpHdr/FwdgAgt 0..1 BranchAndFinancialInstitutionIdentification6
      FinInstnId CstmrCdtTrfInitn/GrpHdr/FwdgAgt/FinInstnId 1..1 FinancialInstitutionIdentification18
      BrnchId CstmrCdtTrfInitn/GrpHdr/FwdgAgt/BrnchId 0..1 BranchData3

86 further nested elements sit below this depth — every one of them is defined in the type reference below, which lists each type once instead of repeating it under every party.

PmtInf#

Payment Information — one per debtor account and execution date

Element Path Card. Type Constraints
  PmtInf CstmrCdtTrfInitn/PmtInf 1..* PaymentInstruction30
    PmtInfId CstmrCdtTrfInitn/PmtInf/PmtInfId 1..1 Max35Text length 1–35
    PmtMtd CstmrCdtTrfInitn/PmtInf/PmtMtd 1..1 PaymentMethod3Code 3 codes
    BtchBookg CstmrCdtTrfInitn/PmtInf/BtchBookg 0..1 BatchBookingIndicator
    NbOfTxs CstmrCdtTrfInitn/PmtInf/NbOfTxs 0..1 Max15NumericText pattern [0-9]{1,15}
    CtrlSum CstmrCdtTrfInitn/PmtInf/CtrlSum 0..1 DecimalNumber 17 decimals max
    PmtTpInf CstmrCdtTrfInitn/PmtInf/PmtTpInf 0..1 PaymentTypeInformation26
      InstrPrty CstmrCdtTrfInitn/PmtInf/PmtTpInf/InstrPrty 0..1 Priority2Code 2 codes
      SvcLvl CstmrCdtTrfInitn/PmtInf/PmtTpInf/SvcLvl 0..* ServiceLevel8Choice
      LclInstrm CstmrCdtTrfInitn/PmtInf/PmtTpInf/LclInstrm 0..1 LocalInstrument2Choice
      CtgyPurp CstmrCdtTrfInitn/PmtInf/PmtTpInf/CtgyPurp 0..1 CategoryPurpose1Choice
    ReqdExctnDt CstmrCdtTrfInitn/PmtInf/ReqdExctnDt 1..1 DateAndDateTime2Choice
      Dt CstmrCdtTrfInitn/PmtInf/ReqdExctnDt/Dt 1..1 ISODate
      DtTm CstmrCdtTrfInitn/PmtInf/ReqdExctnDt/DtTm 1..1 ISODateTime
    PoolgAdjstmntDt CstmrCdtTrfInitn/PmtInf/PoolgAdjstmntDt 0..1 ISODate
    Dbtr CstmrCdtTrfInitn/PmtInf/Dbtr 1..1 PartyIdentification135
      Nm CstmrCdtTrfInitn/PmtInf/Dbtr/Nm 0..1 Max140Text length 1–140
      PstlAdr CstmrCdtTrfInitn/PmtInf/Dbtr/PstlAdr 0..1 PostalAddress24
      Id CstmrCdtTrfInitn/PmtInf/Dbtr/Id 0..1 Party38Choice
      CtryOfRes CstmrCdtTrfInitn/PmtInf/Dbtr/CtryOfRes 0..1 CountryCode pattern [A-Z]{2,2}
      CtctDtls CstmrCdtTrfInitn/PmtInf/Dbtr/CtctDtls 0..1 Contact4
    DbtrAcct CstmrCdtTrfInitn/PmtInf/DbtrAcct 1..1 CashAccount38
      Id CstmrCdtTrfInitn/PmtInf/DbtrAcct/Id 1..1 AccountIdentification4Choice
      Tp CstmrCdtTrfInitn/PmtInf/DbtrAcct/Tp 0..1 CashAccountType2Choice
      Ccy CstmrCdtTrfInitn/PmtInf/DbtrAcct/Ccy 0..1 ActiveOrHistoricCurrencyCode pattern [A-Z]{3,3}
      Nm CstmrCdtTrfInitn/PmtInf/DbtrAcct/Nm 0..1 Max70Text length 1–70
      Prxy CstmrCdtTrfInitn/PmtInf/DbtrAcct/Prxy 0..1 ProxyAccountIdentification1
    DbtrAgt CstmrCdtTrfInitn/PmtInf/DbtrAgt 1..1 BranchAndFinancialInstitutionIdentification6
      FinInstnId CstmrCdtTrfInitn/PmtInf/DbtrAgt/FinInstnId 1..1 FinancialInstitutionIdentification18
      BrnchId CstmrCdtTrfInitn/PmtInf/DbtrAgt/BrnchId 0..1 BranchData3
    DbtrAgtAcct CstmrCdtTrfInitn/PmtInf/DbtrAgtAcct 0..1 CashAccount38
      Id CstmrCdtTrfInitn/PmtInf/DbtrAgtAcct/Id 1..1 AccountIdentification4Choice
      Tp CstmrCdtTrfInitn/PmtInf/DbtrAgtAcct/Tp 0..1 CashAccountType2Choice
      Ccy CstmrCdtTrfInitn/PmtInf/DbtrAgtAcct/Ccy 0..1 ActiveOrHistoricCurrencyCode pattern [A-Z]{3,3}
      Nm CstmrCdtTrfInitn/PmtInf/DbtrAgtAcct/Nm 0..1 Max70Text length 1–70
      Prxy CstmrCdtTrfInitn/PmtInf/DbtrAgtAcct/Prxy 0..1 ProxyAccountIdentification1
    InstrForDbtrAgt CstmrCdtTrfInitn/PmtInf/InstrForDbtrAgt 0..1 Max140Text length 1–140
    UltmtDbtr CstmrCdtTrfInitn/PmtInf/UltmtDbtr 0..1 PartyIdentification135
      Nm CstmrCdtTrfInitn/PmtInf/UltmtDbtr/Nm 0..1 Max140Text length 1–140
      PstlAdr CstmrCdtTrfInitn/PmtInf/UltmtDbtr/PstlAdr 0..1 PostalAddress24
      Id CstmrCdtTrfInitn/PmtInf/UltmtDbtr/Id 0..1 Party38Choice
      CtryOfRes CstmrCdtTrfInitn/PmtInf/UltmtDbtr/CtryOfRes 0..1 CountryCode pattern [A-Z]{2,2}
      CtctDtls CstmrCdtTrfInitn/PmtInf/UltmtDbtr/CtctDtls 0..1 Contact4
    ChrgBr CstmrCdtTrfInitn/PmtInf/ChrgBr 0..1 ChargeBearerType1Code 4 codes
    ChrgsAcct CstmrCdtTrfInitn/PmtInf/ChrgsAcct 0..1 CashAccount38
      Id CstmrCdtTrfInitn/PmtInf/ChrgsAcct/Id 1..1 AccountIdentification4Choice
      Tp CstmrCdtTrfInitn/PmtInf/ChrgsAcct/Tp 0..1 CashAccountType2Choice
      Ccy CstmrCdtTrfInitn/PmtInf/ChrgsAcct/Ccy 0..1 ActiveOrHistoricCurrencyCode pattern [A-Z]{3,3}
      Nm CstmrCdtTrfInitn/PmtInf/ChrgsAcct/Nm 0..1 Max70Text length 1–70
      Prxy CstmrCdtTrfInitn/PmtInf/ChrgsAcct/Prxy 0..1 ProxyAccountIdentification1
    ChrgsAcctAgt CstmrCdtTrfInitn/PmtInf/ChrgsAcctAgt 0..1 BranchAndFinancialInstitutionIdentification6
      FinInstnId CstmrCdtTrfInitn/PmtInf/ChrgsAcctAgt/FinInstnId 1..1 FinancialInstitutionIdentification18
      BrnchId CstmrCdtTrfInitn/PmtInf/ChrgsAcctAgt/BrnchId 0..1 BranchData3
    CdtTrfTxInf CstmrCdtTrfInitn/PmtInf/CdtTrfTxInf 1..* CreditTransferTransaction34
      PmtId CstmrCdtTrfInitn/PmtInf/CdtTrfTxInf/PmtId 1..1 PaymentIdentification6
      PmtTpInf CstmrCdtTrfInitn/PmtInf/CdtTrfTxInf/PmtTpInf 0..1 PaymentTypeInformation26
      Amt CstmrCdtTrfInitn/PmtInf/CdtTrfTxInf/Amt 1..1 AmountType4Choice
      XchgRateInf CstmrCdtTrfInitn/PmtInf/CdtTrfTxInf/XchgRateInf 0..1 ExchangeRate1
      ChrgBr CstmrCdtTrfInitn/PmtInf/CdtTrfTxInf/ChrgBr 0..1 ChargeBearerType1Code 4 codes
      ChqInstr CstmrCdtTrfInitn/PmtInf/CdtTrfTxInf/ChqInstr 0..1 Cheque11
      UltmtDbtr CstmrCdtTrfInitn/PmtInf/CdtTrfTxInf/UltmtDbtr 0..1 PartyIdentification135
      IntrmyAgt1 CstmrCdtTrfInitn/PmtInf/CdtTrfTxInf/IntrmyAgt1 0..1 BranchAndFinancialInstitutionIdentification6
      IntrmyAgt1Acct CstmrCdtTrfInitn/PmtInf/CdtTrfTxInf/IntrmyAgt1Acct 0..1 CashAccount38
      IntrmyAgt2 CstmrCdtTrfInitn/PmtInf/CdtTrfTxInf/IntrmyAgt2 0..1 BranchAndFinancialInstitutionIdentification6
      IntrmyAgt2Acct CstmrCdtTrfInitn/PmtInf/CdtTrfTxInf/IntrmyAgt2Acct 0..1 CashAccount38
      IntrmyAgt3 CstmrCdtTrfInitn/PmtInf/CdtTrfTxInf/IntrmyAgt3 0..1 BranchAndFinancialInstitutionIdentification6
      IntrmyAgt3Acct CstmrCdtTrfInitn/PmtInf/CdtTrfTxInf/IntrmyAgt3Acct 0..1 CashAccount38
      CdtrAgt CstmrCdtTrfInitn/PmtInf/CdtTrfTxInf/CdtrAgt 0..1 BranchAndFinancialInstitutionIdentification6
      CdtrAgtAcct CstmrCdtTrfInitn/PmtInf/CdtTrfTxInf/CdtrAgtAcct 0..1 CashAccount38
      Cdtr CstmrCdtTrfInitn/PmtInf/CdtTrfTxInf/Cdtr 0..1 PartyIdentification135
      CdtrAcct CstmrCdtTrfInitn/PmtInf/CdtTrfTxInf/CdtrAcct 0..1 CashAccount38
      UltmtCdtr CstmrCdtTrfInitn/PmtInf/CdtTrfTxInf/UltmtCdtr 0..1 PartyIdentification135
      InstrForCdtrAgt CstmrCdtTrfInitn/PmtInf/CdtTrfTxInf/InstrForCdtrAgt 0..* InstructionForCreditorAgent1
      InstrForDbtrAgt CstmrCdtTrfInitn/PmtInf/CdtTrfTxInf/InstrForDbtrAgt 0..1 Max140Text length 1–140
      Purp CstmrCdtTrfInitn/PmtInf/CdtTrfTxInf/Purp 0..1 Purpose2Choice
      RgltryRptg CstmrCdtTrfInitn/PmtInf/CdtTrfTxInf/RgltryRptg 0..10 RegulatoryReporting3
      Tax CstmrCdtTrfInitn/PmtInf/CdtTrfTxInf/Tax 0..1 TaxInformation8
      RltdRmtInf CstmrCdtTrfInitn/PmtInf/CdtTrfTxInf/RltdRmtInf 0..10 RemittanceLocation7
      RmtInf CstmrCdtTrfInitn/PmtInf/CdtTrfTxInf/RmtInf 0..1 RemittanceInformation16
      SplmtryData CstmrCdtTrfInitn/PmtInf/CdtTrfTxInf/SplmtryData 0..* SupplementaryData1

516 further nested elements sit below this depth — every one of them is defined in the type reference below, which lists each type once instead of repeating it under every party.

SplmtryData#

Supplementary Data — scheme-specific extensions

Element Path Card. Type Constraints
  SplmtryData CstmrCdtTrfInitn/SplmtryData 0..* SupplementaryData1
    PlcAndNm CstmrCdtTrfInitn/SplmtryData/PlcAndNm 0..1 Max350Text length 1–350
    Envlp CstmrCdtTrfInitn/SplmtryData/Envlp 1..1 SupplementaryDataEnvelope1

Type reference#

Every complex type in this version is defined once on the pain.001.001.09 type reference — 86 types. The tree above repeats a party or address structure under each party; the type reference does not, which makes it the better page for mapping work.

Code lists used by this version#

Code list Values
AddressType2Code ADDR, PBOX, HOME, BIZZ, MLTO, DLVY
Authorisation1Code AUTH, FDET, FSUM, ILEV
ChargeBearerType1Code DEBT, CRED, SHAR, SLEV
ChequeDelivery1Code MLDB, MLCD, MLFA, CRDB, CRCD, CRFA, PUDB, PUCD, PUFA, RGDB, RGCD, RGFA
ChequeType2Code CCHQ, CCCH, BCHQ, DRFT, ELDR
CreditDebitCode CRDT, DBIT
DocumentType3Code RADM, RPIN, FXDR, DISP, PUOR, SCOR
DocumentType6Code MSIN, CNFA, DNFA, CINV, CREN, DEBN, HIRI, SBIN, CMCN, SOAC, DISP, BOLD, VCHR, AROI (+2 more)
ExchangeRateType1Code SPOT, SALE, AGRD
Instruction3Code CHQB, HOLD, PHOB, TELB
NamePrefix2Code DOCT, MADM, MISS, MIST, MIKS
PaymentMethod3Code CHK, TRF, TRA
PreferredContactMethod1Code LETT, MAIL, PHON, FAXX, CELL
Priority2Code HIGH, NORM
RegulatoryReportingType1Code CRED, DEBT, BOTH
RemittanceLocationMethod2Code FAXI, EDIC, URID, EMAL, POST, SMSM
TaxRecordPeriod1Code MM01, MM02, MM03, MM04, MM05, MM06, MM07, MM08, MM09, MM10, MM11, MM12, QTR1, QTR2 (+4 more)

The full value set for every list is on the code lists page.

Generate and validate this version#

pain001 -t pain.001.001.09 -d payments.csv -o out/ --dry-run

See the narrative page for pain.001.001.09 for what distinguishes this version and when to choose it, the full compatibility matrix, or what changed between versions.