Introduction — Understanding the PAIN.001 Message Fields
Imagine you are a corporate treasurer sitting in Frankfurt. You need to pay a supplier in Singapore, settle an invoice with a vendor in New York, and transfer funds to a subsidiary in Dubai — all before end of business today. You log into your ERP system, create a single payment file, and send it to your bank. That file is a PAIN.001 — Customer Credit Transfer Initiation message. And every payment instruction inside it is governed by a precise set of fields that tell your bank exactly what to do.
PAIN.001 stands for Payment Initiation 001. It is the ISO 20022 message that a corporate or an initiating party sends to their bank to instruct one or more credit transfers. It is the starting point of the entire payment chain — the message from which everything downstream flows. Get it right, and payments settle seamlessly. Get a field wrong, and the payment stalls, gets rejected, or worse — settles incorrectly.
ISO 20022 is the global standard for financial messaging, developed and maintained by the International Organisation for Standardisation. It replaced older formats like the SWIFT MT101 — a legacy message that carried the same basic instruction but with far less structure, far less data richness, and far less ability to support the automation that modern payment processing demands. Where MT101 relied heavily on free text and rigid field formats, PAIN.001 offers structured, machine-readable, and deeply detailed fields that support straight-through processing end to end.
But understanding PAIN.001 is not just about knowing what the fields are called. It is about understanding why each field exists, what business purpose it serves, how it drives the bank’s processing decisions, and how it maps to the outgoing interbank messages — primarily the PACS.008 (Financial Institution Credit Transfer) — that carry the payment forward through the correspondent banking chain.
This article takes you through the key fields of the PAIN.001 message — field by field, section by section — with practical examples, mapping references to MT101, and explanations of how each field flows into the outgoing PACS.008. Whether you are a payments professional building a corporate-to-bank integration, a tester validating message flows, or an architect designing a payment engine, this guide is built for you.
NOTE: Do check out the Video Series for more clarity.
Fields at a Glance

Field by Field Explanation
| Section | Field Name | XML Tag | Cardinality | Data Type | XML Path | Description | MT101 Equivalent | Outgoing PACS08 Mapping |
|---|---|---|---|---|---|---|---|---|
| CUSTOMER CREDIT TRANSFER INITIATION | Group Header | GrpHdr | [1..1] | Parent | /Document/CstmrCdtTrfInitn/GrpHdr | File-Level Context : Set of characteristics shared by all individual transactions included in the message. | NA | NA |
| Group Header | Message Identification | MsgId | [1..1] | Max35Text | /GrpHdr/MsgId | Point to point reference, as assigned by the initiating party, and sent to the next party in the chain to unambiguously identify the message. | Seq A: Tag 20 | NA |
| Group Header | Creation Date Time | CreDtTm | [1..1] | ISODateTime | /GrpHdr/CreDtTm | Indicates the exact date and time when the payment initiation message was created by the initiating party system. | NA | NA |
| Group Header | Authorisation | Authstn | [0..2] | CODE | /GrpHdr/Authstn | User identification or any user key to be used to check whether the initiating party is allowed to initiate transactions from the account specified in the message. Specifies the authorisation, in a coded form. Codes: FDET, FSUM, ILEV, AUTH | Seq A : Tag 25 | NA |
| Group Header | Number Of Transactions | NbOfTxs | [1..1] | Max15NumericText | /GrpHdr/NbOfTxs | Number of individual transactions contained in the message. | NA | NA |
| Group Header | Control Sum | CtrlSum | [0..1] | DecimalNumber | /GrpHdr/CtrlSum | Total of all individual amounts included in the message, irrespective of currencies. | NA | NA |
| Group Header | Initiating Party | InitgPty | [1..1] | PartyIdentification | /GrpHdr/InitgPty | Party that initiates the payment. | Seq A: Tag 50a (C,L) | /CdtTrfTxInf/InitgPty |
| Group Header | Forwarding Agent | FwdgAgt | [0..1] | AgentIdentification | /GrpHdr/FwdgAgt | Financial institution that receives the instruction from the initiating party and forwards it to the next agent in the payment chain for execution. | Message Sender in Block 1/2 in Relay Scenario or Seq A – Tag 51A | NA |
| Group Header | Initiation Source | InitnSrc | [0..1] | Parent | /GrpHdr/InitnSrc | Source application or software used to initiate the payment | NA | NA |
| CUSTOMER CREDIT TRANSFER INITIATION | Payment Information | PmtInf | [1..*] | Parent | /Document/CstmrCdtTrfInitn/PmtInf | Batch Level Info : Set of characteristics that applies to the debit side of the payment transactions included in the credit transfer initiation. | NA | NA |
| Payment Information | Payment Information Identification | PmtInfId | [1..1] | Max35Text | /PmtInf/PmtInfId | Unique batch identifier as assigned by a sending party, to unambiguously identify the payment information group within the message. | NA | NA |
| Payment Information | Payment Method | PmtMtd | [1..1] | CODE | /PmtInf/PmtMtd | Specifies the means of payment that will be used to move the amount of money. Payment Method in Code Format. ISO Codes: CHK, TRF, TRA | NA | NA |
| Payment Information | Requested Advice Type | ReqdAdvcTp | [0..1] | Parent | /PmtInf/ReqdAdvcTp | Type of advice details requested. | NA | NA |
| Payment Information | Batch Booking | BtchBookg | [0..1] | Boolean | /PmtInf/BtchBookg | Identifies whether a single entry per individual transaction or a batch entry for the sum of the amounts of all transactions within the group of a message is requested. | NA | NA |
| Payment Information | Number Of Transactions | NbOfTxs | [0..1] | Max15NumericText | /PmtInf/NbOfTxs | Number of individual transactions contained in the payment information group. | NA | NA |
| Payment Information | Control Sum | CtrlSum | [0..1] | DecimalNumber | /PmtInf/CtrlSum | Total of all individual amounts included in the group, irrespective of currencies. | NA | NA |
| Payment Information | Payment Type Information | PmtTpInf | [0..1] | Parent | /PmtInf/PmtTpInf | Set of elements used to further specify the type of transaction. | NA | /CdtTrfTxInf/PmtTpInf |
| Payment Information | Instruction Priority | InstrPrty | [0..1] | CODE | /PmtInf/PmtTpInf/InstrPrty | Indicator of the urgency or order of importance that the instructing party would like the instructed party to apply to the processing of the instruction. Codes: HIGH, NORM | Block 2 – Priority | /CdtTrfTxInf/PmtTpInf/InstrPrty |
| Payment Information | Service Level | SvcLvl | [0..*] | CODE | /PmtInf/PmtTpInf/SvcLvl | Agreement under which or rules under which the transaction should be processed. Code: “ExternalServiceLevel1Code” | NA | /CdtTrfTxInf/PmtTpInf/SvcLvl |
| Payment Information | Local Instrument | LclInstrm | [0..1] | CODE | /PmtInf/PmtTpInf/LclInstrm | User community specific instrument. Code: “ExternalLocalInstrument1Code” | NA | /CdtTrfTxInf/PmtTpInf/LclInstrm |
| Payment Information | Category Purpose | CtgyPurp | [0..1] | CODE | /PmtInf/PmtTpInf/CtgyPurp | Specifies the high level purpose of the instruction based on a set of pre-defined categories. Code: “ExternalCategoryPurpose1Code” | NA | /CdtTrfTxInf/PmtTpInf/CtgyPurp |
| Payment Information | Requested Execution Date | ReqdExctnDt | [1..1] | DateAndDateTime | /PmtInf/ReqdExctnDt | Date at which the initiating party requests the clearing agent to process the payment. | Seg A – Tag 30 | /CdtTrfTxInf/IntrBkSttlmDt |
| Payment Information | Pooling Adjustment Date | PoolgAdjstmntDt | [0..1] | ISODate | /PmtInf/PoolgAdjstmntDt | Date used for the correction of the value date of a cash pool movement that has been posted with a different value date. | NA | /CdtTrfTxInf/PoolgAdjstmntDt |
| Payment Information | Debtor | Dbtr | [1..1] | PartyIdentification | /PmtInf/Dbtr | Party that owes an amount of money to the (ultimate) creditor. | Seq A or Seq B – Tag 50a (F,G,H) | /CdtTrfTxInf/Dbtr |
| Payment Information | Debtor Account | DbtrAcct | [1..1] | Account | /PmtInf/DbtrAcct | Unambiguous identification of the account of the debtor to which a debit entry will be made as a result of the transaction. | Seq A or Seq B – Tag 50a (F,G,H) | /CdtTrfTxInf/DbtrAcct |
| Payment Information | Debtor Agent | DbtrAgt | [1..1] | AgentIdentification | /PmtInf/DbtrAgt | Financial institution servicing an account for the debtor. | Seq A or Seq B – Tag 52a (A,C) | /CdtTrfTxInf/DbtrAgt |
| Payment Information | Debtor Agent Account | DbtrAgtAcct | [0..1] | Account | /PmtInf/DbtrAgtAcct | Unambiguous identification of the account of the debtor agent at its servicing agent in the payment chain. | Seq A or Seq B – Tag 52a (A,C) | /CdtTrfTxInf/DbtrAgtAcct |
| Payment Information | Instruction For Debtor Agent | InstrForDbtrAgt | [0..1] | Max140Text | /PmtInf/InstrForDbtrAgt | Further information related to the processing of the payment instruction, that may need to be acted upon by the debtor agent, depending on agreement between debtor and the debtor agent. | NA | NA |
| Payment Information | Ultimate Debtor | UltmtDbtr | [0..1] | PartyIdentification | PmtInf/UltmtDbtr | Ultimate party that owes an amount of money to the (ultimate) creditor. | NA | /CdtTrfTxInf/UltmtDbtr |
| Payment Information | Charge Bearer | ChrgBr | [0..1] | CODE | /PmtInf/ChrgBr | Specifies which party/parties will bear the charges associated with the processing of the payment transaction. Codes: CRED, DEBT, SLEV, SHAR | Seq B – Tag 71A | /CdtTrfTxInf/ChrgBr |
| Payment Information | Charges Account | ChrgsAcct | [0..1] | Account | /PmtInf/ChrgsAcct | Account used to process charges associated with a transaction when charges have to be booked to an account different from the account identified in debtor’s account. | NA | NA |
| Payment Information | Charges Account Agent | ChrgsAcctAgt | [0..1] | AgentIdentification | /PmtInf/ChrgsAcctAgt | Agent that services a charges account. | NA | NA |
| Payment Information | Credit Transfer Transaction Information | CdtTrfTxInf | [1..*] | Parent | /PmtInf/CdtTrfTxInf | Provides information on the individual transaction(s) included in the message. | NA | NA |
| Credit Transfer Transaction Information | Payment Identification | PmtId | [1..1] | Parent | /CdtTrfTxInf/PmtId | Set of elements used to reference a payment instruction. | NA | CdtTrfTxInf/PmtId |
| Credit Transfer Transaction Information | Instruction Identification | InstrId | [0..1] | Max35Text | /CdtTrfTxInf/PmtId/InstrId | Unique identification as assigned by an instructing party for an instructed party to unambiguously identify the instruction. | Seq B – Tag 21 | NA |
| Credit Transfer Transaction Information | End To End Identification | EndToEndId | [1..1] | Max35Text | /CdtTrfTxInf/PmtId/EndToEndId | Unique identification assigned by the initiating party to unambiguously identify the transaction. This identification is passed on, unchanged, throughout the entire end-to-end chain. | Seq B – Tag 70 “ROC” | /CdtTrfTxInf/PmtId/EndToEndId |
| Credit Transfer Transaction Information | UETR | UETR | [0..1] | UUID | /CdtTrfTxInf/PmtId/UETR | Universally unique identifier to provide an end-to-end reference of a payment transaction. | Block 3 – Tag 121 | /CdtTrfTxInf/PmtId/UETR |
| Credit Transfer Transaction Information | Payment Type Information | PmtTpInf | [0..1] | Parent | /CdtTrfTxInf/PmtTpInf | Set of elements used to further specify the type of transaction. | NA | /CdtTrfTxInf/PmtTpInf |
| Credit Transfer Transaction Information | Instruction Priority | InstrPrty | [0..1] | CODE | /CdtTrfTxInf/PmtTpInf/InstrPrty | Indicator of the urgency or order of importance that the instructing party would like the instructed party to apply to the processing of the instruction. Codes: HIGH, NORM | Block 2 – Priority | /CdtTrfTxInf/PmtTpInf/InstrPrty |
| Credit Transfer Transaction Information | Service Level | SvcLvl | [0..*] | CODE | /CdtTrfTxInf/PmtTpInf/SvcLvl | Agreement under which or rules under which the transaction should be processed. Code: “ExternalServiceLevel1Code” | NA | /CdtTrfTxInf/PmtTpInf/SvcLvl |
| Credit Transfer Transaction Information | Local Instrument | LclInstrm | [0..1] | CODE | /CdtTrfTxInf/PmtTpInf/LclInstrm | User community specific instrument. Code: “ExternalLocalInstrument1Code” | NA | /CdtTrfTxInf/PmtTpInf/LclInstrm |
| Credit Transfer Transaction Information | Category Purpose | CtgyPurp | [0..1] | CODE | /CdtTrfTxInf/PmtTpInf/CtgyPurp | Specifies the high level purpose of the instruction based on a set of pre-defined categories. Code: “ExternalCategoryPurpose1Code” | NA | /CdtTrfTxInf/PmtTpInf/CtgyPurp |
| Credit Transfer Transaction Information | Amount | Amt | [1..1] | Parent | /CdtTrfTxInf/Amt | Amount of money to be moved between the debtor and creditor, before deduction of charges, expressed in the currency as ordered by the initiating party. | NA | NA |
| Credit Transfer Transaction Information | Instructed Amount | InstdAmt | [1..1] | Amount | /CdtTrfTxInf/Amt/InstdAmt | Amount of money to be moved between the debtor and creditor, before deduction of charges, expressed in the currency as ordered by the initiating party. | Seq B – Tag 32B | /CdtTrfTxInf/InstdAmt |
| Credit Transfer Transaction Information | Equivalent Amount | EqvtAmt | [1..1] | Amount | /CdtTrfTxInf/Amt/EqvtAmt | Amount of money to be moved between the debtor and creditor, expressed in the currency of the debtor’s account, and the currency in which the amount is to be moved. | NA | NA |
| Credit Transfer Transaction Information | Currency Of Transfer | CcyOfTrf | [1..1] | Currency Code | /CdtTrfTxInf/Amt/EqvtAmt/CcyOfTrf | Specifies the currency of the to be transferred amount, which is different from the currency of the debtor’s account. | NA | NA |
| Credit Transfer Transaction Information | Exchange Rate Information | XchgRateInf | [0..1] | Parent | /CdtTrfTxInf/XchgRateInf | Provides details on the currency exchange rate and contract. | NA | NA |
| Credit Transfer Transaction Information | Unit Currency | UnitCcy | [0..1] | CODE | /CdtTrfTxInf/XchgRateInf/UnitCcy | Currency in which the rate of exchange is expressed in a currency exchange. In the example 1GBP = xxxCUR, the unit currency is GBP. | NA | NA |
| Credit Transfer Transaction Information | Exchange Rate | XchgRate | [0..1] | DecimalNumber | /CdtTrfTxInf/XchgRateInf/XchgRate | The factor used for conversion of an amount from one currency to another. This reflects the price at which one currency was bought with another currency. | Seq B – Tag 36 | /CdtTrfTxInf/XchgRate |
| Credit Transfer Transaction Information | Rate Type | RateTp | [0..1] | CODE | /CdtTrfTxInf/XchgRateInf/RateTp | Specifies the type used to complete the currency exchange. | NA | NA |
| Credit Transfer Transaction Information | Contract Identification | CtrctId | [0..1] | Max35Text | /CdtTrfTxInf/XchgRateInf/CtrctId | Unique and unambiguous reference to the foreign exchange contract agreed between the initiating party/debtor and the debtor agent. | Seq B – Tag 21F | NA |
| Credit Transfer Transaction Information | Charge Bearer | ChrgBr | [0..1] | CODE | /CdtTrfTxInf/ChrgBr | Specifies which party/parties will bear the charges associated with the processing of the payment transaction. Codes: CRED, DEBT, SLEV, SHAR | Seq B – Tag 71A | /CdtTrfTxInf/ChrgBr |
| Credit Transfer Transaction Information | Mandate Related Information | MndtRltdInf | [0..1] | Parent | /CdtTrfTxInf/MndtRltdInf | Provides further details of the mandate signed between the creditor and the debtor | NA | MandateRelatedInformation |
| Credit Transfer Transaction Information | Cheque Instruction | ChqInstr | [0..1] | Parent | /CdtTrfTxInf/ChqInstr | Set of elements needed to issue a cheque. | NA | NA |
| Credit Transfer Transaction Information | Ultimate Debtor | UltmtDbtr | [0..1] | PartyIdentification | /CdtTrfTxInf/UltmtDbtr | Ultimate party that owes an amount of money to the (ultimate) creditor. | NA | /CdtTrfTxInf/UltmtDbtr |
| Credit Transfer Transaction Information | Intermediary Agent 1 | IntrmyAgt1 | [0..1] | AgentIdentification | /CdtTrfTxInf/IntrmyAgt1 | Agent between the debtor’s agent and the creditor’s agent. | Seq B – Tag 56a | Scenario Dependent |
| Credit Transfer Transaction Information | Intermediary Agent 1 Account | IntrmyAgt1Acct | [0..1] | Account | /CdtTrfTxInf/IntrmyAgt1Acct | Unambiguous identification of the account of the intermediary agent 1 at its servicing agent in the payment chain. | Seq B – Tag 56a | Scenario Dependent |
| Credit Transfer Transaction Information | Intermediary Agent 2 | IntrmyAgt2 | [0..1] | AgentIdentification | /CdtTrfTxInf/IntrmyAgt2 | Agent between the debtor’s agent and the creditor’s agent. | NA | Scenario Dependent |
| Credit Transfer Transaction Information | Intermediary Agent 2 Account | IntrmyAgt2Acct | [0..1] | Account | /CdtTrfTxInf/IntrmyAgt2Acct | Unambiguous identification of the account of the intermediary agent 2 at its servicing agent in the payment chain. | NA | Scenario Dependent |
| Credit Transfer Transaction Information | Intermediary Agent 3 | IntrmyAgt3 | [0..1] | AgentIdentification | /CdtTrfTxInf/IntrmyAgt3 | Agent between the debtor’s agent and the creditor’s agent. | NA | Scenario Dependent |
| Credit Transfer Transaction Information | Intermediary Agent 3 Account | IntrmyAgt3Acct | [0..1] | Account | /CdtTrfTxInf/IntrmyAgt3Acct | Unambiguous identification of the account of the intermediary agent 3 at its servicing agent in the payment chain. | NA | Scenario Dependent |
| Credit Transfer Transaction Information | Creditor Agent | CdtrAgt | [0..1] | AgentIdentification | /CdtTrfTxInf/CdtrAgt | Financial institution servicing an account for the creditor. | Seq B – Tag 57a | /CdtTrfTxInf/CdtrAgt |
| Credit Transfer Transaction Information | Creditor Agent Account | CdtrAgtAcct | [0..1] | Account | /CdtTrfTxInf/CdtrAgtAcct | Unambiguous identification of the account of the creditor agent at its servicing agent to which a credit entry will be made as a result of the payment transaction. | Seq B – Tag 57a | /CdtTrfTxInf/CdtrAgtAcct |
| Credit Transfer Transaction Information | Creditor | Cdtr | [0..1] | PartyIdentification | /CdtTrfTxInf/Cdtr | Party to which an amount of money is due. | Seq B – Tag 59a | /CdtTrfTxInf/Cdtr |
| Credit Transfer Transaction Information | Creditor Account | CdtrAcct | [0..1] | Account | /CdtTrfTxInf/CdtrAcct | Unambiguous identification of the account of the creditor to which a credit entry will be posted as a result of the payment transaction. | Seq B – Tag 59a | /CdtTrfTxInf/CdtrAcct |
| Credit Transfer Transaction Information | Ultimate Creditor | UltmtCdtr | [0..1] | PartyIdentification | /CdtTrfTxInf/UltmtCdtr | Ultimate party to which an amount of money is due. | NA | /CdtTrfTxInf/UltmtCdtr |
| Credit Transfer Transaction Information | Instruction For Creditor Agent | InstrForCdtrAgt | [0..1] | CODE + Info | /CdtTrfTxInf/InstrForCdtrAgt | Further information related to the processing of the payment instruction, provided by the initiating party, and intended for the creditor agent. Code: “ExternalCreditorAgentInstruction1Code” | NA | /CdtTrfTxInf/InstrForCdtrAgt |
| Credit Transfer Transaction Information | Instruction For Debtor Agent | InstrForDbtrAgt | [0..1] | CODE + Info | /CdtTrfTxInf/InstrForDbtrAgt | Further information related to the processing of the payment instruction, that may need to be acted upon by the debtor agent, depending on agreement between debtor and the debtor agent. Code: “ExternalDebtorAgentInstruction1Code” | NA | NA |
| Credit Transfer Transaction Information | Purpose | Purp | [0..1] | CODE | /CdtTrfTxInf/Purp | Underlying reason for the payment transaction. Code: “ExternalPurpose1Code” | NA | /CdtTrfTxInf/Purp |
| Credit Transfer Transaction Information | Regulatory Reporting | RgltryRptg | [0..1] | Parent | /CdtTrfTxInf/RgltryRptg | Information needed due to regulatory and statutory requirements. | Seq B – Tag 77B | /CdtTrfTxInf/RgltryRptg |
| Credit Transfer Transaction Information | Tax | Tax | [0..1] | Parent | /CdtTrfTxInf/Tax | Provides details on the tax. | NA | /CdtTrfTxInf/Tax |
| Credit Transfer Transaction Information | Related Remittance Information | RltdRmtInf | [0..1] | Parent | /CdtTrfTxInf/RltdRmtInf | Provides information related to the handling of the remittance information by any of the agents in the transaction processing chain. | NA | /CdtTrfTxInf/RltdRmtInf |
| Credit Transfer Transaction Information | Remittance Information | RmtInf | [0..1] | Parent | /CdtTrfTxInf/RmtInf | Information supplied to enable the matching of an entry with the items that the transfer is intended to settle, such as commercial invoices in an accounts’ receivable system. | Seq B – Tag 70 | /CdtTrfTxInf/RmtInf |
| Credit Transfer Transaction Information | Supplementary Data | SplmtryData | [0..1] | Envelope | /CdtTrfTxInf/SplmtryData | Additional information that cannot be captured in the structured elements and/or any other specific block. | NA | NA |
| CUSTOMER CREDIT TRANSFER INITIATION | Supplementary Data | SplmtryData | [0..1] | Envelope | /CstmrCdtTrfInitn/SplmtryData | Additional information that cannot be captured in the structured elements and/or any other specific block. | NA | NA |


