跳至主要內容

代收订单 · 孟加拉

TOPPAY Team大约 4 分钟

概述

代收 API 用于向客户发起代收交易。本页为 孟加拉(国家码 bd)的代收能力说明,支持以下两种下单方式:

下单方式路径说明
收银台模式/pay/prePay默认模式,返回 cashierUrl,用户跳转平台 H5 收银台完成支付
API 模式/pay/transOrder请求中必须指定 method,直接返回 payData / payDataType(上游支付页跳转链接)
  • 金额单位为 BDT代收不支持非零小数,须为正整数塔卡(示例:100100.0100.00 均可;100.50 会拒单)。
  • method(孟加拉代收方式编码)见 地区支付说明 — 孟加拉

接入说明

默认开通收银台模式。如需对接 API 模式,请联系客服申请商户白名单后再集成。

请求头

两种模式共用:

字段必填类型描述
Content-TypeMString固定值:application/json

收银台模式(prePay)

商户预下单后获取 cashierUrl,引导用户至平台收银台选择支付方式并完成付款。

请求路径

域名:推荐使用统一域名 openapi.toppayment.com(路径不变);原国别域名(如 global-bd-openapi.toppayment.com)仍可用。

环境地址
沙箱https://openapi.toppayment.com/sandbox/bd/pay/prePay
生产https://openapi.toppayment.com/bd/pay/prePay

请求体

字段必填类型描述
mchNoMString(32)商户编号
orderNumMString(64)商户订单号
amountMNumber交易金额(BDT,正整数塔卡;100.00 视为整数,100.50 拒单)
productDetailMString(100)产品详情
methodOString(16)支付方式,可选;不传则用户在收银台选择。见 孟加拉代收编码
timestampMString(13)毫秒时间戳
customerNameMString(64)客户姓名
customerEmailMString(64)客户邮箱
customerPhoneOString(32)客户钱包号,建议 01 开头 11 位数字
downNotifyUrlMString(255)异步通知地址
redirectUrlOString(512)支付完成跳转地址
signMStringRSA 签名,参见 签名生成

请求体示例

{
    "mchNo": "{{mchNo}}",
    "orderNum": "BD1234561",
    "amount": 1000.00,
    "productDetail": "test",
    "method": "BKASH",
    "timestamp": "1749451858772",
    "customerName": "Rahim Uddin",
    "customerEmail": "[email protected]",
    "customerPhone": "01880612345",
    "downNotifyUrl": "https://example.com/notify",
    "redirectUrl": "https://example.com/paid",
    "sign": "按签名规则生成后替换"
}

响应字段

字段必填类型描述
successMBoolean请求是否成功
codeMString9999:成功;其他:失败
msgOString响应消息,成功时为 null
timeStampMNumber响应时间戳(毫秒)
dataMObject响应数据
orderNumMString商户订单号
platOrderNumMString平台订单号
amountMNumber交易金额
feeMNumber手续费
methodOString支付方式(若请求未传则为空,以收银台选择为准)
productDetailMString产品详情
customerNameMString客户姓名
customerEmailMString客户邮箱
customerPhoneOString客户钱包号
validTimeMNumber订单过期时间(毫秒时间戳)
cashierUrlMString平台收银台 URL

响应说明

收银台模式不返回 payDatapayDataType;支付凭证字段仅见于 API 模式 响应。

响应示例

{
    "success": true,
    "code": "9999",
    "msg": null,
    "timeStamp": 1767840272829,
    "data": {
        "orderNum": "BD1234561",
        "platOrderNum": "BDPTJ2009093829059153920",
        "amount": 1000.00,
        "fee": 20.00,
        "method": "BKASH",
        "productDetail": "test",
        "customerName": "Rahim Uddin",
        "customerEmail": "[email protected]",
        "customerPhone": "01880612345",
        "validTime": 1767926672819,
        "cashierUrl": "https://example.cashier/pay"
    }
}

API 模式(transOrder)

商户在请求中指定支付方式后,直接向支付通道发起交易,并在响应中返回 payData / payDataType,无需跳转平台 H5 收银台。

请求路径

环境地址
沙箱https://openapi.toppayment.com/sandbox/bd/pay/transOrder
生产https://openapi.toppayment.com/bd/pay/transOrder

请求体

与收银台模式相比,差异如下:

字段必填类型描述
methodMString(16)支付方式(孟加拉)
API 模式必传。支持 BKASHNAGAD,见 地区支付说明 — 孟加拉

其余字段与收银台模式相同。

请求体示例

{
    "mchNo": "{{mchNo}}",
    "orderNum": "BDPAYINAPI1234561",
    "amount": 1000.00,
    "productDetail": "test",
    "method": "BKASH",
    "timestamp": "1749451858772",
    "customerName": "Rahim Uddin",
    "customerEmail": "[email protected]",
    "customerPhone": "01880612345",
    "downNotifyUrl": "https://example.com/notify",
    "redirectUrl": "https://example.com/paid",
    "sign": "按签名规则生成后替换"
}

响应字段

公共响应字段(successcodemsgtimeStampdata 中的 orderNumplatOrderNumamountfeemethodproductDetailcustomerNamecustomerEmailcustomerPhonevalidTime)与收银台模式相同。API 模式重点关注:

字段必填类型描述
payDataMString支付数据,通常为上游支付页跳转链接,具体含义由 payDataType 决定
payDataTypeMString支付数据类型;孟加拉钱包场景为 CASHIER_URL
cashierUrlOString部分通道可能同时返回;API 模式请以 payData 为准

payDataType 说明

payDataType说明典型 method
CASHIER_URL上游支付页跳转链接BKASH、NAGAD

响应示例

{
    "success": true,
    "code": "9999",
    "msg": null,
    "timeStamp": 1767840272829,
    "data": {
        "orderNum": "BDPAYINAPI1234561",
        "platOrderNum": "BDPTJ2009093829059153920",
        "amount": 1000.00,
        "fee": 20.00,
        "method": "BKASH",
        "productDetail": "test",
        "customerName": "Rahim Uddin",
        "customerEmail": "[email protected]",
        "customerPhone": "01880612345",
        "validTime": 1767926672819,
        "cashierUrl": "https://sg-cb.megipay.com/api/v1/sandbox/order.html?type=1&order_no=MegExample",
        "payData": "https://sg-cb.megipay.com/api/v1/sandbox/order.html?type=1&order_no=MegExample",
        "payDataType": "CASHIER_URL"
    }
}

通知

两种下单方式的异步通知一致;status交易状态码。收到后请返回字符串 SUCCESS