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

Participant V2.

2 Change Management Guide

V2.2 Change Management Guide


for
Interoperable Digital Transaction
Platform (IDTP)

September 23, 2021

House #32, Road #7,

Dhanmondi, Dhaka – 1205

On behalf of Consultant JV

Page 1 of 85
Participant V2.2 Change Management Guide

Document Change History

Version Date Modifications Author


1.0 Sept 23, 2021 Initial Version Orion Informatics Ltd

Page 2 of 85
Participant V2.2 Change Management Guide

Contents

INTRODUCTION ................................................................................................................................................... 4
Key Modifications ................................................................................................................................................ 4
New Features/Functionality/APIs/Request or Response Message Added ................................ 4
Features/Functionality/APIs/Request or Response Message Modified ..................................... 4
Bug Fixes ................................................................................................................................................................. 5
Configuration Examples .................................................................................................................................... 5
Known Issues ......................................................................................................................................................... 5
Appendix ................................................................................................................................................................. 6

Page 3 of 85
Participant V2.2 Change Management Guide

INTRODUCTION

Thank you for choosing Interoperable Digital Transaction Platform (IDTP).

The following list outlines the five main sections of this document. Each section
contains important information about the Interoperable Digital Transaction
Platform (IDTP) Version 2.2.

● Key Modifications
● Bug Fixes
● Configuration Examples
● Known Issues
● Appendix

Key Modifications

New Features/Functionality/APIs/Request or Response Message Added

Following are the new additions in V2.2.

● Request Header Added for All API Requests

● Alias Management

● TransferFundsFItoFI()

● TransferFundsFItoFIISO()

● GetRTPsbyFI()

● GetTransactionVAT()

● ProcessFIToFIFundTransferRequest()

Features/Functionality/APIs/Request or Response Message Modified

Following are the modifications in V2.2.

● RegisterIDTPUser()

● ResetIDTPPIN()

Page 4 of 85
Participant V2.2 Change Management Guide

● GetIDTPClockTime()

● SetDefaultAccount()

● GetTransactionsbyFI()

● GetTransactionsbyUser()

● RegisterDevice()

● ProcessFundTransferRequest() Req/Resp Modifications

● TransferFunds() Req/Resp Modifications

● CreateRTPISO Request Modifications

Please follow APPENDIX section for details of each of the additions/modifications


made in V2.2.

Bug Fixes
N/A

Configuration Examples
N/A

Known Issues
N/A

Page 5 of 85
Participant V2.2 Change Management Guide

Appendix

i. Request Header Added for All API Requests

For all API calls to ICP, a request header needs to be passed from FI PIM named
REQUEST_SOURCE where the value will be FIAPP. This is mandatory to be passed in
Request Header.

Page 6 of 85
Participant V2.2 Change Management Guide

ii. Alias Management

For Alias Management there are two important things to focus on such as
Registration and Transaction.

1. Registration:

During Registration in the RegisterIDTPUser API Alias of the account need to


be passed in the request body under the tag <Alias>. This tag is under
<AccountInfo> tag of the RegisterIDTPUser API’s request body xml.
<AccountInfo>
<RoutingNumber>345678912</RoutingNumber>
<AccountNumber>1987634915628</AccountNumber>
<Alias>samplealias</Alias>
<IsGlobalDefaultCreditAccount>1</IsGlobalDefaultCreditAccou
nt>
<IsGlobalDefaultRTPAccount>1</IsGlobalDefaultRTPAccount>
<IsFIDefaultDebitAccount>1</IsFIDefaultDebitAccount>
</AccountInfo>

2. Transaction:

During transaction Receiver Account’s Alias need to be passed with the


Receiver’s VirtualId separated by forward slash (/). For Example:
sampleUser01@user.idtp/abc. Here, Alias (abc) is the Alias of the Receiver’s Account
which will be credited during this transaction.

For Sender, transaction amount will be debited from the default debit account of the
Sender.

Page 7 of 85
Participant V2.2 Change Management Guide

Page 8 of 85
Participant V2.2 Change Management Guide

iii. TransferFundsFItoFI()

This API is newly added in V2.2. This API will be used to Transfer Fund from
Financial Institution to Financial Institution (Inter FI Fund Transfer).

Method Name: TransferFundsFItoFI

Uri: https://$root/TransferFundsFItoFI

Method Type: POST

Description: Invoked by core banking system to transfer fund to another FI.

Parameters: The Request body element contains the below input parameters. A
sample XML is provided below for transfer funds from FI to FI and a sample table
provided for the XML response which defines the success and failure response.

Request Flow

1. The FI will call this TransferFundsFItoFI API when it needs to transfer


fund to any other FI.

API Request:

Input Parameters List:

Serial Parameter Name


1 Sender Info
2 Receiver Info
3 Transaction Info
4 Creds

Note: you can provide only vid or all the other information for sender and receiver
tag.

Sample API Request:

<FIToFIFundTransfer
xmlns:idtp="http://idtp.gov.bd/xxx/schema/">
<Head ver="1.0" ts="2021-10-11 11:31:21" orgId="SBL1BDDH"
msgId="1" />
Page 9 of 85
Participant V2.2 Change Management Guide

<Req id="6816f1b9-370d-4965-bd0c-7532e8c521e5"
note="FIToFIFundTransfer" ts="10/11/21 5:31:21 PM"
type="TransferFundsFItoFI" />
<FundTransferInfo addr="" type="">
<SenderInfo>
<SenderChannelType value="0"/>
<Sender name = "" nid = "" bin = "" mobileno = ""
dob = "" doi = "" accountNo="" vid="samplefi1@fin.idtp"
amount="500" ></Sender>
</SenderInfo>
<DeviceInfo>
<Device_ID></Device_ID>
<Mobile_No></Mobile_No>
<Location></Location>
<IP></IP>
</DeviceInfo>
<ReceiverInfo>
<Receivers>
<Receiver ReceiverType = "FinancialInstitution"
name = "" nid = "" bin = "" mobileno = "" dob = "" doi =
"" fiswiftcode = "" accountNo = "" vid =
"samplefi2@fin.idtp" amount = "500" ></Receiver>
</Receivers>
</ReceiverInfo>
<TxnInfo addrType="">
<ReferenceNo value="20211011173121487"/>
<TxnAmount value="500" />
<Purpose value="test" />
</TxnInfo >
<Creds>
<Cred type="IDTP_PIN" subtype="">
<Data>XXXXXXXXXXXXX</Data>
</Cred>
</Creds>
<OtherInfo/>
</FundTransferInfo>
</FIToFIFundTransfer>

Page 10 of 85
Participant V2.2 Change Management Guide

API Response:

Type Success Fai


le
d
Message <FIToFIFundTransferResponse> <FIToFIFundTransferResponse>
<Code>200</Code> <Code>90606</Code>
<Message>Success</Message> <Message>Inactive Receiver
FI</Message>
<Amount_Debited>300</Amount_D <Amount>500</Amount>
ebited>
<RefNo_SendingBank>61BE48CF8
<Amount_Credited>300</Amount_ C44D4A84E2A105007DE804</RefN
Credited> o_SendingBank>

<Amount_Charged_Fees>0.00</Am <RefNo_SendingPSP></RefNo_Se
ount_Charged_Fees> ndingPSP>

<Amount_Charged_VAT>0.00</Amo <RefNo_ReceivingBank></RefNo
unt_Charged_VAT> _ReceivingBank>

<RefNo_SendingBank>E61BE48CF8 <RefNo_ReceivingPSP></RefNo_
C44D4A84E2A105007DE804</RefNo ReceivingPSP>
_SendingBank> <RefNo_IDTP></RefNo_IDTP>
</FIToFIFundTransferResponse
<RefNo_SendingPSP></RefNo_Sen >
dingPSP>

<RefNo_ReceivingBank>SBL2BDDH
20211021150320056</RefNo_Rece
ivingBank>

<RefNo_ReceivingPSP></RefNo_R
eceivingPSP>

<RefNo_IDTP>IDTP5202110211348
90004</RefNo_IDTP>
</FIToFIFundTransferResponse>

Page 11 of 85
Participant V2.2 Change Management Guide

iv. TransferFundsFItoFIISO()

This API is newly added in V2.2. This API will be used to Transfer Fund from
Financial Institution to Financial Institution (Inter FI Fund Transfer).

Method Name: TransferFundsFItoFIISO

Uri: https://$root/TransferFundsFItoFI

Method Type: POST

Description: Invoked by core banking system to transfer fund to another FI.

Parameters: The Request body element contains the below input parameters. A
sample request XML and a sample response XML is provided below for transfer funds
from FI to FI.

Request Flow

1. The FI will call this TransferFundsFItoFIISO API when it needs to transfer


fund to any other FI.

API Request:

Input Parameters List:


Serial Parameter Name Tag
1 From DataPDU
+Body
++AppHdr
+++Fr
++++FIId
+++++ FinInstnId
++++++ BICFI
2 To DataPDU
+Body
++AppHdr
+++To
++++FIId
+++++ FinInstnId
++++++ BICFI
3 Message ID DataPDU
+Body
++Document
+++FICdtTrf
++++GrpHdr
+++++MsgId
Page 12 of 85
Participant V2.2 Change Management Guide

4 Time DataPDU
+Body
++Document
+++FICdtTrf
++++GrpHdr
+++++CreDtTm
5 End to End ID DataPDU
+Body
++Document
+++FICdtTrf
++++CdtTrfTxInf
+++++PmtId
++++++EndToEndId
6 Transaction ID DataPDU
+Body
++Document
+++FICdtTrf
++++CdtTrfTxInf
+++++PmtId
++++++TxId
7 Amount DataPDU
+Body
++Document
+++FICdtTrf
++++CdtTrfTxInf
+++++ IntrBkSttlmAmt
8 Instructing Agent DataPDU
+Body
++Document
+++FICdtTrf
++++CdtTrfTxInf
+++++InstgAgt
++++++FinInstnId
+++++++BICFI
9 Instructed Agent DataPDU
+Body
++Document
+++FICdtTrf
++++CdtTrfTxInf
+++++InstdAgt
++++++FinInstnId
+++++++BICFI
10 Sender VID DataPDU
+Body
++Document
+++FICdtTrf
++++CdtTrfTxInf
+++++Dbtr
++++++Nm

Page 13 of 85
Participant V2.2 Change Management Guide

11 Sender Account No. DataPDU


+Body
++Document
+++FICdtTrf
++++CdtTrfTxInf
+++++DbtrAcct
++++++Id
+++++++Othr
++++++++Id
12 Sender SwiftCode DataPDU
+Body
++Document
+++FICdtTrf
++++CdtTrfTxInf
+++++DbtrAgt
++++++FinInstnId
+++++++BICFI
13 Receiver VID DataPDU
+Body
++Document
+++FICdtTrf
++++CdtTrfTxInf
+++++Cdtr
++++++Nm
14 Receiver Account No. DataPDU
+Body
++Document
+++FICdtTrf
++++CdtTrfTxInf
+++++CdtrAcct
++++++Id
+++++++Othr
++++++++Id
15 Receiver SwiftCode DataPDU
+Body
++Document
+++FICdtTrf
++++CdtTrfTxInf
+++++CdtrAgt
++++++FinInstnId
+++++++BICFI
16 Purpose DataPDU
+Body
++Document
+++FICdtTrf
++++CdtTrfTxInf
+++++Purp
++++++Prtry

Page 14 of 85
Participant V2.2 Change Management Guide

17 Sender IDTP PIN DataPDU


+Body
++Document
+++FICdtTrf
++++SplmtryData
+++++Envlp
++++++Creds
+++++++Cred
++++++++Data
18 Channel ID DataPDU
+Body
++Document
+++FICdtTrf
++++SplmtryData
+++++Envlp
++++++ChannelInfo
+++++++ChannelID
19 Sending Bank Reference No. DataPDU
+Body
++Document
+++FICdtTrf
++++SplmtryData
+++++Envlp
++++++Tx_Tracking_Info
+++++++RefNo_SendingBank

Sample API Request:


<?xml version="1.0" encoding="utf-8"?>
<DataPDU xmlns="urn:swift:saa:xsd:saa.2.0">
<Revision>2.0.5</Revision>
<Body>
<AppHdr
xmlns="urn:iso:std:iso:20022:tech:xsd:head.001.001.01">
<Fr>
<FIId>
<FinInstnId>
<BICFI>SBL1BDDH</BICFI>
</FinInstnId>
</FIId>
</Fr>
<To>
<FIId>
<FinInstnId>
<BICFI>IDTP</BICFI>
</FinInstnId>
</FIId>
</To>
<BizMsgIdr>BIZMSGSBL1000000000000001</BizMsgIdr>
<MsgDefIdr>pacs.009.001.04</MsgDefIdr>
<BizSvc>IDTP</BizSvc>
Page 15 of 85
Participant V2.2 Change Management Guide

<CreDt>2021-10-18T18:50:42</CreDt>
</AppHdr>
<Document
xmlns="urn:iso:std:iso:20022:tech:xsd:pacs.009.001.04">
<FICdtTrf>
<GrpHdr>
<MsgId>MSGbca021dd-54e3-4243-89f2-
7b94aa813dac</MsgId>
<CreDtTm>2021-10-19T00:50:42</CreDtTm>
<NbOfTxs>1</NbOfTxs>
<SttlmInf>
<SttlmMtd>RTGS</SttlmMtd>
</SttlmInf>
</GrpHdr>
<CdtTrfTxInf>
<PmtId>
<InstrId>INSTRe699ece4-4094-43d8-8267-
da98f6bf89e8</InstrId>
<EndToEndId>ETOE001c79ec-f5fe-45b5-9e43-
553f8eed2006</EndToEndId>
<TxId>TXID520211019163877278</TxId>
</PmtId>
<PmtTpInf>
<ClrChanl>IDTP</ClrChanl>
</PmtTpInf>
<IntrBkSttlmAmt Ccy="BDT">100</IntrBkSttlmAmt>
<ChrgBr>SHAR</ChrgBr>
<InstgAgt>
<FinInstnId>
<BICFI>SBL1BDDH</BICFI>
</FinInstnId>
</InstgAgt>
<InstdAgt>
<FinInstnId>
<BICFI>IDTP</BICFI>
</FinInstnId>
</InstdAgt>
<Dbtr>
<Nm>samplefi1@fin.idtp</Nm>
</Dbtr>
<DbtrAcct>
<Id>
<Othr>
<Id>1578920211234</Id>
</Othr>
</Id>
</DbtrAcct>
<DbtrAgt>
<FinInstnId>
<BICFI>SBL1BDDH</BICFI>
Page 16 of 85
Participant V2.2 Change Management Guide

</FinInstnId>
</DbtrAgt>
<CdtrAgt>
<FinInstnId>
<BICFI>SBL2BDDH</BICFI>
</FinInstnId>
</CdtrAgt>
<Cdtr>
<Nm>samplefi2@fin.idtp</Nm>
</Cdtr>
<CdtrAcct>
<Id>
<Othr>
<Id>33331515515101</Id>
</Othr>
</Id>
</CdtrAcct>
<Purp>
<Prtry>TEST</Prtry>
</Purp>
</CdtTrfTxInf>
<SplmtryData>
<PlcAndNm/>
<Envlp>
<Creds>
<Cred type="IDTP_PIN" subtype="">
<Data>xxxxxxxxxxxx</Data>
</Cred>
</Creds>
<ChannelInfo>
<ChannelID>Online</ChannelID>
</ChannelInfo>
<Tx_Tracking_Info>
<RefNo_SendingPSP/>

<RefNo_SendingBank>REFNOSBL1111111119929292</RefNo_SendingBank
>
<RefNo_ReceivingBank/>
<RefNo_ReceivingPSP/>
<RefNo_IDTP/>
</Tx_Tracking_Info>
</Envlp>
</SplmtryData>
</FICdtTrf>
</Document>
</Body>
</DataPDU>

Page 17 of 85
Participant V2.2 Change Management Guide

Sample API Response:


<?xml version="1.0" encoding="utf-8"?>
<DataPDU xmlns="urn:swift:saa:xsd:saa.2.0">
<Revision>2.0.5</Revision>
<Body>
<AppHdr
xmlns="urn:iso:std:iso:20022:tech:xsd:head.001.001.01">
<Fr>
<FIId>
<FinInstnId>
<BICFI>IDTP</BICFI>
</FinInstnId>
</FIId>
</Fr>
<To>
<FIId>
<FinInstnId>
<BICFI>SBL1BDDH</BICFI>
</FinInstnId>
</FIId>
</To>
<BizMsgIdr>MSG18740d07-70e5-45ae-8fe3-
73d2640721a0</BizMsgIdr>
<MsgDefIdr>pacs.002.001.05</MsgDefIdr>
<BizSvc>IDTP</BizSvc>
<CreDt>2021-10-21T07:50:32</CreDt>
</AppHdr>
<Document
xmlns="urn:iso:std:iso:20022:tech:xsd:pacs.002.001.05">
<FIToFIPmtStsRpt>
<GrpHdr>
<MsgId>MSG18740d07-70e5-45ae-8fe3-
73d2640721a0</MsgId>
<CreDtTm>2021-10-
21T13:50:32</CreDtTm>
</GrpHdr>
<OrgnlGrpInfAndSts>

<OrgnlMsgId>MSGIDSBL1FCCA556206A047B5A0D11C53736703A1</Or
gnlMsgId>

<OrgnlMsgNmId>pacs.008.001.06</OrgnlMsgNmId>
<OrgnlCreDtTm>10/21/21 7:50:28
AM</OrgnlCreDtTm>
<GrpSts>ACSP</GrpSts>
<StsRsnInf>
Page 18 of 85
Participant V2.2 Change Management Guide

<Rsn>
<Prtry/>
</Rsn>
<AddtlInf/>
</StsRsnInf>
</OrgnlGrpInfAndSts>
<TxInfAndSts>

<OrgnlInstrId>INSTRIDSBL1FCCA556206A047B5A0D11C53736703A1
</OrgnlInstrId>

<OrgnlEndToEndId>ENDTOENDIDSBL1FCCA556206A047B5A0D11C5373
6703A1</OrgnlEndToEndId>

<OrgnlTxId>TXIDSBL1FCCA556206A047B5A0D11C53736703A1</Orgn
lTxId>
<TxSts>ACSP</TxSts>
<StsRsnInf>
<Rsn>
<Prtry/>
</Rsn>
</StsRsnInf>
<InstgAgt>
<FinInstnId>
<BICFI>IDTP</BICFI>
</FinInstnId>
</InstgAgt>
<InstdAgt>
<FinInstnId>
<BICFI>SBL1BDDH</BICFI>
</FinInstnId>
</InstdAgt>
<OrgnlTxRef>
<IntrBkSttlmDt>2021-21-
10</IntrBkSttlmDt>
<IntrBkSttlmAmt
Ccy="BDT">100</IntrBkSttlmAmt>
</OrgnlTxRef>
<ChrgsInf>
<Amt Ccy="BDT">0.0</Amt>
<Agt>
<FinInstnId>
<BICFI>IDTP</BICFI>
<Nm>idtp@gov.idtp</Nm>
</FinInstnId>
</Agt>
Page 19 of 85
Participant V2.2 Change Management Guide

</ChrgsInf>
</TxInfAndSts>
<SplmtryData>
<PlcAndNm/>
<Envlp>
<ChannelInfo>

<ChannelID>Online</ChannelID>
</ChannelInfo>
<Tx_Tracking_Info>
<RefNo_SendingPSP/>

<RefNo_SendingBank>REFNOSBL16BF010FCB4994C4A8286B542612BD
D01</RefNo_SendingBank>

<RefNo_ReceivingBank>SBL2BDDH20211021075032758</RefNo_Rec
eivingBank>
<RefNo_ReceivingPSP/>

<RefNo_IDTP>1001520211021258838555</RefNo_IDTP>
</Tx_Tracking_Info>

<Amount_Debited>100</Amount_Debited>

<Amount_Credited>100</Amount_Credited>

<Amount_Charged_Fees>0.0</Amount_Charged_Fees>

<Amount_Charged_VAT>0.0</Amount_Charged_VAT>

<IDTP_Status_Code>200</IDTP_Status_Code>

<IDTP_Status_Msg>SUCCESS</IDTP_Status_Msg>
</Envlp>
</SplmtryData>
</FIToFIPmtStsRpt>
</Document>
</Body>
</DataPDU>

Page 20 of 85
Participant V2.2 Change Management Guide

v. GetRTPsbyFI()

This API is newly added in V2.2. This API will be used to get the RTPs initiated
from or received by this FI.

Method Name: GetRTPsbyFI

Uri: https://$root/GetRTPsbyFI

Method Type: POST

Description: Invoked by core banking system to get the list of RTP.

Parameters: The Request body element contains the below input parameters. A
sample XML is provided below for getting list of RTP and a sample table provided for
the XML response which defines the success and failure response.

Request Flow

1. The FI will call this GetRTPsbyFI API when it needs to know the list of
RTP.

API Request:

Input Parameters List:

Serial Parameter Name


1 Channel Info
2 User Info
3 Date Range
4 RTP Info
5 Page Size

Sample API Request:

<GetRTPsbyFI
xmlns:idtp="http://idtp.gov.bd/xxx/schema/">
<Head ver="1.0" ts="2020-05-16T14:15:43+05:30"
orgId="SAMPLESWIFTCODE" msgId="1"/>

Page 21 of 85
Participant V2.2 Change Management Guide

<Req id="8ENSVVR4QOS7X1UGPY7JGUV444PL9T2C3QM" note="Get


RTPs by FI" ts="2020-05-16T14:15:42+05:30"
type="GETRTPSBYFI"/>
<ChannelInfo>
<ChannelID>Mobile/Others</ChannelID>
</ChannelInfo>
<IDTPUserInfo>
<DeviceInfo>
<Device_ID/>
<Mobile_No/>
<Location/>
<IP/>
</DeviceInfo>
<FIInfo>
<UserVID value="sampleFI@fin.idtp"/>
<FromDate>2020-03-23</FromDate>
<ToDate>2021-09-25</ToDate>

<RTPStatus>Accepted/Rejected/Pending/Expired</RTPStatus>
<PageNumber>1</PageNumber>
<PageSize>10</PageSize>
</FIInfo>
<OtherInfo/>
</IDTPUserInfo>
</GetRTPsbyFI>

Page 22 of 85
Participant V2.2 Change Management Guide

API Response:

Type Success Failed


Message < GetRTPsbyFIResponse> <GetRTPsbyFIResponse >
<Code>200</Code> <Code>90825</Code>
<Message>
<Message>Success</Message> Invalid Financial Institution
<RTP seqNum="1"> </Message>
<ReqID> </GetRTPsbyFIResponse>

RTPIDTP20210919154105911
</ReqID>
<SenderVID>

testuser01@user.idtp
</SenderVID>
<ReceiverVID>

testuser02@user.idtp
</ReceiverVID>

<ResponseTime>2021-09-
19 21:41:55
</ResponseTime>
<Reference>
test</Reference>

<Amount>20</Amount>
<Status>Rejected
</Status>
</RTP>
</GetRTPsbyFIResponse>

Page 23 of 85
Participant V2.2 Change Management Guide

vi. GetTransactionVAT()

This API is newly added in V2.2. This API will be used to get the VAT for the
transaction.

Method Name: GetTransactionVAT

Uri: https://$root/GetTransactionVAT

Method Type: POST

Description: Invoked by core banking system to get the VAT of the transaction.

Parameters: The Request body element contains the below input parameters. A
sample XML is provided below for getting the VAT and a sample table provided for
the XML response which defines the success and failure response.

Request Flow

1. The FI will call this GetTransactionVAT API when it needs to know the
VAT of the Transaction.

API Request:

Input Parameters List:

Serial Parameter Name


1 Channel Info
2 User Info
3 Transaction Info

Sample API Request:

<GetTransactionVAT
xmlns:idtp="http://idtp.gov.bd/xxx/schema/">
<Head ver="1.0" ts="10/4/2021 5:35:56 AM" orgId=""
msgId="1" />
<Req id="8ENSVVR4QOS7X1UGPY7JGUV444PL9T2C3QM" note="Get
Transaction VAT" ts="2020-05-16T14:15:42+05:30"
type="GetTransactionVAT" />
<ChannelInfo>
<ChannelID>Online</ChannelID>
</ChannelInfo>
Page 24 of 85
Participant V2.2 Change Management Guide

<ReqInfo>
<DeviceInfo>
<Device_ID></Device_ID>
<Mobile_No></Mobile_No>
<Location></Location>
<IP></IP>
</DeviceInfo>
<UserInfo>
<UserVID value="sampleuser@biz.idtp" />
</UserInfo>
<TransactionInfo>
<EntityType>Business</EntityType>
<Amount value="100.20" />
</TransactionInfo>
<OtherInfo />
<Creds>
<Cred type="IDTP_PIN" subtype="">
<Data></Data>
</Cred>
</Creds>
</ReqInfo>
</GetTransactionVAT>

Page 25 of 85
Participant V2.2 Change Management Guide

API Response:

Type Success Failed


Message <GetTransactionVATRespon <GetTransactionVATResponse>
se> <Code>90106</Code>
<Code>200</Code> <Message>
Invalid Transaction Amount
<Message>Success</Messag format
e> </Message>
<VATInfo> </GetTransactionVATResponse>

<Amount>15.03</Amount>
</VATInfo>
</GetTransactionVATRespo
nse>

Page 26 of 85
Participant V2.2 Change Management Guide

vii. ProcessFIToFIFundTransferRequest()

This API is newly added in V2.2. This API will be used to Process Transfer Fund
Request in Receiver FI from FI to FI (Inter FI Fund Transfer).

Method Name: ProcessFIToFIFundTransferRequest

Uri: https://$root/ProcessFIToFIFundTransferRequest

Method Type: POST

Description: Invoked by IDTP to process FI to FI transfer fund request in receiver FI.

Parameters: A sample request XML and a sample response XML is provided below
for ProcessFIToFIFundTransferRequest.

Request Flow

1. IDTP will call ProcessFIToFIFundTransferRequest to process FI to FI fund


transfer request in receiver FI.

API Request:

Input Parameters List:


Serial Parameter Name Tag
1 From DataPDU
+Body
++AppHdr
+++Fr
++++FIId
+++++ FinInstnId
++++++ BICFI
2 To DataPDU
+Body
++AppHdr
+++To
++++FIId
+++++ FinInstnId
++++++ BICFI
3 Message ID DataPDU
+Body
++Document
+++FICdtTrf
++++GrpHdr
+++++MsgId

Page 27 of 85
Participant V2.2 Change Management Guide

4 Time DataPDU
+Body
++Document
+++FICdtTrf
++++GrpHdr
+++++CreDtTm
5 End to End ID DataPDU
+Body
++Document
+++FICdtTrf
++++CdtTrfTxInf
+++++PmtId
++++++EndToEndId
6 Transaction ID DataPDU
+Body
++Document
+++FICdtTrf
++++CdtTrfTxInf
+++++PmtId
++++++TxId
7 Amount DataPDU
+Body
++Document
+++FICdtTrf
++++CdtTrfTxInf
+++++ IntrBkSttlmAmt
8 Instructing Agent DataPDU
+Body
++Document
+++FICdtTrf
++++CdtTrfTxInf
+++++InstgAgt
++++++FinInstnId
+++++++BICFI
9 Instructed Agent DataPDU
+Body
++Document
+++FICdtTrf
++++CdtTrfTxInf
+++++InstdAgt
++++++FinInstnId
+++++++BICFI

10 Sender Account No. DataPDU


+Body
++Document
+++FICdtTrf
++++CdtTrfTxInf
Page 28 of 85
Participant V2.2 Change Management Guide

+++++DbtrAcct
++++++Id
+++++++Othr
++++++++Id
11 Receiver Account No. DataPDU
+Body
++Document
+++FICdtTrf
++++CdtTrfTxInf
+++++CdtrAcct
++++++Id
+++++++Othr
++++++++Id
12 Purpose DataPDU
+Body
++Document
+++FICdtTrf
++++CdtTrfTxInf
+++++Purp
++++++Prtry
13 IDTP Reference No. DataPDU
+Body
++Document
+++FICdtTrf
++++SplmtryData
+++++Envlp
++++++Tx_Tracking_Info
+++++++RefNo_IDTP
14 Sending Bank Reference No. DataPDU
+Body
++Document
+++FICdtTrf
++++SplmtryData
+++++Envlp
++++++Tx_Tracking_Info
+++++++RefNo_SendingBank

Page 29 of 85
Participant V2.2 Change Management Guide

Sample API Request:


<?xml version="1.0" encoding="utf-8"?>
<DataPDU xmlns="urn:swift:saa:xsd:saa.2.0">
<Revision>2.0.5</Revision>
<Body>
<AppHdr
xmlns="urn:iso:std:iso:20022:tech:xsd:head.001.001.01">
<Fr>
<FIId>
<FinInstnId>
<BICFI>IDTP</BICFI>
</FinInstnId>
</FIId>
</Fr>
<To>
<FIId>
<FinInstnId>
<BICFI>SBL1BDDH</BICFI>
</FinInstnId>
</FIId>
</To>
<BizMsgIdr>TXID520211019163877278</BizMsgIdr>
<MsgDefIdr>pacs.009.001.04</MsgDefIdr>
<BizSvc>IDTP</BizSvc>
<CreDt>10/21/21 12:22:47 PM</CreDt>
</AppHdr>
<Document
xmlns="urn:iso:std:iso:20022:tech:xsd:pacs.009.001.04">
<FICdtTrf>
<GrpHdr>
<MsgId>MSGbca021dd-54e3-4243-89f2-
7b94aa813dac</MsgId>
<CreDtTm>2021-10-
21T12:22:52</CreDtTm>
<NbOfTxs>1</NbOfTxs>
<SttlmInf>
<SttlmMtd>RTGS</SttlmMtd>
</SttlmInf>
</GrpHdr>
<CdtTrfTxInf>
<PmtId>
<InstrId>INSTRe699ece4-4094-
43d8-8267-da98f6bf89e8</InstrId>
<EndToEndId>ETOE001c79ec-f5fe-
45b5-9e43-553f8eed2006</EndToEndId>

<TxId>TXID520211019163877278</TxId>
</PmtId>

Page 30 of 85
Participant V2.2 Change Management Guide

<PmtTpInf>
<ClrChanl>IDTP</ClrChanl>
</PmtTpInf>
<IntrBkSttlmAmt
Ccy="BDT">100</IntrBkSttlmAmt>
<ChrgBr>SHAR</ChrgBr>
<InstgAgt>
<FinInstnId>
<BICFI>IDTP</BICFI>
</FinInstnId>
</InstgAgt>
<InstdAgt>
<FinInstnId>
<BICFI>SBL1BDDH</BICFI>
</FinInstnId>
</InstdAgt>
<Dbtr>
<Nm>Sample Bank 1</Nm>
</Dbtr>
<DbtrAcct>
<Id>
<Othr>
<Id>1578920211234</Id>
</Othr>
</Id>
</DbtrAcct>
<DbtrAgt>
<FinInstnId>
<BICFI>SBL1BDDH</BICFI>
</FinInstnId>
</DbtrAgt>
<CdtrAgt>
<FinInstnId>
<BICFI>SBL2BDDH</BICFI>
</FinInstnId>
</CdtrAgt>
<Cdtr>
<Nm>Sample Bank 2</Nm>
</Cdtr>
<CdtrAcct>
<Id>
<Othr>

<Id>ABCD1515515101</Id>
</Othr>
</Id>
</CdtrAcct>
<Purp>
<Prtry>TEST ISO</Prtry>
</Purp>
Page 31 of 85
Participant V2.2 Change Management Guide

</CdtTrfTxInf>
<SplmtryData>
<PlcAndNm/>
<Envlp>
<Tx_Tracking_Info>
<RefNo_SendingPSP/>
<RefNo_SendingBank>
REFNOSBL1E1E48598277E44B29CA66764CD978D58
</RefNo_SendingBank>
<RefNo_ReceivingBank/>
<RefNo_ReceivingPSP/>

<RefNo_IDTP>TXID520211019163877278</RefNo_IDTP>
</Tx_Tracking_Info>
</Envlp>
</SplmtryData>
</FICdtTrf>
</Document>
</Body>
</DataPDU>

Sample API Response:


<?xml version="1.0" encoding="utf-8"?>
<DataPDU xmlns="urn:swift:saa:xsd:saa.2.0">
<Revision>2.0.5</Revision>
<Body>
<AppHdr
xmlns="urn:iso:std:iso:20022:tech:xsd:head.001.001.01">
<Fr>
<FIId>
<FinInstnId>
<BICFI>SBL2BDDH</BICFI>
</FinInstnId>
</FIId>
</Fr>
<To>
<FIId>
<FinInstnId>
<BICFI>IDTP</BICFI>
</FinInstnId>
</FIId>
</To>

<BizMsgIdr>MSGIDSBL1FCCA556206A047B5A0D11C53736703A1</Biz
MsgIdr>
Page 32 of 85
Participant V2.2 Change Management Guide

<MsgDefIdr>pacs.002.001.05</MsgDefIdr>
<BizSvc>IDTP</BizSvc>
<CreDt>2021-10-21T13:50:32Z</CreDt>
</AppHdr>
<Document
xmlns="urn:iso:std:iso:20022:tech:xsd:pacs.002.001.05">
<FIToFIPmtStsRpt>
<GrpHdr>

<MsgId>MSGIDSBL1FCCA556206A047B5A0D11C53736703A1</MsgId>
<CreDtTm>2021-10-
21T13:50:32</CreDtTm>
</GrpHdr>
<OrgnlGrpInfAndSts>

<OrgnlMsgId>MSGIDSBL1FCCA556206A047B5A0D11C53736703A1</Or
gnlMsgId>

<OrgnlMsgNmId>pacs.008.001.06</OrgnlMsgNmId>
<OrgnlCreDtTm>2021-10-
21T13:50:30</OrgnlCreDtTm>
<GrpSts>ACSP</GrpSts>
<StsRsnInf>
<Rsn>
<Prtry/>
</Rsn>
<AddtlInf/>
</StsRsnInf>
</OrgnlGrpInfAndSts>
<TxInfAndSts>

<OrgnlInstrId>1001520211021258838555</OrgnlInstrId>

<OrgnlEndToEndId>ENDTOENDIDSBL1FCCA556206A047B5A0D11C5373
6703A1</OrgnlEndToEndId>

<OrgnlTxId>1001520211021258838555</OrgnlTxId>
<TxSts>ACSP</TxSts>
<StsRsnInf>
<Rsn>
<Prtry/>
</Rsn>
</StsRsnInf>
<InstgAgt>
<FinInstnId>
<BICFI>SBL2BDDH</BICFI>
Page 33 of 85
Participant V2.2 Change Management Guide

</FinInstnId>
</InstgAgt>
<InstdAgt>
<FinInstnId>
<BICFI>IDTP</BICFI>
</FinInstnId>
</InstdAgt>
<OrgnlTxRef>
<IntrBkSttlmDt>2021-10-
21</IntrBkSttlmDt>
<IntrBkSttlmAmt
Ccy="BDT">98.14</IntrBkSttlmAmt>
</OrgnlTxRef>
</TxInfAndSts>
<SplmtryData>
<PlcAndNm/>
<Envlp>
<Tx_Tracking_Info>
<RefNo_SendingPSP/>

<RefNo_SendingBank>REFNOSBL16BF010FCB4994C4A8286B542612BD
D01</RefNo_SendingBank>

<RefNo_ReceivingBank>SBL2BDDH20211021075032758</RefNo_Rec
eivingBank>
<RefNo_ReceivingPSP/>

<RefNo_IDTP>1001520211021258838555</RefNo_IDTP>
</Tx_Tracking_Info>
</Envlp>
</SplmtryData>
</FIToFIPmtStsRpt>
</Document>
</Body>
</DataPDU>

Page 34 of 85
Participant V2.2 Change Management Guide

viii. RegisterIDTPUser()

The following xml tag parameters are added in the API’s request body (Marked in the
sample request body):

Serial Parameter Name Data Type Validation


1 AccountInfo Node FI Accounts Related Info
2 Is Global Default Credit bool Possible Values-
Account 0,1
3 Is Global Default RTP bool Possible Values-
Account 0,1
4 Is FI Default Debit bool Possible Values-
Account 0,1

The following xml tag parameters are removed from the API’s request body:

Serial Parameter Name Data Type Validation


1 Financial Institution Info Node FI Accounts Related Info
2 Financial Institution string Possible Values -
Financial Institution Name
3 Branch Name string Possible Values-
Branch Name

Note: If the user initiates the request using the Android SDK, the value passed in the
<Creds> section will be encrypted. If the SDK is not used this tag needs to be passed
the following way.

Please also note that Channel Info tag has been taken outside of Entity Tag.

Page 35 of 85
Participant V2.2 Change Management Guide

Sample API Request - Individual:

<RegisterUser xmlns:idtp="http://idtp.gov.bd/xxx/schema/">
<Head ver="1.0" ts="2020-05-16T14:15:43+05:30"
orgId="SAMPLESWIFTCODE" msgId="1" />
<Req id="8ENSVVR4QOS7X1UGPY7JGUV444PL9T2C3QM"
note="Register User"
ts="2020-05-16T14:15:42+05:30" type="RegisterUser"/>
<ChannelInfo>
<ChannelID>Mobile/Others</ChannelID>
</ChannelInfo>
<Entity seqNum="1">
<Info>
<EntityType>Individual</EntityType>
<Name> Sample User </Name>
<AddressLine1> Dhaka </AddressLine1>
<AddressLine2> Bangladesh </AddressLine2>
<District> Dhaka </District>
<PostalCode>1200</PostalCode>
<MobileNumber>017112345678</MobileNumber>
<Email> user@abc.com </Email>
<TypeOfOwnership></TypeOfOwnership>
<TypeOfBusiness></TypeOfBusiness>
<NameOfMinistry></NameOfMinistry>
<NameOfDivision></NameOfDivision>
<TypeOfFinancialInstitution></TypeOfFinancialInstitutio
n>
<SwiftCode></SwiftCode>
<CBAccountNumber></CBAccountNumber>
<NID>41231231412421</NID>
<TIN>532153131</TIN>
<BIN></BIN>
<Password>XXXXX</Password>
<DateOfBirth>12/1/1990</DateOfBirth>
</Info>
<DeviceInfo>
<Device_ID>
ywGIQCW9RWD09JaXjOHeQdhWhMJcAvhSanrdzxLACH/zHPAy83dEaGsMZB0
V4wWOyxJVwu8ERN0Fou+mp7Os8jnv1ZVkvxkt5NhzY2CvhKcIcIgKzgX5Ln
F/VuPlXAcq7kKofVsrYxE2E8OKyJnIPUo39jNxqn5z8HemSze8TVngnCitH
Cu/vKZTti9e9qV7wdJhiNiiDM/PHVRj8/1cQbiXbxR8cSpOhNJqFoJW2xaS
gqCw3Bpm8QkO5iQEpHOOaGHVPl36tZcdeHTGSQ==,Tpj8Mq0zz+9mmuV804
TkOQ==1
</Device_ID>
<Mobile_No>NF</Mobile_No>
<Location>244428356.907847857</Location>
<IP>192.168.0.102</IP>
</DeviceInfo>
<AccountInfo>
<RoutingNumber>345678912</RoutingNumber>
<AccountNumber>1987634915628</AccountNumber>

Page 36 of 85
Participant V2.2 Change Management Guide

<Alias>samplealias</Alias>
<IsGlobalDefaultCreditAccount>1</IsGlobalDefaultCreditAccou
nt>

<IsGlobalDefaultRTPAccount>1</IsGlobalDefaultRTPAccount>
<IsFIDefaultDebitAccount>1</IsFIDefaultDebitAccount>
</AccountInfo>
<ContactReference>
<ContactPersonName></ContactPersonName>
<Designation></Designation>
<ContactNumber></ContactNumber>
<Email></Email>
</ContactReference>
<Creds>
<Cred type="IDTP_PIN" subtype="">
<Data>…</Data>
</Cred>
<Cred type="APP_PASS" subtype="">
<Data>…</Data>
</Cred>
</Creds>
<RequestedVirtualID value="sampleUser@user.idtp" />
<OtherInfo>
<Call_From>IDTPApp/FIApp/SWIFTCODE-
WhiteLabelApp</Call_From>
</OtherInfo>
</Entity>
</RegisterUser>

Page 37 of 85
Participant V2.2 Change Management Guide

API Response:
The following xml tag parameters are added in the API’s response body (Marked in the
sample response body):

Type Success Failed


Message < RegisterUserResponse> <RegisterUserResponse>
<Code>200</Code> <Code>90805</Code>
<Message>Registration <Message>Registration failed
Successful for one or more
</Message> user(s)</Message>
<NewlyRegisteredUserList />
<NewlyRegisteredUserList> <AlreadyRegisteredUserList />
<NotRegisteredUserList>
<NewlyRegisteredUserInfo <NotRegisteredUserInfo
seqNum="1"> seqNum="1">
<VirtualID>sampleUser@user
.idtp <VirtualID>sampleUser@user.idtp
</VirtualID> @user.idtp</VirtualID>
<Status>1</Status> <Status>0</Status>
<Code>200</Code> <Code>90116</Code>
<Reason>Registration <Reason>Invalid
Successful for Accounts: VID</Reason>
00000000000011,00000000000 </NotRegisteredUserInfo>
00012, Existing Accounts: </NotRegisteredUserList>
N/A, FI Non-Certified </RegisterUserResponse>
Accounts: N/A
</Reason>

</NewlyRegisteredUserInfo>

</NewlyRegisteredUserList>

<AlreadyRegisteredUserList
/>
<NotRegisteredUserList
/>
</RegisterUserResponse>

Page 38 of 85
Participant V2.2 Change Management Guide

ix. ResetIDTPPIN()

The following xml tag parameters are modified in the API’s request body (Marked
in the sample request body):

Note: As the request will be initiated using the Android SDK, the value passed in the
<Device_ID> tag will be encrypted by the Android SDK only. FI needs to make sure
that the value return from Android SDK is correctly passed into <Device_ID> Tag.

API Request:

Input Parameters List:

Serial Parameter Name Data Type Validation


1 Device Info string The Value returned by Android
SDK
2 PIN Info string Any random value

Sample API Request

<ResetIDTPPIN
xmlns:idtp="http://idtp.gov.bd/xxx/schema/">
<Head ver="1.0" ts="11/2/2020 4:20:34 PM"
orgId="SAMPLESWIFTCODE" msgId="1" />
<Req id="68677b3f-0858-4aba-8ca7-6ce27624936a"
note="Reset IDTP PIN" ts="11/2/2020 4:20:34 PM"
type="RESETIDTPPIN" />
<ChannelInfo>
<ChannelID>Mobile/Others</ChannelID>
</ChannelInfo>
<DeviceInfo>
<Device_ID>
reTjzQed2xqJ2XoyTo3My/265cxUwZltcBT5L/AnWI58V227SXru
1J8VHOd5xY18G5D0Yg==,AoJI2cNL5xikvVrCDscc4A==1||11/2
/2020 4:20:34 PM||
237885326.904355275||192.168.203.198||01700000000
</Device_ID>
<Mobile_No></Mobile_No>
<Location></Location>
<IP></IP>
</DeviceInfo>
<UserInfo>
<VID>sampleuser@user.idtp</VID>
<PINInfo>XXXXXX</PINInfo>
</UserInfo>
</ResetIDTPPIN>

Page 39 of 85
Participant V2.2 Change Management Guide

API Response:

Type Success Failed


Message <ResetIDTPPINResponse> <ResetIDTPPINResponse>
<Code>200</Code> <Code>90054</Code>
<Message>Success</Message> <Message>Invalid User IDTP
<VID>sampleuser@user.idtp< PIN</Message>
/VID> <VID>sampleuser@user.idtp</VID>
</ResetIDTPPINResponse> </ResetIDTPPINResponse>

Page 40 of 85
Participant V2.2 Change Management Guide

x. GetIDTPClockTime()

SeqNum is added in in the API’s response body for ICP, however FI will use
ClockTime Tag (Now, the clock time is returned in user readable format, No ‘T/Z’ in
time) like earlier to sync time with IDTP (Marked in the sample response body):

API Response:

Type Success Failed


Message <GetIDTPClockTimeResponse> <GetIDTPClockTimeResponse>
<Code>90900</status>
<Code>200</Code> <Message>
<Message>Success</Messag Invalid Request
e> </Message>
<ClockTime> <ClockTime/>
2020-12-30 18:24:48.933 </GetIDTPClockTimeResponse>
</ClockTime>
<SeqNum>734943430032584
</SeqNum>
</GetIDTPClockTimeResponse
>

Page 41 of 85
Participant V2.2 Change Management Guide

xi. SetDefaultAccount()

The following xml tag parameter is added in the API’s request body (Marked in the
sample request body):

Serial Parameter Name Data Type Validation


1 ChangeType Int 1/2/3

Note:
ChangeType = 1 is for setting the requested account as Default Credit Account
ChangeType = 2 is for setting the requested account as Default RTP Receiving
Account
ChangeType = 3 is for setting the requested account as Default Debit Account
ChangeType = 4 is for setting the requested account as Default Debit Account,
Default Credit Account, and Default RTP Receiving Account – all Defaults at one go
for a single account.

So, When SetDefaultAccount API is invoked, the IDTP Server will have to read the tag
<ChangeType> and Based on the value of the Tag it will reset the account.

Sample API Request

<SetDefaultAccount
xmlns:idtp="http://idtp.gov.bd/xxx/schema/">
<Head ver="1.0" ts="2020-05-16T14:15:43+05:30"
orgId="SAMPLESWIFTCODE" msgId="1"></Head>
<Req id="8ENSVVR4QOS7X1UGPY7JGUV444PL9T2C3QM" note="Set
Default Account" ts="2020-05-16T14:15:42+05:30"
type="SETDEFAULTACCOUNT" ></Req>
<ChannelInfo>
<ChannelID>Mobile/Others</ChannelID>
</ChannelInfo>
<IDTPUserInfo vid="sampleUser@user.idtp">
<DeviceInfo>
<Device_ID></Device_ID>
<Mobile_No></Mobile_No>
<Location></Location>
<IP></IP>
Page 42 of 85
Participant V2.2 Change Management Guide

</DeviceInfo>
<AccountInfo>
<ChangeType>1</ChangeType>
<FIName value="sampleFI@fin.idtp"></FIName>
<RoutingNo value="972556622"></RoutingNo>
<AccountNo value="14355323432343234"></AccountNo>
</AccountInfo>
<OtherInfo></OtherInfo>
</IDTPUserInfo>
</SetDefaultAccount>

API Response:

Type Success Failed


Message <SetDefaultAccountResponse>
<SetDefaultAccountResponse <Code>90127</Code>
> <Message>Invalid Routing No
<Code>200</Code> </Message>
</SetDefaultAccountResponse>
<Message>Success</Message>

<AccountNo>812654317423513
13
</AccountNo>
</SetDefaultAccountRespons
e>

Page 43 of 85
Participant V2.2 Change Management Guide

xii. GetTransactionsbyFI()

FeeAmount & VatAmount Tags are added in the API’s response body along with the
Transaction Amount (Marked in the sample response body):

API Response:

Type Success Failed


Message <GetTransactionsByFIRespon <GetTransactionsByFIResponse>
se> <Code>90127</Code>
<Code>200</Code> <Message>Invalid Routing No
</Message>
<Message>Success</Message> </GetTransactionsByFIResponse>
<Transaction>
<TransactionId>

1002520210922834903192
</TransactionId>
<TxnType>Direct
Pay
</TxnType>
<TxnDate>2021-09-
22

00:31:59</TxnDate>
<Sender>

sampleUser2@user.idtp
</Sender>
<SendingAcc>
SBL20000000001
</SendingAcc>
<SenderFI>Sample
Bank 2
</SenderFI>
<Receiver>

sampleUser1@user.idtp
</Receiver>
<ReceivingAcc>
1000000000232
</ReceivingAcc>
<ReceiverFI>
Sample Bank 1
</ReceiverFI>
<Purpose>
Page 44 of 85
Participant V2.2 Change Management Guide

zsdczsd</Purpose>
<Amount>123.0000
</Amount>
<FeeAmount>2.4600
</FeeAmount>
<VatAmount>0.0000
</VatAmount>
<SequenceNumber>1
</SequenceNumber>

<Settled>Y</Settled>
<TxnStatus>S
</TxnStatus>
<SendingBankRefNo>
Zsxcfzf

</SendingBankRefNo>
<SendingPSPRefNo
/>
<ReceivingBankReference>

SPSP120210921183159414

</ReceivingBankReference>

<ReceivingPSPReference />
<IDTPReference>

1002520210922834903192
</IDTPReference>
<SettlementDate>
2021-09-22
12:46:00.0000000
</SettlementDate>
</Transaction>
</GetTransactionsByFIRespo
nse>

Page 45 of 85
Participant V2.2 Change Management Guide

xiii. GetTransactionsbyUser()

FeeAmount & VatAmount Tags are added in the API’s response body along with the
Transaction Amount (Marked in the sample response body):

API Response:

Type Success Failed


Message <GetTransactionsbyUserResp <GetTransactionsByFIResponse>
onse> <Code>90820</Code>
<Code>200</Code> <Message>Invalid Virtual ID
</Message>
<Message>Success</Message> </GetTransactionsByFIResponse>
<Transaction>
<TransactionId>

1002520210922834903192
</TransactionId>
<TxnType>Direct
Pay
</TxnType>
<TxnDate>2021-09-
22

00:31:59</TxnDate>
<Sender>

sampleUser2@user.idtp
</Sender>
<SendingAcc/>
<SenderFI/>
<Receiver>

sampleUser1@fin.idtp
</Receiver>
<ReceivingAcc>
1000000000232
</ReceivingAcc>
<ReceiverFI>
Sample Bank 1
</ReceiverFI>
<Purpose>
zsdczsd</Purpose>
<Amount>123.0000
</Amount>
<FeeAmount>2.4600

Page 46 of 85
Participant V2.2 Change Management Guide

</FeeAmount>
<VatAmount>0.0000
</VatAmount>
<SequenceNumber>1
</SequenceNumber>
</Transaction>
</GetTransactionsbyUserRes
pons>

Page 47 of 85
Participant V2.2 Change Management Guide

xiv. RegisterDevice()

The following xml tag parameters are modified in the API’s request body (Marked
in the sample request body):

Note: As the request will be initiated using the Android SDK, the value passed in
the <Device_ID> tag will be encrypted by the Android SDK only. Fi needs to
make sure that the value return from Android SDK is correctly passed into
<Device_ID> Tag.

API Request:

Input Parameters List:

Serial Parameter Name Data Type Validation


1 Device Info string The Value returned by Android
SDK
2 Device ID Info string Any random value

Sample API Request


< RegisterDevice
xmlns:idtp="http://idtp.gov.bd/xxx/schema/">
<Head ver="1.0" ts="2021-08-19 17:45:31.263"
orgId="SAMPLESWIFTCODE" msgId= "1"/>
<Req id= "22c9e813-423d-47ed-bc94-cf6167574b3e"
note="Register Device" ts="4/20/2021 1:57:44 PM"
type="REGISTERDEVICE" />
<ChannelInfo>
<ChannelID>Mobile/Others</ChannelID>
</ChannelInfo>
<DeviceInfo>
<Device_ID>
reTjzQed2xqJ2XoyTo3My/265cxUwZltcBT5L/AnWI58V227SXru
1J8VHOd5xY18G5D0Yg==,AoJI2cNL5xikvVrCDscc4A==1||11/2
/2020 4:20:34 PM||
237885326.904355275||192.168.203.198||01700000000
</Device_ID>
<Mobile_No></Mobile_No>
<Location></Location>
<IP></IP>
<DeviceInfo/>
<UserInfo>
<VID>sampleUser@user.idtp</VID>
<DeviceIDInfo>XXXXXX</DeviceIDInfo>
</UserInfo>
</RegisterDevice>

Page 48 of 85
Participant V2.2 Change Management Guide

API Response:

Type Success Failed


Message <RegisterDeviceResponse> <RegisterDeviceResponse>
<Code>200</Code> <Code>90147</Code>
<Message>Success</Message> <Message>Invalid Device ID
</RegisterDeviceResponse> </Message>
</RegisterDeviceResponse>

Page 49 of 85
Participant V2.2 Change Management Guide

xv. ProcessFundTransferRequest() Req/Resp Modifications

There are some segments added to define the instructing agent and instructed
agent (Marked below)

Sample API Request:


<?xml version="1.0" encoding="utf-8"?>
<DataPDU xmlns="urn:swift:saa:xsd:saa.2.0">
<Revision>2.0.5</Revision>
<Body>
<AppHdr
xmlns="urn:iso:std:iso:20022:tech:xsd:head.001.001.01">
<Fr>
<FIId>
<FinInstnId>
<BICFI>IDTP</BICFI>
</FinInstnId>
</FIId>
</Fr>
<To>
<FIId>
<FinInstnId>
<BICFI>SBL2BDDH</BICFI>
</FinInstnId>
</FIId>
</To>
<BizMsgIdr>1001520211021258838555</BizMsgIdr>
<MsgDefIdr>pacs.008.001.06</MsgDefIdr>
<BizSvc>IDTP</BizSvc>
<CreDt>10/21/21 7:50:28 AM</CreDt>
</AppHdr>
<Document
xmlns="urn:iso:std:iso:20022:tech:xsd:pacs.008.001.06">
<FIToFICstmrCdtTrf>
<GrpHdr>

<MsgId>MSGIDSBL1FCCA556206A047B5A0D11C53736703A1</MsgId>
<CreDtTm>2021-10-
21T13:50:30</CreDtTm>
<NbOfTxs>1</NbOfTxs>

<TtlIntrBkSttlmAmt>98.14</TtlIntrBkSttlmAmt>
<IntrBkSttlmDt>2021-10-
21</IntrBkSttlmDt>
<SttlmInf>
<SttlmMtd>RTGS</SttlmMtd>
Page 50 of 85
Participant V2.2 Change Management Guide

</SttlmInf>
</GrpHdr>
<CdtTrfTxInf>
<PmtId>

<InstrId>1001520211021258838555</InstrId>

<EndToEndId>ENDTOENDIDSBL1FCCA556206A047B5A0D11C53736703A
1</EndToEndId>

<TxId>1001520211021258838555</TxId>
</PmtId>
<PmtTpInf>
<ClrChanl>IDTP</ClrChanl>
</PmtTpInf>
<IntrBkSttlmAmt
Ccy="BDT">98.14</IntrBkSttlmAmt>
<ChrgBr>SHAR</ChrgBr>
<InstgAgt>
<FinInstnId>
<BICFI>IDTP</BICFI>
</FinInstnId>
</InstgAgt>
<InstdAgt>
<FinInstnId>
<BICFI>SBL2BDDH</BICFI>
</FinInstnId>
</InstdAgt>
<Dbtr>
<Nm>Test User 01</Nm>
</Dbtr>
<DbtrAcct>
<Id>
<Othr>

<Id>9182918291852918256</Id>
</Othr>
</Id>
</DbtrAcct>
<DbtrAgt>
<FinInstnId>
<BICFI>SBL1BDDH</BICFI>
</FinInstnId>
</DbtrAgt>
<CdtrAgt>
<FinInstnId>
Page 51 of 85
Participant V2.2 Change Management Guide

<BICFI>SBL2BDDH</BICFI>
</FinInstnId>
</CdtrAgt>
<Cdtr>
<Nm>Sample User Direct 2</Nm>
</Cdtr>
<CdtrAcct>
<Id>
<Othr>

<Id>SBL20000000001</Id>
</Othr>
</Id>
</CdtrAcct>
<Purp>
<Prtry>TEST ISO</Prtry>
</Purp>
</CdtTrfTxInf>
<SplmtryData>
<PlcAndNm/>
<Creds>
<Cred type="IDTP_PIN"
subtype="">
<Data></Data>
</Cred>
</Creds>
<Envlp>
<TxnType>DirectPay</TxnType>
<Tx_Tracking_Info>
<RefNo_SendingPSP/>

<RefNo_SendingBank>REFNOSBL16BF010FCB4994C4A8286B542612BD
D01</RefNo_SendingBank>
<RefNo_ReceivingBank/>
<RefNo_ReceivingPSP/>

<RefNo_IDTP>1001520211021258838555</RefNo_IDTP>
</Tx_Tracking_Info>
<MRTPaymentInfo>
<AccountNo>2220011(IF IT IS A
MRT TRANSACTION)</AccountNo>
</MRTPaymentInfo>
<RTPInfo>
<RTPID/>
</RTPInfo>
</Envlp>
Page 52 of 85
Participant V2.2 Change Management Guide

</SplmtryData>
</FIToFICstmrCdtTrf>
</Document>
</Body>
</DataPDU>

Sample API Response:


<?xml version="1.0" encoding="utf-8"?>
<DataPDU xmlns="urn:swift:saa:xsd:saa.2.0">
<Revision>2.0.5</Revision>
<Body>
<AppHdr
xmlns="urn:iso:std:iso:20022:tech:xsd:head.001.001.01">
<Fr>
<FIId>
<FinInstnId>
<BICFI>SBL2BDDH</BICFI>
</FinInstnId>
</FIId>
</Fr>
<To>
<FIId>
<FinInstnId>
<BICFI>IDTP</BICFI>
</FinInstnId>
</FIId>
</To>

<BizMsgIdr>MSGIDSBL1FCCA556206A047B5A0D11C53736703A1</Biz
MsgIdr>
<MsgDefIdr>pacs.002.001.05</MsgDefIdr>
<BizSvc>IDTP</BizSvc>
<CreDt>2021-10-21T13:50:32Z</CreDt>
</AppHdr>
<Document
xmlns="urn:iso:std:iso:20022:tech:xsd:pacs.002.001.05">
<FIToFIPmtStsRpt>
<GrpHdr>

<MsgId>MSGIDSBL1FCCA556206A047B5A0D11C53736703A1</MsgId>
<CreDtTm>2021-10-
21T13:50:32</CreDtTm>
</GrpHdr>
<OrgnlGrpInfAndSts>

Page 53 of 85
Participant V2.2 Change Management Guide

<OrgnlMsgId>MSGIDSBL1FCCA556206A047B5A0D11C53736703A1</Or
gnlMsgId>

<OrgnlMsgNmId>pacs.008.001.06</OrgnlMsgNmId>
<OrgnlCreDtTm>2021-10-
21T13:50:30</OrgnlCreDtTm>
<GrpSts>ACSP</GrpSts>
<StsRsnInf>
<Rsn>
<Prtry/>
</Rsn>
<AddtlInf/>
</StsRsnInf>
</OrgnlGrpInfAndSts>
<TxInfAndSts>

<OrgnlInstrId>1001520211021258838555</OrgnlInstrId>

<OrgnlEndToEndId>ENDTOENDIDSBL1FCCA556206A047B5A0D11C5373
6703A1</OrgnlEndToEndId>

<OrgnlTxId>1001520211021258838555</OrgnlTxId>
<TxSts>ACSP</TxSts>
<StsRsnInf>
<Rsn>
<Prtry/>
</Rsn>
</StsRsnInf>
<InstgAgt>
<FinInstnId>
<BICFI>SBL2BDDH</BICFI>
</FinInstnId>
</InstgAgt>
<InstdAgt>
<FinInstnId>
<BICFI>IDTP</BICFI>
</FinInstnId>
</InstdAgt>
<OrgnlTxRef>
<IntrBkSttlmDt>2021-10-
21</IntrBkSttlmDt>
<IntrBkSttlmAmt
Ccy="BDT">98.14</IntrBkSttlmAmt>
</OrgnlTxRef>
</TxInfAndSts>
Page 54 of 85
Participant V2.2 Change Management Guide

<SplmtryData>
<PlcAndNm/>
<Envlp>
<Tx_Tracking_Info>
<RefNo_SendingPSP/>

<RefNo_SendingBank>REFNOSBL16BF010FCB4994C4A8286B542612BD
D01</RefNo_SendingBank>

<RefNo_ReceivingBank>SBL2BDDH20211021075032758</RefNo_Rec
eivingBank>
<RefNo_ReceivingPSP/>

<RefNo_IDTP>1001520211021258838555</RefNo_IDTP>
</Tx_Tracking_Info>
</Envlp>
</SplmtryData>
</FIToFIPmtStsRpt>
</Document>
</Body>
</DataPDU>

Page 55 of 85
Participant V2.2 Change Management Guide

xvi. TransferFunds() Req/Resp Modifications

The sending FI need to provide the following two request body for
TransferFunds() and TransferFundsISO()

Sample API Request (For TransferFunds()):


<TransferFunds xmlns:idtp="http://idtp.gov.bd/xxx/schema/">
<Head ver="1.0" ts="10/25/21 7:44:10 AM" orgId="SBL1BDDH"
msgId="1"/>
<Req id="8ENSVVR4QOS7X1UGPY7JGUV444PL9T2C3QM"
note="Transfer Funds" ts="2020-05-16T14:15:42+05:30"
type="TRANSFERFUNDS"/>
<ChannelInfo>
<ChannelID>Online</ChannelID>
</ChannelInfo>
<TransactionInfo addr="" type="">
<SenderInfo>
<SenderVID value="testuser01@user.idtp"/>
</SenderInfo>
<DeviceInfo>
<Device_ID>ABCDEF</Device_ID>
<Mobile_No>01700000000</Mobile_No>
<Location>244428356.907847857</Location>
<IP>192.168.0.101</IP>
</DeviceInfo>
<ReceiverInfo>
<ReceiverVID value="testuser02@user.idtp"/>
</ReceiverInfo>
<TxnInfo>
<ReferenceNo
value="SBL1CE9D39FA1BC34DBD84481638FA57556B"/>
<TxnAmount value="100.10"/>

<TxnData>HD9BxGHNr46fvAjqcfJP6cpHQ2uOzLo0/BYG+UvkjrI=1||1
0/25/21 7:44:10
AM||244428356.907847857||192.168.0.101||01700000000||002020</T
xnData>
</TxnInfo>
<OtherInfo>
<Purpose>test</Purpose>
<BillNo/>
</OtherInfo>
<Creds>
<Cred type="IDTP_PIN" subtype="">

Page 56 of 85
Participant V2.2 Change Management Guide

<Data>123456</Data>
</Cred>
</Creds>
</TransactionInfo>
</TransferFunds>

Sample API Request (For TransferFundsISO()):


<?xml version="1.0" encoding="utf-8"?>
<DataPDU xmlns="urn:swift:saa:xsd:saa.2.0">
<Revision>2.0.5</Revision>
<Body>
<AppHdr
xmlns="urn:iso:std:iso:20022:tech:xsd:head.001.001.01">
<Fr>
<FIId>
<FinInstnId>
<BICFI>SBL1BDDH</BICFI>
</FinInstnId>
</FIId>
</Fr>
<To>
<FIId>
<FinInstnId>
<BICFI>IDTP</BICFI>
</FinInstnId>
</FIId>
</To>

<BizMsgIdr>BIZMSGIDRSBL1FCCA556206A047B5A0D11C53736703A1<
/BizMsgIdr>
<MsgDefIdr>pacs.008.001.06</MsgDefIdr>
<BizSvc>IDTP</BizSvc>
<CreDt>10/25/21 7:43:58 AM</CreDt>
</AppHdr>
<Document
xmlns="urn:iso:std:iso:20022:tech:xsd:pacs.008.001.06">
<FIToFICstmrCdtTrf>
<GrpHdr>

<MsgId>MSGIDSBL1FCCA556206A047B5A0D11C53736703A1</MsgId>
<CreDtTm>10/25/21 7:43:58
AM</CreDtTm>
<NbOfTxs>1</NbOfTxs>

<TtlIntrBkSttlmAmt>100.10</TtlIntrBkSttlmAmt>

Page 57 of 85
Participant V2.2 Change Management Guide

<IntrBkSttlmDt>2021-10-
17</IntrBkSttlmDt>
<SttlmInf>
<SttlmMtd>RTGS</SttlmMtd>
</SttlmInf>
</GrpHdr>
<CdtTrfTxInf>
<PmtId>

<InstrId>INSTRIDSBL1FCCA556206A047B5A0D11C53736703A1</Ins
trId>

<EndToEndId>ENDTOENDIDSBL1FCCA556206A047B5A0D11C53736703A
1</EndToEndId>

<TxId>TXIDSBL1FCCA556206A047B5A0D11C53736703A1</TxId>
</PmtId>
<PmtTpInf>
<ClrChanl>IDTP</ClrChanl>
</PmtTpInf>
<IntrBkSttlmAmt
Ccy="BDT">100.10</IntrBkSttlmAmt>
<ChrgBr>SHAR</ChrgBr>
<InstgAgt>
<FinInstnId>
<BICFI>SBL1BDDH</BICFI>
</FinInstnId>
</InstgAgt>
<InstdAgt>
<FinInstnId>
<BICFI>IDTP</BICFI>
</FinInstnId>
</InstdAgt>
<Dbtr>
<Nm>testuser01@user.idtp</Nm>
</Dbtr>
<DbtrAcct>
<Id>
<Othr>
<Id/>
</Othr>
</Id>
</DbtrAcct>
<DbtrAgt>
<FinInstnId>
<BICFI/>
Page 58 of 85
Participant V2.2 Change Management Guide

</FinInstnId>
</DbtrAgt>
<CdtrAgt>
<FinInstnId>
<BICFI/>
</FinInstnId>
</CdtrAgt>
<Cdtr>
<Nm>testuser02@user.idtp</Nm>
</Cdtr>
<CdtrAcct>
<Id>
<Othr>
<Id/>
</Othr>
</Id>
</CdtrAcct>
<Purp>
<Prtry>TEST ISO</Prtry>
</Purp>
</CdtTrfTxInf>
<SplmtryData>
<PlcAndNm/>
<Envlp>
<Creds>
<Cred type="IDTP_PIN"
subtype="">
<Data>123456</Data>
</Cred>
</Creds>
<ChannelInfo>

<ChannelID>Online</ChannelID>
</ChannelInfo>
<Device_Info>

<Device_ID>ABCDEF</Device_ID>

<Mobile_No>01700000000</Mobile_No>

<Location>244428356.907847857</Location>
<IP>192.168.0.101</IP>
</Device_Info>
<TxnInfo>

<TxnData>5a253eeaFxMb6O/ZpwJLDeQ8ItOEKhdaYOa3qsgOIiI=1||1
Page 59 of 85
Participant V2.2 Change Management Guide

0/25/21 7:43:58
AM||244428356.907847857||192.168.0.101||01700000000||002020</T
xnData>
</TxnInfo>
<Tx_Tracking_Info>
<RefNo_SendingPSP/>

<RefNo_SendingBank>REFNOSBL1087D64C897224A50A7A92D245C456
348</RefNo_SendingBank>
<RefNo_ReceivingBank/>
<RefNo_ReceivingPSP/>
<RefNo_IDTP/>
</Tx_Tracking_Info>
<RTPInfo>
<RTPID/>
</RTPInfo>
</Envlp>
</SplmtryData>
</FIToFICstmrCdtTrf>
</Document>
</Body>
</DataPDU>

The sending FI will receive the following two responses for TransferFunds() and
TransferFundsISO()

Sample API Response (For TransferFunds()):


<TransactionResponse>
<Code>200</Code>
<Message>SUCCESS</Message>
<Amount_Debited>21.00</Amount_Debited>
<Amount_Credited>20.59</Amount_Credited>
<Amount_Charged_Fees>0.41</Amount_Charged_Fees>
<Amount_Charged_VAT>0.00</Amount_Charged_VAT>
<RefNo_SendingBank>SBL5432523523523</RefNo_SendingBank>
<RefNo_SendingPSP></RefNo_SendingPSP>

<RefNo_ReceivingBank>SBL1BDDH20211012114903133</RefNo_Receivin
gBank>
<RefNo_ReceivingPSP></RefNo_ReceivingPSP>
<RefNo_IDTP>1001520211012420872935</RefNo_IDTP>
</TransactionResponse>

Page 60 of 85
Participant V2.2 Change Management Guide

Sample API Response (For TransferFundsISO()):


<?xml version="1.0" encoding="utf-8"?>
<DataPDU xmlns="urn:swift:saa:xsd:saa.2.0">
<Revision>2.0.5</Revision>
<Body>
<AppHdr
xmlns="urn:iso:std:iso:20022:tech:xsd:head.001.001.01">
<Fr>
<FIId>
<FinInstnId>
<BICFI>IDTP</BICFI>
</FinInstnId>
</FIId>
</Fr>
<To>
<FIId>
<FinInstnId>
<BICFI>SBL1BDDH</BICFI>
</FinInstnId>
</FIId>
</To>
<BizMsgIdr>MSG18740d07-70e5-45ae-8fe3-
73d2640721a0</BizMsgIdr>
<MsgDefIdr>pacs.002.001.05</MsgDefIdr>
<BizSvc>IDTP</BizSvc>
<CreDt>2021-10-21T07:50:32</CreDt>
</AppHdr>
<Document
xmlns="urn:iso:std:iso:20022:tech:xsd:pacs.002.001.05">
<FIToFIPmtStsRpt>
<GrpHdr>
<MsgId>MSG18740d07-70e5-45ae-8fe3-
73d2640721a0</MsgId>
<CreDtTm>2021-10-
21T13:50:32</CreDtTm>
</GrpHdr>
<OrgnlGrpInfAndSts>

<OrgnlMsgId>MSGIDSBL1FCCA556206A047B5A0D11C53736703A1</Or
gnlMsgId>

<OrgnlMsgNmId>pacs.008.001.06</OrgnlMsgNmId>
<OrgnlCreDtTm>10/21/21 7:50:28
AM</OrgnlCreDtTm>
<GrpSts>ACSP</GrpSts>
<StsRsnInf>
Page 61 of 85
Participant V2.2 Change Management Guide

<Rsn>
<Prtry/>
</Rsn>
<AddtlInf/>
</StsRsnInf>
</OrgnlGrpInfAndSts>
<TxInfAndSts>

<OrgnlInstrId>INSTRIDSBL1FCCA556206A047B5A0D11C53736703A1
</OrgnlInstrId>

<OrgnlEndToEndId>ENDTOENDIDSBL1FCCA556206A047B5A0D11C5373
6703A1</OrgnlEndToEndId>

<OrgnlTxId>TXIDSBL1FCCA556206A047B5A0D11C53736703A1</Orgn
lTxId>
<TxSts>ACSP</TxSts>
<StsRsnInf>
<Rsn>
<Prtry/>
</Rsn>
</StsRsnInf>
<InstgAgt>
<FinInstnId>
<BICFI>IDTP</BICFI>
</FinInstnId>
</InstgAgt>
<InstdAgt>
<FinInstnId>
<BICFI>SBL1BDDH</BICFI>
</FinInstnId>
</InstdAgt>
<OrgnlTxRef>
<IntrBkSttlmDt>2021-21-
10</IntrBkSttlmDt>
<IntrBkSttlmAmt
Ccy="BDT">100.10</IntrBkSttlmAmt>
</OrgnlTxRef>
<ChrgsInf>
<Amt Ccy="BDT">1.96</Amt>
<Agt>
<FinInstnId>
<BICFI>IDTP</BICFI>
<Nm>idtp@gov.idtp</Nm>
</FinInstnId>
</Agt>
Page 62 of 85
Participant V2.2 Change Management Guide

</ChrgsInf>
<ChrgsInf>
<Amt Ccy="BDT">2.00</Amt>
<Agt>
<FinInstnId>
<BICFI>NBR</BICFI>
<Nm>nbr@gov.idtp</Nm>
</FinInstnId>
</Agt>
</ChrgsInf>
</TxInfAndSts>
<SplmtryData>
<PlcAndNm/>
<Envlp>
<ChannelInfo>

<ChannelID>Online</ChannelID>
</ChannelInfo>
<Tx_Tracking_Info>
<RefNo_SendingPSP/>

<RefNo_SendingBank>REFNOSBL16BF010FCB4994C4A8286B542612BD
D01</RefNo_SendingBank>

<RefNo_ReceivingBank>SBL2BDDH20211021075032758</RefNo_Rec
eivingBank>
<RefNo_ReceivingPSP/>

<RefNo_IDTP>1001520211021258838555</RefNo_IDTP>
</Tx_Tracking_Info>

<Amount_Debited>100.10</Amount_Debited>

<Amount_Credited>96.14</Amount_Credited>

<Amount_Charged_Fees>1.96</Amount_Charged_Fees>

<Amount_Charged_VAT>2.00</Amount_Charged_VAT>

<IDTP_Status_Code>200</IDTP_Status_Code>

<IDTP_Status_Msg>SUCCESS</IDTP_Status_Msg>
</Envlp>
</SplmtryData>
</FIToFIPmtStsRpt>
</Document>
Page 63 of 85
Participant V2.2 Change Management Guide

</Body>
</DataPDU>

xvii. CreateRTPISO Request Modifications

The sending FI need to provide the following request body for CreateRTPISO()

Note: MobileNo must be passed in the <Mobile_No> tag

Sample API Request (For CreateRTPISO()):


<?xml version="1.0" encoding="utf-8"?>
<Body>
<AppHdr
xmlns="urn:iso:std:iso:20022:tech:xsd:head.001.001.01">
<Fr>
<FIId>
<FinInstnId>
<BICFI>SBL1BDDH</BICFI>
</FinInstnId>
</FIId>
</Fr>
<To>
<FIId>
<FinInstnId>
<BICFI>IDTP</BICFI>
</FinInstnId>
</FIId>
</To>
<BizMsgIdr>RTPIDTP20211021120719052</BizMsgIdr>
<MsgDefIdr>pain.013.001.06</MsgDefIdr>
<BizSvc>IDTP</BizSvc>
<CreDt>10/21/2021 12:07:19 PM</CreDt>
</AppHdr>
<Document xmlns:xsi="http://www.w3.org/2001/XMLSchema-
instance"
xmlns="urn:iso:std:iso:20022:tech:xsd:pain.013.001.06">
<CdtrPmtActvtnReq>
<GrpHdr>
<MsgId>RTPIDTP20211021120719052</MsgId>
<CreDtTm>2021-10-21T18:07:19</CreDtTm>
<NbOfTxs>1</NbOfTxs>
<InitgPty>
<Id>
<OrgId>
<Othr>
Page 64 of 85
Participant V2.2 Change Management Guide

<Id>testuser101@user.idtp</Id>
</Othr>
</OrgId>
</Id>
</InitgPty>
</GrpHdr>
<PmtInf>

<PmtInfId>RTPIDTP20211021120719052</PmtInfId>
<PmtMtd>TRF</PmtMtd>
<ReqdExctnDt>2021-10-21</ReqdExctnDt>
<Dbtr>
<Nm>testuser102@user.idtp</Nm>
<Id>
<OrgId>
<Othr>

<Id>testuser102@user.idtp</Id>
<SchmeNm>
<Cd>CUST</Cd>
</SchmeNm>
</Othr>
</OrgId>
</Id>
<CtryOfRes>BD</CtryOfRes>
</Dbtr>
<DbtrAcct>
<Id>
<Othr>
<Id/>
</Othr>
</Id>
</DbtrAcct>
<DbtrAgt>
<FinInstnId>
<ClrSysMmbId>
<MmbId/>
</ClrSysMmbId>
</FinInstnId>
</DbtrAgt>
<CdtTrfTx>
<PmtId>

<EndToEndId>RTPIDTP20211021120719052</EndToEndId>
</PmtId>
Page 65 of 85
Participant V2.2 Change Management Guide

<PmtTpInf>
<SvcLvl>
<Cd>SDVA</Cd>
</SvcLvl>
<LclInstrm>
<Prtry>BUSINESS</Prtry>
</LclInstrm>
</PmtTpInf>
<Amt>
<InstdAmt
Ccy="BDT">100</InstdAmt>
</Amt>
<ChrgBr>SLEV</ChrgBr>
<CdtrAgt>
<FinInstnId>
<ClrSysMmbId>
<MmbId/>
</ClrSysMmbId>
</FinInstnId>
</CdtrAgt>
<Cdtr>
<Nm>testuser101@user.idtp</Nm>
<Id>
<OrgId>
<Othr>

<Id>testuser101@user.idtp</Id>
<SchmeNm>

<Cd>CUST</Cd>
</SchmeNm>
</Othr>
</OrgId>
</Id>
</Cdtr>
<CdtrAcct>
<Id>
<Othr>
<Id/>
</Othr>
</Id>
</CdtrAcct>
<SplmtryData>
<Envlp>
<ChannelInfo>

Page 66 of 85
Participant V2.2 Change Management Guide

<ChannelID>Online</ChannelID>
</ChannelInfo>
<Creds>
<Cred type="IDTP_PIN"
subtype="">

<Data>XXXXX</Data>
</Cred>
</Creds>
<Device_Info>
<Device_ID/>

<Mobile_No>01700000000</Mobile_No>
<Location/>
<IP/>
</Device_Info>

<Call_From>FIApp</Call_From>
<Purpose>test</Purpose>
</Envlp>
</SplmtryData>
</CdtTrfTx>
</PmtInf>
</CdtrPmtActvtnReq>
</Document>
</Body>

Page 67 of 85
Participant V2.2 Change Management Guide

Detailed Message Description of PACS.009.001.04:

App Header

AppHdr ISO Business Application Header


Definition

XML Tag <AppHdr>

Occurrences [1..1]

From

AppHdr ISO The sending MessagingEndpoint that has created


+ Fr Definition this Business Message for the receiving
MessagingEndpoint that will process this Business
Message.
Note: the sending MessagingEndpoint might be
different from the sending address potentially
contained in the transport header (as defined in
the transport layer).

XML Tag <Fr>

Occurrences [1..1]

FIId

AppHdr ISO Identification of a financial institution.


+ Fr Definition
++ FIId
XML Tag <FIId>

Occurrences [1..1]

Financial Institution Identification

Page 68 of 85
Participant V2.2 Change Management Guide

AppHdr ISO Unique and unambiguous identification of a


+Fr Definition financial institution, as assigned under an
++ FIId
internationally recognised or proprietary
+++ FinInstnId
identification scheme.

XML Tag <FinInstnId>

Occurrences [1..1]

BICFI

AppHdr ISO Code allocated to a financial institution by the ISO


+Fr Definition 9362 Registration Authority as described in ISO
++ FIId
9362 "Banking - Banking telecommunication
+++ FinInstnId
++++ BICFI messages - Business identifier code (BIC)".

XML Tag <BICFI>

Occurrences [1..1]

To

AppHdr ISO The MessagingEndpoint designated by the


+ To Definition sending MessagingEndpoint to be the recipient
who will ultimately process this Business Message.

Note: the receiving MessagingEndpoint might be


different from the receiving address potentially
contained in the transport header (as defined in
the transport layer).

XML Tag <To>

Occurrences [1..1]

FIId

AppHdr ISO Identification of a financial institution.


+ To Definition
++ FIId
XML Tag <FIId>

Page 69 of 85
Participant V2.2 Change Management Guide

Occurrences [1..1]

Financial Institution Identification

AppHdr ISO Unique and unambiguous identification of a


+ To Definition financial institution, as assigned under an
++ FIId
internationally recognised or proprietary
+++ FinInstnId
identification scheme.

XML Tag <FinInstnId>

Occurrences [1..1]

BICFI

AppHdr ISO Code allocated to a financial institution by the ISO


+ To Definition 9362 Registration Authority as described in ISO
++ FIId
9362 "Banking - Banking telecommunication
+++ FinInstnId
++++ BICFI messages - Business identifier code (BIC)".

XML Tag <BICFI>

Occurrences [1..1]

Business Message Identifier

AppHdr ISO Unambiguously identifies the Business Message to


+ BizMsgIdr Definition the MessagingEndpoint that has created the
Business Message.

XML Tag <BizMsgIdr>

Occurrences [1..1]

Message Definition Identifier

Page 70 of 85
Participant V2.2 Change Management Guide

AppHdr ISO Contains the MessageIdentifier that defines the


+ MsgDefIdr Definition BusinessMessage.

It must contain a MessageIdentifier published on


the ISO 20022 website.

Example: pacs.008.001.04

XML Tag <MsgDefIdr>

Occurrences [1..1]

AppHdr ISO Specifies the business service agreed between the


Business Service Definition two MessagingEndpoints under which rules this
Business Message is exchanged.
+ BizSvc
To be used when there is a choice of processing
services or processing service levels.

XML Tag <BizSvc>

Occurrences [1..1]

Creation Date

AppHdr ISO Date and time when this Business Message


+ CreDt Definition (header) was created.

Note: Times must be normalized, using the "Z"


annotation.

XML Tag <CreDt>

Occurrences [1..1]

Financial Institution Credit Transfer


FICdtTrf ISO Definition This message is sent by a debtor financial institution to a
creditor financial institution, directly or through other
agents and/or a payment clearing and settlement
system.
XML Tag <FICdtTrf>

Occurrences [1..1]

Page 71 of 85
Participant V2.2 Change Management Guide

Group Header
GrpHdr ISO Definition Set of characteristics shared by all individual transactions
included in the message.
XML Tag <GrpHdr>
Occurrences [1..1]

Message Identification
GrpHdr ISO Definition Point to point reference, as assigned by the instructing
+MsgId party, and sent to the next party in the chain to
unambiguously identify the message.
Usage: The instructing party has to make sure that
Message Identification is unique per instructed party for
a pre-agreed period.
XML Tag <MsgId>

Occurrences [1..1]

Type Max35Text

ISO Length: 1 ...35

IDTP Length: 1 ...22


Rule Rule "Message Identification Guideline"

Definition
If no unique Message Identification can be generated,
then the element is recommended to be populated with
a copy of Instruction Identification.

If generated, it is recommended that Message


Identification to be structured as follows:

XXXX - First 4 characters of sender's BIC [4]


YYYYMMDD - Creation Date [8]
X – Channel Identification [1]
nnnnnnn- Sequence Number [9]

The values of Channel Identification (X) are bank-


determined and may be used to identify separate
channels such as:
1 - Default value (only one single channel)
Or for example (multiple channels),
1 - Internet Banking

Page 72 of 85
Participant V2.2 Change Management Guide

2 - Cash Management
3 - Treasury
4 - ATM
Example <MsgId>ABCD201308201123456789</MsgId>

Creation Date Time


GrpHdr ISO Definition Date and time at which the message was created.
+CreDtTm
XML Tag <CreDtTm>

Format: YYYY-MM-DDThh:mm:ss

Type ISODateTime
Occurrences [1..1]

Example <CreDtTm>2013-08-20T09:30:32</CreDtTm>

Number of Transactions
GrpHdr ISO Definition Date and time at which the message was created.
+NbOfTxs
XML Tag <NbOfTxs>

IDTP Rule The number of transactions is limited to one.


Type Max15NumericText

Occurrences [1..1]
Example <NbOfTxs>1</NbOfTxs>

Settlement Information
GrpHdr ISO Specifies the details on how the settlement of the
+ SttlmInf Definition transaction(s) between the instructing agent and the
instructed agent is completed.
XML Tag <SttlmInf >
Occurrences [1..1]

Settlement Method
GrpHdr ISO Method used to settle the (batch of) payment
+ SttlmInf Definition instructions.
++ SttlmMtd
XML Tag <SttlmMtd>

Page 73 of 85
Participant V2.2 Change Management Guide

Codes: CLRG (ClearingSystem)


Code Description: Settlement is done through a payment clearing
system.
IDTP Rule Fixed Value = RTGS
Occurrences [1..1]

Example <SttlmMtd>RTGS</SttlmMtd>

Credit Transfer Transaction Information


CdtTrfTxInf ISO Set of elements providing information specific to the
Definition individual credit transfer(s).
XML Tag <CdtTrfTxInf>

Occurrences [1..1]

Instructing Agent
CdtTrfTxInf ISO Agent that instructs the next party in the chain to carry
+InstgAgt Definition out the (set of) instruction(s).
XML Tag <InstgAgt>

Occurrences [1..1]
Rule The element is used to specify the BIC of the RTGS
registered member when the Debtor is used to specify
the name or BIC of an indirect RTGS member

Financial Institution Identification


CdtTrfTxInf ISO Unique and unambiguous identification of a financial
+InstgAgt Definition institution, as assigned under an internationally
++FinInstnId
recognized or proprietary identification scheme.
XML Tag <FinInstnId>

Occurrences [1..1]

BICFI
CdtTrfTxInf ISO Code allocated to a financial institution by the ISO 9362
+InstdAgt Definition Registration Authority as described in ISO 9362
++FinInstnId
+++BICFI "Banking - Banking telecommunication messages -
Business identifier code (BIC)".
XML Tag <BICFI>

Occurrences [1..1]

Page 74 of 85
Participant V2.2 Change Management Guide

Instructed Agent
CdtTrfTxInf ISO Agent that is instructed by the previous party in the chain
+InstdAgt Definition to carry out the (set of) instruction(s).
XML Tag <InstdAgt>
Occurrences [1..1]

Rule The element is used to specify the BIC of the RTGS


registered member when the Debtor is used to specify
the name or BIC of an indirect RTGS member

Financial Institution Identification


CdtTrfTxInf ISO Unique and unambiguous identification of a financial
+ InstdAgt Definition institution, as assigned under an internationally
++ FinInstnId
recognized or proprietary identification scheme.
XML Tag <FinInstnId>

Occurrences [1..1]

BICFI
CdtTrfTxInf ISO Code allocated to a financial institution by the ISO 9362
+InstdAgt Definition Registration Authority as described in ISO 9362
++FinInstnId
+++BICFI "Banking - Banking telecommunication messages -
Business identifier code (BIC)".
XML Tag <BICFI>

Occurrences [1..1]

Payment Type Information


CdtTrfTxInf ISO Set of elements used to further specify the type of
+PmtTpInf Definition transaction.
XML Tag <PmtTpInf>

Occurrences [1..1]

Clearing Channel
CdtTrfTxInf ISO Specifies the clearing channel to be used to process the
+PmtTpInf Definition payment instruction.
++ClrChanl
XML Tag <ClrChanl>
IDTP Rule IDTP uses IDTP

Occurrences [1..1]

Page 75 of 85
Participant V2.2 Change Management Guide

Type ClearingChannel2Code
Example <ClrChanl>IDTP</ClrChanl>

Local Instrument
CdtTrfTxInf ISO Definition User community specific instrument.
+PmtTpInf
++LclInstrm
Usage: This element is used to specify a local
instrument, local clearing option and/or further qualify
the service or service level.
XML Tag <LclInstrm>

Rule Rule "Local Instrument Rule"


Definition
Local Instrument must only be used when agreed
bilaterally or within a community to reflect a specific
payment instrument currently identified through
community specific implementation of (proprietary)
standards.
Occurrences [1..1]

Proprietary
CdtTrfTxInf ISO Specifies the local instrument, as a proprietary code.
+ PmtTpInf Definition
++ LclInstrm
+++ Prtry XML Tag <Prtry>
IDTP Rule IDTP uses RTGS_CSCT(RTGS Customer Credit Transfer)
as fixed value for this element.
Occurrences [1..1]

Type Max35Text

Service Level
CdtTrfTxInf ISO Agreement under which or rules under which the
+PmtTpInf Definition transaction should be processed.
++ SvcLvl
XML Tag <SvcLvl>

Occurrences [1..1]

Proprietary
CdtTrfTxInf ISO Specifies the service level, as a proprietary code.
+ PmtTpInf Definition
++ SvcLvl
+++ Prtry XML Tag <Prtry>

Page 76 of 85
Participant V2.2 Change Management Guide

IDTP Rule IDTP uses RTGS_CSCT(RTGS Customer Credit Transfer)


as fixed value for this element.
Occurrences [1..1]

Type Max35Text

Category Purpose
CdtTrfTxInf ISO Specifies the high-level purpose of the instruction
+ PmtTpInf Definition based on a set of pre-defined categories. Usage: This is
++ CtgyPurp
used by the initiating party to provide information
concerning the processing of the payment. It is likely to
trigger special processing by any of the agents involved
in the payment chain.
XML Tag <CtgyPurp>
IDTP Rule IDTP use this element here under Payment Type
Information tag instead of shown in index 1.25
Occurrences [1..1]

Proprietary
CdtTrfTxInf ISO Definition Category purpose, in a proprietary form.
+ PmtTpInf
++ CtgyPurp XML Tag <Prtry>
+++ Prtry
Rule Rule "Category Purpose 1 Code Rule"

Definition
Transaction Type Code from MT 103 Field 72 (Sender
to Receiver Information) after the designated code
word /CODTYPTR/.
Occurrences [1..1]
Type Max35Text

Payment Identification
CdtTrfTxInf ISO Definition Set of elements used to reference a payment
+ PmtId instruction.
XML Tag <PmtId>

Occurrences [1..1]

Instruction Identification

Page 77 of 85
Participant V2.2 Change Management Guide

CdtTrfTxInf ISO Unique identification, as assigned by an instructing party


+ PmtId Definition for an instructed party, to unambiguously identify the
++ InstrId
instruction.
Usage: The instruction identification is a point to point
reference that can be used between the instructing party
and the instructed party to refer to the individual
instruction. It can be included in several messages related
to the instruction.
IDTP Rule Use MessageId

XML Tag <InstrId>

Type Max35Text
Occurrences [1..1]

Page 78 of 85
Participant V2.2 Change Management Guide

Transaction Identification
CdtTrfTxInf ISO Unique identification, as assigned by the first instructing
+ PmtId Definition agent, to unambiguously identify the transaction that is
++ TxId
passed on, unchanged, throughout the entire interbank
chain.
Usage: The transaction identification can be used for
reconciliation, tracking or to link tasks relating to the
transaction on the interbank level. Usage: The instructing
agent has to make sure that the transaction identification
is unique for a pre-agreed period.
XML Tag <TxId>
Occurrences [1..1]

Type Max35Text

ISO Length 1 ...35

IDTP 1 ...22
Length
Rules Rule "Message Identification Guideline"

Definition
If no unique Message Identification can be generated,
then the element is recommended to be populated with a
copy of Instruction Identification.

If generated, it is recommended that Message


Identification to be structured as follows:

XXXX - First 4 characters of sender's BIC [4]


YYYYMMDD - Creation Date [8]
X – Channel Identification [1]
nnnnnnn- Sequence Number [9]

The values of Channel Identification (X) are bank-


determined and may be used to identify separate
channels such as:
1 - Default value (only one single channel)
Or for example (multiple channels),
1 - Internet Banking
2 - Cash Management
3 - Treasury
4 - ATM
IDTP Rule Use MsgId

Example <TxId>HSBC201308201123456789</TxId>

Page 79 of 85
Participant V2.2 Change Management Guide

End To End Identification


CdtTrfTxInf ISO Unique identification, as assigned by the initiating party,
+PmtId Definition to unambiguously identify the transaction. This
++EndToEndId
identification is passed on, unchanged, throughout the
entire end-to-end chain.
Usage: The end-to-end identification can be used for
reconciliation or to link tasks relating to the transaction.
It can be included in several messages related to the
transaction.
Usage: In case there are technical limitations to pass on
multiple references, the end-to-end identification must
be passed on throughout the entire end-to-end chain.
IDTP Rule Use MessageId
XML Tag <EndToEndId>

Type Max35Text

Occurrences [1..1]

Interbank Settlement Amount


CdtTrfTxInf ISO Amount of money moved between the instructing
+IntrBkSttlmAmt Definition agent and the instructed agent.
XML Tag <IntrBkSttlmAmt>
IDTP Rule RestrictedFINActiveCurrencyAndAmount (based on
decimal)

- fractionDigits: 5
- totalDigits: 14
- minInclusive: 0
Occurrences [1..1]
Type ActiveCurrencyAndAmount

Attribute: Currency
The number of fractional digits (or minor unit of
currency) must comply with ISO 4217.
Note: The decimal separator is a dot.

Interbank Settlement Date


CdtTrfTxInf ISO Date on which the amount of money ceases to be
+IntrBkSttlmDt Definition available to the agent that owes it and when the
amount of money becomes available to the agent to
which it is due.
XML Tag <IntrBkSttlmDt>

Page 80 of 85
Participant V2.2 Change Management Guide

Occurrences [0..1]
Type ISODate

Debtor
CdtTrfTxInf ISO Party that owes an amount of money to the (ultimate)
+Dbtr Definition creditor.
XML Tag <Dbtr>
Occurrences [1..1]

Rule Conditional Rule "Name And BIC Rule"

This is a cross-element rule.


Definition
If Identification\OrganizationIdentification\AnyBIC is not
present, DebtorName must be present.
If
Identification\OrganizationIdentification\AnyBIC is
present
Then
Name is optional.
Else
Name must be present.

Conditional Rule "Name And Street Name Rule"

This is a cross-element rule.


Definition
If the length of the Name is more than 33 characters,
the length of the StreetName is restricted to 33
characters.
If
Name length is more than 33 characters
Then
StreetName has a maximum length of 33 characters
Else
StreetName has a maximum length of 70 characters

Financial Institution Identification


CdtTrfTxInf ISO Unique and unambiguous identification of a financial
+Dbtr Definition institution, as assigned under an internationally
++FinInstnId
recognized or proprietary identification scheme.
XML Tag <FinInstnId>

Page 81 of 85
Participant V2.2 Change Management Guide

Occurrences [1..1]

BICFI
CdtTrfTxInf ISO Code allocated to a financial institution by the ISO 9362
+Dbtr Definition Registration Authority as described in ISO 9362 "Banking
++FinInstnId
+++BICFI - Banking telecommunication messages - Business
identifier code (BIC)".
XML Tag <BICFI>

Occurrences [1..1]

Debtor Account
CdtTrfTxInf ISO Unambiguous identification of the account of the debtor
+DbtrAcct Definition to which a debit entry will be made as a result of the
transaction.
XML Tag <DbtrAcct>

Occurrences [0..1]

Identification
CdtTrfTxInf ISO Unique and unambiguous identification for the account
+DbtrAcct Definition between the account owner and the account servicer.
++Id
XML Tag <Id>

Occurrences [1..1]

Other
CdtTrfTxInf ISO Unique and unambiguous identification for the account
+DbtrAcct Definition between the account owner and the account servicer.
++Id
XML Tag <Othr>
+++Othr
Occurrences [1..1]

Identification
CdtTrfTxInf ISO Identification assigned by an institution.
+DbtrAcct Definition
++Id
+++Othr XML Tag <Id>
++++Id Occurrences [1..1]

Type Max34Text

Page 82 of 85
Participant V2.2 Change Management Guide

IDTP Rule RestrictedFINXMax34Text (based on string)

- pattern: ([0-9a-zA-Z\-\?:\(\)\.,'\+ ]([0-9a-zA-Z\-


\?:\(\)\.,'\+ ]*(/[0-9a-zA-Z\-\?:\(\)\.,'\+ ])?)*)
- minLength: 1
- maxLength: 34
Creditor
CdtTrfTxInf ISO Party to which an amount of money is due.
+Cdtr Definition
XML Tag <Cdtr>

Occurrences [1..1]

Financial Institution Identification


CdtTrfTxInf ISO Unique and unambiguous identification of a financial
+Cdtr Definition institution, as assigned under an internationally
++FinInstnId
recognized or proprietary identification scheme.
XML Tag <FinInstnId>

Occurrences [1..1]

BICFI
CdtTrfTxInf ISO Code allocated to a financial institution by the ISO 9362
+Cdtr Definition Registration Authority as described in ISO 9362 "Banking
++FinInstnId
+++BICFI - Banking telecommunication messages - Business
identifier code (BIC)".
XML Tag <BICFI>
Occurrences [1..1]

Creditor Account
CdtTrfTxInf ISO Unambiguous identification of the account of the
+CdtrAcct Definition creditor to which a credit entry will be made as a result of
the transaction.
XML Tag <CdtrAcct>

Occurrences [1..1]

Identification
CdtTrfTxInf ISO Unique and unambiguous identification for the account
+CdtrAcct Definition between the account owner and the account servicer.
++Id
XML Tag <Id>

Page 83 of 85
Participant V2.2 Change Management Guide

Occurrences [1..1]

Other
CdtTrfTxInf ISO Unique identification of an account, as assigned by the
+CdtrAcct Definition account servicer, using an identification scheme.
++Id
+++Othr XML Tag <Othr>

Occurrences [1..1]

Identification
CdtTrfTxInf ISO Identification assigned by an institution.
+CdtrAcct Definition
++Id
XML Tag <Id>
+++Othr
++++Id
Occurrences [1..1]
IDTP Rule RestrictedFINXMax34Text (based on string)
- pattern: ([0-9a-zA-Z\-\?:\(\)\.,'\+ ]([0-9a-zA-Z\-
\?:\(\)\.,'\+ ]*(/[0-9a-zA-Z\-\?:\(\)\.,'\+ ])?)*)
- minLength: 1, maxLength: 34

Supplementary Data
CdtTrfTxInf ISO Additional information that cannot be captured in the
+SplmtryData Definition structured elements and/or any other specific block.
XML Tag <SplmtryData>
Occurrences [0..n]
Rules This component may not be used without the explicit
approval of a SEG and submission to the RA of ISO
20022 compliant structure(s) to be used in the Envelope
element.

Place And Name


CdtTrfTxInf ISO Unambiguous reference to the location where the
+SplmtryData Definition supplementary data must be inserted in the message
++PlcAndNm
instance.
In the case of XML, this is expressed by a valid XPath.
XML Tag <PlcAndNm>
Occurrences [1..1]

Rules Maximum 350 characters allowed.

Page 84 of 85
Participant V2.2 Change Management Guide

Envelope

CdtTrfTxInf ISO Technical element wrapping the supplementary


+ SplmtryData data.
++ Envlp Definition

XML Tag <Envlp>

Occurrences [1..1]

Page 85 of 85

You might also like