SDK V2.2 Documentation For IDTP
SDK V2.2 Documentation For IDTP
SDK
Documentation
for
Interoperable Digital
Transaction Platform
(IDTP)
September 23, 2021
On behalf of Consultant JV
Page 1 of 24
SDK Documentation for IDTP
Page 2 of 24
SDK Documentation for IDTP
Contents
1. SDK Setup ........................................................................................................................................ 4
i. Registration ............................................................................................................................. 5
ii. Transaction.............................................................................................................................. 9
iii. Reset IDTP PIN....................................................................................................................... 18
iv. Register Device...................................................................................................................... 21
2. Appendix ....................................................................................................................................... 24
Page 3 of 24
SDK Documentation for IDTP
1. SDK Setup
Page 4 of 24
SDK Documentation for IDTP
SDK can be invoked in four different ways for four different operations such as Registration,
Transaction, Reset IDTP PIN, and Register Device. For each operation there are some
parameters which are needed to be passed to the SDK and there will be some return values
from SDK. The details are given below:
i. Registration
After successfully calling the SDK with those params the following page will be shown.
Page 5 of 24
SDK Documentation for IDTP
After submitting the PIN, the SDK will return SecurityInfo as parameter which need to be
caught in the calling entity.
2Nb3aBIeSlAB+BWDTIUwvqifeXQyQCWIAioy2kWDLnupfSiT3rekUSf7ebC1k6uZRXdtBXhFKwe
zPIHM7Z9PYq2/i1TbTM+3grNywU+MNq27RbN4mkbi/UE00w4ih2shMJDzvquBFNH3i/ynYUU
=,Mpb7D1IJzp8nAWmReqNfyA==1||2021-10-21
17:25:07.264||244428303.907847684||192.168.0.102||01700000000||NA
SecurityInfo need to be passed in the following marked tag of the request body, and
also mobile number of the user need to be passed under mobile number tag:
<RegisterUser
xmlns:idtp="http://idtp.gov.bd/xxx/schema/">
<Head ver="1.0" ts="2021-10-21 17:28:31.494"
orgId="SBL1BDDH" msgId="1"/>
<Req id="8ENSVVR4QOS7X1UGPY7JGUV444PL9T2C3QM"
note="RegisterUser" ts="2021-10-21 17:28:31.494"
type="RegisterUser"/>
<ChannelInfo>
<ChannelID>Mobile</ChannelID>
</ChannelInfo>
<Entity seqNum="1">
<Info>
Page 6 of 24
SDK Documentation for IDTP
<EntityType>Individual</EntityType>
<Name>Test FI User</Name>
<AddressLine1>Dhaka</AddressLine1>
<AddressLine2>BD</AddressLine2>
<District>Dhaka</District>
<PostalCode>1000</PostalCode>
<MobileNumber>01700000000</MobileNumber>
<Email>[email protected]</Email>
<TypeOfOwnership></TypeOfOwnership>
<TypeOfBusiness></TypeOfBusiness>
<NameOfMinistry></NameOfMinistry>
<NameOfDivision></NameOfDivision>
<TypeOfFinancialInstitution></TypeOfFinancialInstitution>
<SwiftCode>SBL1BDDH</SwiftCode>
<CBAccountNumber></CBAccountNumber>
<NID>1234432129</NID>
<TIN>429922499321</TIN>
<BIN></BIN>
<IDTPKey></IDTPKey>
<DateOfBirth>1/1/2020</DateOfBirth>
<DateOfIncorporation></DateOfIncorporation>
<CallBackURL></CallBackURL>
<Password></Password>
</Info>
<DeviceInfo>
<Device_ID>2Nb3aBIeSlAB+BWDTIUwvqifeXQyQCWIAioy2kWDLnupfSiT3re
kUSf7ebC1k6uZRXdtBXhFKwezPIHM7Z9PYq2/i1TbTM+3grNywU+MNq27RbN4m
kbi/UE00w4ih2shMJDzvquBFNH3i/ynYUU=,Mpb7D1IJzp8nAWmReqNfyA==1|
|2021-10-21
Page 7 of 24
SDK Documentation for IDTP
17:25:07.264||244428303.907847684||192.168.0.102||01700000000|
|NA</Device_ID>
<Mobile_No>01700000000</Mobile_No>
<Location></Location>
<IP></IP>
</DeviceInfo>
<AccountInfo>
<RoutingNumber>992556611</RoutingNumber>
<AccountNumber>19281928192819988</AccountNumber>
<IsGlobalDefaultCreditAccount>1</IsGlobalDefaultCreditAccount>
<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="[email protected]"/>
Page 8 of 24
SDK Documentation for IDTP
<OtherInfo>
<Call_From>FIApp</Call_From>
</OtherInfo>
</Entity>
</RegisterUser>
ii. Transaction
After successfully calling the SDK with those params the following page will be shown.
Page 9 of 24
SDK Documentation for IDTP
After submitting the PIN, the SDK will return SecurityInfo as return parameter which need to
be caught in the calling entity.
Page 10 of 24
SDK Documentation for IDTP
+CnQ9DHcbLBe4rBDxeJwaHeU/3rDOp5mFUWTgHjhY5A=1||2021-10-25
12:52:36.989||244470347.907887953||192.168.183.212||01700000000||NA
SecurityInfo need to be passed in the following marked tag of the request body of
TransferFunds or TransferFundsISO:
In TransferFunds():
<TransferFunds
xmlns:idtp="http://idtp.gov.bd/xxx/schema/">
<Head ver="1.0" ts="2021-10-25 12:52:36.989"
orgId="SBL1BDDH" msgId="1" />
<Req id="8ENSVVR4QOS7X1UGPY7JGUV444PL9T2C3QM"
note="Transfer Funds" ts="2021-10-25 12:52:36.989"
type="TRANSFERFUNDS"/>
<ChannelInfo>
<ChannelID>Mobile</ChannelID>
</ChannelInfo>
<TransactionInfo addr="" type="">
<SenderInfo>
<SenderVID value="[email protected]"/>
</SenderInfo>
<DeviceInfo>
<Device_ID>XXXXXX</Device_ID>
<Mobile_No>01700000000</Mobile_No>
<Location>244470347.907887953</Location>
<IP>192.168.183.212</IP>
</DeviceInfo>
<ReceiverInfo>
<ReceiverVID value="[email protected]"/>
</ReceiverInfo>
Page 11 of 24
SDK Documentation for IDTP
<TxnInfo>
<ReferenceNo value="SBL1134234231132"/>
<TxnAmount value="150"/>
<TxnData>+CnQ9DHcbLBe4rBDxeJwaHeU/3rDOp5mFUWTgHjhY5A=1||2021-
10-25
12:52:36.989||244470347.907887953||192.168.183.212||0170000000
0||NA</TxnData>
</TxnInfo>
<OtherInfo>
<Purpose>Test</Purpose>
<BillNo></BillNo>
<RTPID></RTPID>
</OtherInfo>
<Creds>
<Cred type="IDTP_PIN" subtype="">
<Data></Data>
</Cred>
</Creds>
</TransactionInfo>
</TransferFunds>
Page 12 of 24
SDK Documentation for IDTP
In TransferFundsISO():
<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">
Page 13 of 24
SDK Documentation for IDTP
<FIToFICstmrCdtTrf>
<GrpHdr>
<MsgId>MSGIDSBL1FCCA556206A047B5A0D11C53736703A1</MsgId>
<CreDtTm>10/25/21 7:43:58
AM</CreDtTm>
<NbOfTxs>1</NbOfTxs>
<TtlIntrBkSttlmAmt>100.10</TtlIntrBkSttlmAmt>
<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>
Page 14 of 24
SDK Documentation for IDTP
<BICFI>SBL1BDDH</BICFI>
</FinInstnId>
</InstgAgt>
<InstdAgt>
<FinInstnId>
<BICFI>IDTP</BICFI>
</FinInstnId>
</InstdAgt>
<Dbtr>
<nm>[email protected]</Nm>
</Dbtr>
<DbtrAcct>
<Id>
<Othr>
<Id/>
</Othr>
</Id>
</DbtrAcct>
<DbtrAgt>
<FinInstnId>
<BICFI/>
</FinInstnId>
</DbtrAgt>
<CdtrAgt>
<FinInstnId>
<BICFI/>
</FinInstnId>
</CdtrAgt>
<Cdtr>
<nm>[email protected]</Nm>
Page 15 of 24
SDK Documentation for IDTP
</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>XXXXXX</Data>
</Cred>
</Creds>
<ChannelInfo>
<ChannelID>Online</ChannelID>
</ChannelInfo>
<Device_Info>
<Device_ID>ABCDEF</Device_ID>
<Mobile_No>01700000000</Mobile_No>
<Location>244428356.907847857</Location>
Page 16 of 24
SDK Documentation for IDTP
<IP>192.168.0.101</IP>
</Device_Info>
<TxnInfo>
<TxnData>5a253eeaFxMb6O/ZpwJLDeQ8ItOEKhdaYOa3qsgOIiI=1||1
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>
Page 17 of 24
SDK Documentation for IDTP
For Reset IDTP PIN following parameters need to be passed to the SDK.
Page 18 of 24
SDK Documentation for IDTP
After successfully calling the SDK with those params the following pages will be shown.
After submitting all the fields, the SDK will return SecurityInfo and USER_VID as return
parameters which need to be caught in the calling entity.
Page 19 of 24
SDK Documentation for IDTP
QlhRR75xXLgGdBN9+LglOFf4S7pmamZcnknxJ6+SrZEDMb3wZk/uL8r3DyOz3FNilhU=,qroKw
g7rmzEdeLQxH/FP4w==1||2021-10-21
17:37:32.020||244428308.907847686||192.168.0.102||01700000000||NA
SecurityInfo and USER_VID need to be passed in the following marked tags of the
request body:
<ResetIDTPPIN
xmlns:idtp="http://idtp.gov.bd/xxx/schema/">
<Head ver="1.0" ts="2021-10-21 17:40:00.845"
orgId="SBL1BDDH" msgId="1" />
<Req id="b3136e00-b894-461d-a64a-aa48078f7288" note="Reset
PIN" ts="2021-10-21 17:40:00.845" type="resetidtppin" />
<ChannelInfo>
<ChannelID>Mobile</ChannelID>
</ChannelInfo>
<DeviceInfo>
<Device_ID>QlhRR75xXLgGdBN9+LglOFf4S7pmamZcnknxJ6+SrZEDMb3wZk/
uL8r3DyOz3FNilhU=,qroKwg7rmzEdeLQxH/FP4w==1||2021-10-21
17:37:32.020||244428308.907847686||192.168.0.102||01700000000|
|NA</Device_ID>
<Mobile_No></Mobile_No>
<Location></Location>
<IP></IP>
</DeviceInfo>
<UserInfo>
<VID>[email protected]</VID>
<PINInfo></PINInfo>
Page 20 of 24
SDK Documentation for IDTP
</UserInfo>
</ResetIDTPPIN>
After successfully calling the SDK with those params the following pages will be shown.
Page 21 of 24
SDK Documentation for IDTP
After submitting all the fields, the SDK will return SecurityInfo and USER_VID as return
parameters which need to be caught in the calling entity.
FuEE+LSHA3EOFuPSxJSdnWFHRtSmVTlLjJCKgEec5aHRv+Nnuza47DiVQ3bIPsZ5ffVEycot1RTJr
8/PP4B2/fy8Mwwtt8Y76xmk,ICtqmNit/imaDTd++kDfdA==1||2021-10-21
17:47:34.364||244428303.907847684||192.168.0.102||01700000000||NA
Page 22 of 24
SDK Documentation for IDTP
SecurityInfo and USER_VID need to be passed in the following marked tags of the
request body:
<RegisterDevice
xmlns:idtp="http://idtp.gov.bd/xxx/schema/">
<Head ver="1.0" ts="2021-10-21 17:48:21.148"
orgId="SBL1BDDH" msgId= "1"/>
<Req id="d282b844-db62-4264-9f7d-233a0d0e4e7c"
note="Register Device" ts="2021-10-21 17:48:21.148"
type="REGISTERDEVICE" />
<ChannelInfo>
<ChannelID>Mobile</ChannelID>
</ChannelInfo>
<DeviceInfo>
<Device_ID>FuEE+LSHA3EOFuPSxJSdnWFHRtSmVTlLjJCKgEec5aHRv+Nnuza
47DiVQ3bIPsZ5ffVEycot1RTJr8/PP4B2/fy8Mwwtt8Y76xmk,ICtqmNit/ima
DTd++kDfdA==1||2021-10-21
17:47:34.364||244428303.907847684||192.168.0.102||01700000000|
|NA</Device_ID>
<Mobile_No></Mobile_No>
<Location></Location>
<IP></IP>
</DeviceInfo>
<UserInfo>
<VID>[email protected]</VID>
<DeviceInfo></DeviceInfo>
</UserInfo>
</RegisterDevice>
Page 23 of 24
SDK Documentation for IDTP
2. Appendix
Page 24 of 24