Skip to main content

Before reading this API documentation, please make sure to review API Description Guide

Transaction Limits

Transaction TypeLimit
CollectionBDT: 100-50000
DisbursementBDT: 100-50000

Collection API

Collection Application

Description:
  • Create a collection order
URL: BDT: /bdt/collect/apply
Note: appId needs to use BDT corresponding, user payment success will increase BDT balance
Parameters:
ParameterRequiredTypeDescription
appIdYesLongBusiness ID (obtained from backend, must pass the corresponding business ID according to the currency in the URL)
orderIdYesStringMerchant order number (must be unique, maximum length 48)
nameYesStringUser’s full name, recommended to use real name. Format: include firstName and lastName, separated by a space. Example: Donald John Trump
phoneYesStringValid phone number (format reference: Phone Number Format)
emailYesStringValid email
amountYesStringTransaction amount (accurate to two decimal places; punctuation marks such as “,” are prohibited)
payTypeYesStringTransaction type
inBankCodeYesStringPayment Method
callBackUrlYesStringRedirect URL after successful payment
callBackFailUrlYesStringRedirect URL after failed payment
notifyUrlNoStringCallback URL
subjectYesStringPayment remark
bodyNoStringRemark details
countryNoStringRequired for cashier mode, pass: 458
partnerUserIdYesStringUnique user identifier (e.g., userId),used for risk control purposesfor the risk control system and must be valid, otherwise it will affect the transaction. Format: digits, letters, or symbols -~!@#$%&*()_.
signYesStringSignature
Return Data Parameters
ParameterTypeDescription
orderIdStringMerchant order ID
orderNoStringPlatform order ID
payUrlStringPayment link
signStringSignature

Collection Query

Description:
  • Query a collection order
URL: BDT: /bdt/collect/query Parameters:
ParameterRequiredTypeDescription
appIdYesLongBusiness ID (obtained from backend, must pass the corresponding business ID according to the currency in the URL)
orderIdYesStringMerchant order number
orderNoNoStringPlatform order number (faster response)
signYesStringSignature
Return Data Parameters
ParameterTypeDescription
orderIdStringMerchant order ID
orderNoStringPlatform order ID
amountStringTransaction amount
actualAmountStringReceived amount
feeStringFee
statusIntegerStatus (0 = Not started, 1 = Processing, 2 = Success (final), 3 = Failed (final), -1 = Exception pending confirmation)
payTimeStringPayment success time (present when status=2) (local currency time UTC+06:00), format: yyyy-MM-dd HH:mm:ss
errorMsgStringFailure reason (present when status=3)
signStringSignature

Payment Methods

CurrencyPayment Type (payType)Payment Code (inBankCode)LimitStatusDescription
BDTEWALLETBDT_BKASH100-50000Availablebkash
BDTEWALLETBDT_NAGAD100-50000Availablenagad

Disbursement API

Disbursement Application

Description:
  • Create a disbursement order
URL: /bdt/pay/apply Parameters:
ParameterRequiredTypeDescription
appIdYesLongBusiness ID (obtained from backend, must pass the corresponding business ID according to the currency in the URL)
orderIdYesStringMerchant order number (must be unique, maximum length 48)
amountYesStringTransaction amount (accurate to two decimal places; punctuation marks such as “,” are prohibited)
accountTypeYesStringAccount type: EWALLET (e-wallet), BANK_ACCOUNT (bank)
bankCodeYesStringPayment Method
accountNoYesStringUser account number
nameYesStringRecipient’s name (format: English letters, case-insensitive, spaces allowed, 1-30 chars, “firstName middleName lastName” (middleName optional, special chars supported ’.-))
phoneYesStringValid phone number (format reference: Phone Number Format)
emailYesStringValid email
notifyUrlNoStringCallback URL
subjectNoStringPayment remark (transaction title, product name, or payment reason)
bodyNoStringRemark details
partnerUserIdYesStringUnique user identifier (e.g., userId). Must be valid, otherwise it will affect the transaction. Format: digits, letters, or symbols -~!@#$%&*()_.
signYesStringSignature
Return Data Parameters
ParameterTypeDescription
orderIdStringMerchant order number (must be unique)
orderNoStringPlatform order number
signStringSignature

Disbursement Query

URL: /bdt/pay/query Parameters:
ParameterRequiredTypeDescription
appIdYesLongBusiness ID (obtained from backend, must pass the corresponding business ID according to the currency in the URL)
orderIdYesStringMerchant order number
orderNoNoStringPlatform order number (faster response)
signYesStringSignature
Return Data Parameters
ParameterTypeDescription
orderIdStringMerchant order number (must be unique)
orderNoStringPlatform order number
amountStringTransaction amount
feeStringFee
statusIntegerStatus (0 = Not started, 1 = Processing, 2 = Success (final), 3 = Failed (final), -1 = Exception pending confirmation)
payTimeStringPayment success time (exists when status=2) (local currency Time UTC+06:00), format: yyyy-MM-dd HH:mm:ss
errorMsgStringFailure reason (exists when status=3)
signStringSignature

Payment Methods

CurrencyPayment Type (accountType)Payment Code (bankCode)LimitStatusDescription
BDTEWALLETBDT_BKASH100-50000Availablebkash
BDTEWALLETBDT_NAGAD100-50000Availablenagad
Last modified on April 17, 2026