Download as pdf or txt
Download as pdf or txt
You are on page 1of 12

ISO20022 – Payment Status Report

pain.002.001.03 (V3) – Format Specification (CGI Compliant)

Doc Version 1.1

Strictly Confidential. Restricted Circulation only.


2002, 2003 Standard Chartered Bank

This document is owned and published by Standard Chartered Bank. No part of this documentation may be reproduced in any form without prior authorization from Standard Chartered
Bank. Standard Chartered Bank reserves the right to modify/release this document, as it deems necessary without prior notice. This document is released for reference purposes only.
Authorized STANDARD CHARTERED personnel should be contacted to get more and latest details on the document contents.
Table of Content
1 Overview 3
2 Scope 3
3 pain.002.001.03 as File-Level Acknowledgment 3
4 pain.002.001.03 as Transaction Status Report 3
5 Message Structure of Credit Transfer Initiation (pain.001.001.03) 4
6 Message Description 7
7 S2B Payment Status 11
1 Overview

ISO20022 has defined a series of XML-based file formats to be used as industry standards for financial transactions. It also defines the message type pain.002.001.03 that enables the
Bank to send the file-level acknowledgment and transaction-level status to the Corporate customers. Major Cash Management banks have agreed to a ‘harmonized interpretation’ of the
messages with the initiative called “Common Global Implementation” (CGI). CGI template for pain.002.001.03 has been signed-off by all CGI members. SCB is an active member of CGI
and contributed to the common interpretation of this message. CGI way of interpretation brings the benefits to the corporate customers who are banking with multiple Banks globally since
all the CGI member Bank interpret the message in same manner.

This document provides the details of pain.002.001.03 file format specification. It is prepared based on the document published by SWIFT in website http://www.iso20022.org.

2 Scope

SCB can send pain.002.001.03 message as response for the following scenarios:
1) File-level acknowledgment for pain.001.001.03 (Credit Transfer Initiation – Payments)
2) File-level acknowledgment for pain.008.001.02 (Direct Debit Initiation – Collection)
3) Transaction Status reports, ie. Payments that are initiated using pain.001.001.03

3 pain.002.001.03 as File-Level Acknowledgment

File-Level Acknowledgment message contains only 2 blocks: GrpHdr and OrginalGroupInformationAndStatus (OrgnlGrpInfAndSts). For every payment or collection file, one file-level
acknowledgment will be sent to the corporate customers. Possible statuses are ACTC (Accepted Technical Validation) or RJCT (Rejected). ACTC will be sent out if file format syntax is
as per xsd (XML structure) defined by ISO and Bank has accepted the file. RJCT will be sent out if entire file is rejected due to file format’s syntax error or file is duplicated.

File-Level acknowledge will be sent back to customers immediately, as documentation purpose, it will be within 30 minutes from the time the initiation file reached SCB.

4 pain.002.001.03 as Transaction Status Report

This message reports the transaction status as event-based (means based on transaction status changes in S2B, new status can be reported back to the customer).
Report generation daemon runs for every 30-40 minutes and extracts the transactions that got the new status compared to what was sent earlier. This will make sure
that customer has been informed about the new status in time. Possible Status of the transaction has been provided in ‘Message Description’ section. This message
can be configured to report only the rejection (negative) status or all the statuses of the transactions.
5 Message Structure of Credit Transfer Initiation (pain.001.001.03)

pain.002.01.03 message consists of 3 major Blocks:

1) Group Header  Mandatory and can be presented only once. It contains message level information like message id, message creation date etc.
2) OrgnlGrpInfAndSts  Mandatory and can be presented only once. Contains elements related to Original Message identification and file-level status.
3) OrgnlPmtInfAndSts  Optional and can be repeated. Contains Original Transaction’s references, Transaction Status and Original Payment’s key information like Creditors
Name, Value Date, Amount…etc.

The Following picture shows the message structure as defined in xsd:


Group Header:
Original Group Information And Status:
Original Payment Information And Status
The above picture shows the basic structure of the message, and the following will be useful to know the attributes of each element.

 a box with full-line is a mandatory message element.

 a box with dotted line is an optional message element.

 Child element must appear in the sequence defined.

 Indicates that only one element should appear from the element defined after this symbol.

 1..α indicates that this element can appear either no time or any number of times.

6 Message Description

The following table describes the Message Items of pain.002.01.03.


• Index column refers to the ISO Index Number as documented in ISO20022.
• Message Item column contains the Functional Name of each element
• XML Tag column contains exact tag name of the XML message
• Type & Length column indicates Type and Length of each element.
• Remarks column provides the SCB specific data.
It contains the elements that will be used by SCB, all the unused elements are not listed here.
Index Message Item XML Tag Name Occu Type & Length (or Remarks
rrenc Group Element Name)
es
0.0 Customer Payment Status Report <CstmrPmtStsRpt> [1..1]
1.0 +Group Header <GrpHdr> [1..1]
1.1 ++MessageIdentification <MsgId> [1..1] Max35Text Message Id assigned by SCB for every message.
1.2 ++CreationDateTime <CreDtTm> [1..1] DateTime Date and Time at which the message is created.
Format: YYYY-MM-DDThh:mm:ss
1.3 ++InitiatingParty <InitgPty> [1..1] Party that initiates the status message.
+++Identification <Id> [0..1]
++++OrganisationIdentification <OrgId> [1..1]
+++++ BICOrBEI <BICOrBEI> [0..1] BIC Identifier SCB BIC – will always be ‘SCBLGB2LWEB’.
+++++Other <Othr> [0..n]
++++++Identification <Id> [1..1] Max35Text Straight2Bank Group ID used by the client to initiate the
transactions is provided here.
++++++SchemeName <SchmeNm> [0..1]
Index Message Item XML Tag Name Occu Type & Length (or Remarks
rrenc Group Element Name)
es
+++++++Code <Cd> [1..1] Code Will always state ‘CUST’ to indicate that it is a customer’s S2B
group id.
2.0 +OriginalGroupInformationAndStatus <OrgnlGrpInfAndSts> [1..1] Original group information concerning the group of
transactions, to which the status report message refers to.
2.1 ++OriginalMessageIdentification <OrgnlMsgId> [1..1] Max35Text Message Id that was sent in the Initiation message (pain.001 or
pain.008) by the customer. Customer can use this value to
reconcile the file-level status at their system.
2.2 ++ OriginalMessageNameIdentification <OrgnlMsgNmId> [1..1] Code Specifies the original message name identifier to which the
message refers. It will be either pain.001.001.03( for
Payments) or pain.008.001.02 (for Collection)
2.4 ++OriginalNumberOfTransactions <OrgnlNbOfTxs> [0..1] Number of individual transactions contained in the original
message.
This element appears only for the file-level acknowledgement
message for pain.001 and pain.008 (this element does not
appear for Transaction status reports).
2.5 ++OriginalControlSum <OrgnlCtrlSum> [0..1] Max15NumericText Total of all individual amounts included in the original message.

This element appears only for the file-level acknowledgement


message for pain.001 and pain.008 (this element does not
appear for Transaction status reports).
2.6 ++GroupStatus <GrpSts> [0..1] Code Specifies the status of the message.

Possible Values:
ACTC  Accepted Technical Validation. This means the
message is accepted by SCB.
RJCT  Message is rejected due to invalid xml structure or file
is duplicated.

SCB performs ISO20022 XSD validation against the incoming


message, if message does not satisfy the XSD validation, then
entire message will be rejected. The rejected reason is
provided in <AddtlInf> element.

This element appears only for the file-level acknowledgement


message for pain.001 and pain.008 (this element does not
appear for Transaction status reports).
2.7 ++StatusReasonInformation <StsRsnInf> [0..n] This element appears only if GrpSts is RJCT.

This element appears only for the file-level acknowledgement


message for pain.001 and pain.008 (this element does not
appear for Transaction status reports).
2.9 +++Reason <Rsn> [0..1] Specifies the reason for the rejection if applicable.
2.10 ++++Code <Cd> [0..1] Code Specifies the reason code
Possible Values:
Index Message Item XML Tag Name Occu Type & Length (or Remarks
rrenc Group Element Name)
es
AM05  Indicates a duplicate message, same message was
received in last 15 days.
AM10  Sum of instructed amounts does not equal the control
sum.
NARR  All other rejected reason.
In above scenario, detailed reason is provided in <AddtlInf>
element.
2.12 +++AdditionalInformation <AddtlInf> [0..n] Max105Text Specifies further details on the status reason.

3.0 +OriginalPaymentInformationAndStatus <OrgnlPmtInfAndSts> [0..n] This section appears only for Transaction Report, it does
not appear for file-level acknowledgement.
3.1 ++OriginalPaymentInformationIdentification <OrgnlPmtInfId> [1..1] Max35Text PmtInfId that was sent in pain.001.001.03 message by the
st
customer. SCB can populate only 1 28 characters from the
original message.
3.15 ++TransactionInformationAndStatus <TxInfAndSts> [0..n] Set of elements used to provide information on the original
transactions to which the status report message refers.
3.16 +++StatusIdentification <StsId> [0..1] Max35Text Unique identification assigned by SCB to identify individual
payment transactions:
BatchRef-PaymentRef-ChequeNumber (Cheque number
appear only for Cheque Payments)
3.17 +++OriginalInstructionIdentification <OrgnlInstrId> [0..1] Max35Text InstrId that was sent in pain.001.001.03 message by the
customer.
3.18 +++OriginalEndToEndIdentification <OrgnlEndToEndId> [0..1] Max35Text EndToEndId that was sent in pain.001.001.03 message by the
customer.
3.19 +++TransactionStatus <TxSts> [0..1] Code Indicates the status of the payment transaction.

Possible values:
ACCP
ACSP
PDNG
RJCT

Please refer the section ‘S2B Payment Status’ for the possible
payment status.
3.20 +++StatusReasonInformation <StsRsnInf> [0..n] Set of elements used to provide detailed information of the
status reason
3.22 ++++Reason <Rsn> [0..1] Specifies the reason for the rejection if applicable.
3.23 +++++Code <Cd> [1..1] Code SCB uses ‘NARR’ always.
3.25 ++++AdditionalInformation <AddtlInf> [0..n] Max105Text Specifies further details on the status reason.

Free text captured by in-country payment processing system. If


in-country does not provide any text, then it holds the
information as provided in ‘S2B Payment Status’ report.
Index Message Item XML Tag Name Occu Type & Length (or Remarks
rrenc Group Element Name)
es
3.29 +++AcceptanceDateTime <AccptncDtTm> [0..1] DateTime Date and Time on which debit has taken place. Time is an
approximate time.
3.30 +++AccountServicerReference <AcctSvcrRef> [0..1] Max35Text SCB assigned reference number:
BatchRef-PaymentRef-PaymentType.

3.31 +++ClearingSystemReference <ClrSysRef> [0..1] Max35Text SCB in-country reference number to identify the transactions:
1. Cheque Number for Cheque Payment.
2. For ACH Payment type, it is framed as
S<STSID><PaymentRef>
3. For other payment type, in-country system assigned
reference number.
3.32 +++OriginalTransactionReference <OrgnlTxRef> [0..1] Set of key elements used to identify the original transaction that
is being referred to.
3.34 ++++Amount <Amt> [0..1]
3.35 +++++InstructedAmount <InstdAmt Ccy="AAA"> [1..1] Amount Specifies the payment amount
3.41 ++++RequestedExecutionDate <ReqdExctnDt> [0..1] Date Specifies the value date of the payment transaction.
3.121 ++++Debtor <Dbtr> [0..1] Provides Debtor details
+++++Name <Nm> [0..1] Max140Text Specifies the Debtor Name
+++++ PostalAddress <PstlAdr> [0..1]
++++++ AddressLine <AdrLine> [0..7] Max70Text Specifies the Debtor Address.
3.122 ++++DebtorAccount <DbtrAcct> [0..1] Provides the Debit Account Number
+++++Identification <Id> [1..1]
++++++ Other <Othr> [1..1]
+++++++ Identification <Id> [1..1] Max34Text Specifies Debit Account Number of the payment.
+++++Currency <Ccy> [0..1] Currency Specifies currency of the debit account number.
3.123 ++++DebtorAgent <DbtrAgt> [0..1] Provides the SCB BIC code
+++++FinancialInstitutionIdentification <FinInstnId> [1..1]
++++++BIC <BIC> [0..1] Identifier SCB BIC code on which Debit Account Number exist.
3.125 ++++CreditorAgent <CdtrAgt> [0..1] Provides Creditor Bank information.
+++++FinancialInstitutionIdentification <FinInstnId> [1..1]
++++++BIC <BIC> [0..1] Identifier Specifies creditor Bank’s BIC code if it was provided in the
original payment.
++++++ClearingSystemMemberIdentification <ClrSysMmbId> [0..1]
+++++++Member Id <MmbId> [1..1] Max35Text Specifies creditors Bank’s ‘Local clearing bank code’ if it was
provided in the original payment.
++++++Name <Nm> [0..1] Max140Text Specifies Creditor’s Bank Name if it was provided in the original
payment.
+++++BranchIdentification <BrnchId> [0..1]
++++++Identification <Id> [0..1] Max35Text Specifies Creditor Bank’s Local Clearing branch code and sub-
branch codes with a separator as slash (/) character.
3.127 ++++Creditor <Cdtr> [0..1] Provides Creditor details
Index Message Item XML Tag Name Occu Type & Length (or Remarks
rrenc Group Element Name)
es
+++++Name <Nm> [0..1] Max140Text Specifies Creditor Name, it can be local language characters.
+++++ PostalAddress <PstlAdr> [0..1]
++++++AddressLine <AdrLine> [0..7] Max70Text Specifies Creditor Address if it was provided in the original
payment.
3.128 ++++CreditorAccount <CdtrAcct> [0..1] Provides Creditor Account Number
+++++Identification <Id> [1..1]
++++++Other <Othr> [1..1]
+++++++Identification <Id> [1..1] Max34Text Specifies the Credit Account number if it was provided in the
original payment.
+++++Name <Nm> [0..1] Max70Text It will be same as Creditor’s Name.

7 S2B Payment Status

S2B Status Description <TxSts> (Transaction StsRsnInf.AddtlInf (Additional


Status) Information of Transaction status.)
Positive Statuses
Received (means payment reached to S2B) ACCP Received
Under Processing (means Payment has reached to the ACSP Under Processing
country and it is being processed)
Processed (means debit has been taken place) ACSP Processed
Cheque Cleared ACSP Cheque Cleared
Cheque Ready and Debit in Progress ACSP Cheque Ready and Debit in Progress
Received after cut-off time (means Payment reached after the PDNG Received after cut-off time
cut-off time, it will be processed next working day)
Holiday (Requested execution date in on holiday, the PDNG Holiday
payment will be processed next working day)
Future Date (Requested execution date in on future, the PDNG Future Dt
payment will be processed on the day)
Sent to Alliance Bank (applicable where SCB is instructing ACSP Sent to Alliance Bank
other bank to execute the payment)
Negative statuses
Rejected (due to any generic validation) RJCT Rejected
Rejected by Authorizer (Authorizer has rejected the payment RJCT Rejected by Authorizer
in S2B web)
Stopped (stopped based on the request) RJCT Stopped
Returned (Beneficiary Bank has rejected the payment, RJCT Returned
available only for certain countries)
S2B Status Description <TxSts> (Transaction StsRsnInf.AddtlInf (Additional
Status) Information of Transaction status.)
Stale (applicable for Cheque, if cheque is not presented till its RJCT Stale
expiry)

You might also like