Pain.001.001.02
Table of contents
No headers
The following is a list of rules specified by ISO20022 in the document Payments_Maintenance_2006:
R01_ChargeBearerRule | "If ChargeBearer is present, then CreditTransferTransactionInformation/ChargeBearer is not allowed. If CreditTransferTransactionInformation/ChargeBearer is present, then ChargeBearer is not allowed. CreditTransferTransactionInformation/ChargeBearer and ChargeBearer may both be absent." |
R02_ChargesAccountAgentRule | "If ChargesAccountAgent is present, it must contain a branch of the DebtorAgent. It must not contain a completely different financial institution." |
R03_ChargesAccountRule | If ChargesAccountAgent is present, then ChargesAccount must be present. |
R04_ChequeInstructionRule | (pain.001.001.02/PmtInf/CdtTrfTxInf/ChqInstr): If PaymentMethod is CHK, then CreditTransferTransactionInformation/ChequeInstruction is optional. If PaymentMethod is different from CHK, then CreditTransferTransactionInformation/ChequeInstruction is not allowed. |
R05_CreditorAgentRule1 | "If PaymentMethod is CHK and if CreditTransferTransactionInformation/ ChequeInstruction/DeliveryMethod is present and is equal to MLFA, CRFA, RGFA or PUFA, then CreditTransferTransactionInformation/ CreditorAgent is mandatory." |
R06_CreditorAgentRule2 | "If PaymentMethod is CHK and if CreditTransferTransactionInformation/ ChequeInstruction/DeliveryMethod is not present or is not equal to MLFA, CRFA, RGFA or PUFA, then CreditTransferTransactionInformation/ CreditorAgent is not allowed." |
R07_CreditorAndOrCreditorAccountRule | If PaymentMethod is CHK, then CreditTransferTransactionInformation/CreditorAccount is not allowed. |
R08_PaymentTypeInformationRule | "If PaymentTypeInformation is present, then CreditTransferTransactionInformation/PaymentTypeInformation is not allowed." |
R09_Grouping1Rule | "If GroupHeader/Grouping is present and equals GRPD, then one and only one occurrence of PaymentInformation must be present." |
R10_Grouping2Rule | "If GroupHeader/Grouping is present and equals SNGL, then each occurrence of PaymentInformation must contain one and only one occurrence of PaymentInformation/CreditTransferTransactionInformation." |
R11_IntermediaryAgent1AccountRule | If IntermediaryAgent1Account is present, then IntermediaryAgent1 must be present. |
R12_IntermediaryAgent2AccountRule | If IntermediaryAgent2Account is present, then IntermediaryAgent2 must be present. |
R13_IntermediaryAgent3AccountRule | If IntermediaryAgent3Account is present, then IntermediaryAgent3 must be present. |
Gl01_ChequeFromGuideline_Dbtr | CreditTransferTransactionInformation/ChequeInstruction/ChequeFrom may only be present if different from CreditTransferTransactionInformation/UltimateDebtor or Debtor |
Gl01_ChequeFromGuideline_UltmtDbtr | CreditTransferTransactionInformation/ChequeInstruction/ChequeFrom may only be present if different from CreditTransferTransactionInformation/UltimateDebtor or Debtor |
Gl02_ChequeInstructionDeliverToCreditorAgentGuideline | "If creditTransferTransactionInformation/ChequeInstruction/DeliveryMethod is present and is CRFA or MLFA or PUFA or RGFA, then CreditTransferTransactionInformation/ChequeInstruction/DeliverTo may only be present if different than CreditTransferTransactionInformation/Creditor." |
Gl03_ChequeInstructionDeliverToCreditorGuideline | "If PaymentInformation/CreditTransferTransactionInformation/ChequeInstruction/DeliveryMethod is present and is CRCD or MLCD or PUCD or RGCD, then CreditTransferTransactionInformation/ ChequeInstruction/DeliverTo may only be present if different from CreditTransferTransactionInformation/ Creditor." |
Gl04_ChequeInstructionDeliverToDebtorGuideline | "If CreditTransferTransactionInformation/ChequeInstruction/DeliveryMethod is present and if CreditTransferTransactionInformation/ChequeInstruction/DeliveryMethod/Code is CRDB or MLDB or PUDB or RGDB, then CreditTransferTransactionInformation/ChequeInstruction/DeliverTo may only be present if different than Debtor." |
Gl05_UltimateDebtorGuideline | UltimateDebtor may only be present if different from Debtor. |
Gl06_UltimateCreditorGuideline | "UltimateCreditorGuideline UltimateCreditor may only be present if different from Creditor." |
ISOgen_01_GrpHdr_CtrlSum | Group Header ControlSum has to match with the arithmetic sum of all InstdAmt and EqvtAmt/Amt elements. |
ISOgen_02_GrpHdr_NbOfTxs | Value of NbOfTxs in Group Header has to match with the count of CdtTrfTxInf elements in the message. |
ISOgen_02a_PmtInf_CtrlSum | Payment Information ControlSum has to match with the arithmetic sum of all InstdAmt and EqvtAmt/Amt elements. |
ISOgen_02b_PmtInf_NbOfTxs | Value of NbOfTxs in Payment Information has to match with the count of CdtTrfTxInf elements in the message. |
ISOgen_03_PmtInfId_duplicate | Dublicate PmtInfIds inside the same payment information block. |
ISOgen_04_EndToEndId_duplicate | Dublicate EndtoEndIds inside the same payment information block. |
ISOgen_05_isValidIBAN | IBAN has to be in the format specified by ISO 13616 standard. |
ISOgen_06_isExternalPurpose1Code | ExternalPurpose1Code has to be valid. |
ISOgen_07_isExternalLocalInstrument1Code | ExternalLocalInstrument1Code has to be valid. |
ISOgen_08_isExternalClearingSystemIdentification1Code | ExternalClearingSystemIdentification1Code has to be valid. |