This API supports deposits through Nagad and bKash wallets. Choose the wallet using the pay_bankcode assigned in the merchant portal. Both wallets use the same request parameters.

Minimum order amount: 1000.00 BDT

Endpoint: https://{request-host}/Pay_AddOrder.html
Method: POST
Content-Type: application/x-www-form-urlencoded; charset=utf-8

Request Parameters

Parameter Required Included in Signature Description
pay_memberid Yes Yes Merchant ID assigned by the payment platform.
pay_orderid Yes Yes Unique merchant order ID. This is distinct from the platform order ID returned as order_sn.
pay_applydate Yes Yes Request time in yyyy-MM-dd HH:mm:ss format.
pay_bankcode Yes Yes Assigned Nagad or bKash deposit channel code from Channel Management → Channel Rates in the merchant portal.
pay_notifyurl Yes Yes Merchant server URL for asynchronous notifications. See the Deposit callback documentation.
pay_callbackurl Yes Yes Merchant browser return URL. A browser redirect does not confirm payment success.
pay_userid Yes Yes Transaction user ID. If unavailable, use an alternative such as the player's mobile number.
pay_amount Yes Yes Amount in BDT, at least 1000.00. Use a string with two decimal places and no thousands separators.
pay_md5sign Yes No Merchant MD5 signature generated using the rules below.
type No No json: return the platform checkout URL. string: return the wallet checkout URL. Any other value or omitted: redirect to the wallet checkout page.

Signature Rules

  1. Include only non-empty parameters marked Yes in the signature column.
  2. Sort their names in ascending ASCII order. Parameter names are case-sensitive.
  3. Concatenate the parameters as key=value&key=value.
  4. Append &key={merchant-md5-key}.
  5. Calculate the MD5 digest of the complete string and convert it to uppercase.
  6. Send the resulting value as pay_md5sign.

Use the merchant MD5 key assigned in the merchant portal.

Request Example

The following JSON illustrates the fields only. Submit the actual request as form data.

Replace the merchant ID, channel code and notification URLs, then recalculate the signature.

{
  "pay_memberid": "{merchant-id}",
  "pay_orderid": "BDTIN202610130001",
  "pay_applydate": "2026-10-13 12:00:00",
  "pay_bankcode": "{assigned-deposit-channel-code}",
  "pay_notifyurl": "https://merchant.example.com/bdt/notify",
  "pay_callbackurl": "https://merchant.example.com/bdt/return",
  "pay_userid": "USER0001",
  "pay_amount": "1000.00",
  "pay_md5sign": "{32-character-uppercase-md5-signature}",
  "type": "json"
}

Response Parameters

Both type=json and type=string return JSON on successful order creation.

Parameter Type Description
code string / integer 1 on success. type=json returns the string "1"; type=string returns the integer 1. Order creation failures use 0.
msg string Success on successful order creation. Error messages include pay_amount最小金额为1000 (minimum amount is 1000) or 下单失败 (order creation failed).
money string Order amount in BDT with two decimal places, for example "1000.00".
order_sn string Order ID generated by the payment platform.
payUrl string For type=json, the platform checkout URL uses /Pay_Pay_pay.html?orderid={platform-order-id}. For type=string, this is the wallet checkout URL.

Successful Response Example — type=json

{
  "code": "1",
  "msg": "Success",
  "money": "1000.00",
  "order_sn": "20261013120000000001",
  "payUrl": "https://{request-host}/Pay_Pay_pay.html?orderid=20261013120000000001"
}

Payment Confirmation and Integration Notes

  • A successful order creation response and payUrl only confirm that the deposit order has been created.
  • Confirm payment using the merchant server notification or the Deposit inquiry API.
  • Verify notification signatures according to the Deposit callback documentation.
  • Process each order idempotently to prevent duplicate credits.
  • This API returns code, money and order_sn. Do not use status, pay_amount or pay_orderid to parse the order creation response.
  • Merchant requests use the MD5 rules above. Merchant notifications follow the callback specification.