API开发文档简介
本文阅读对象:使用 鼎信国际 商户自服务系统的技术架构师、研发工程师、系统运维工程师。通过本文档,商户可了解 鼎信国际 接入的技术、接入的产品业务、接入的流程、接入规范等信息,以便于商户顺利完成接入工作。
接入网关
请登录商户中心,API管理》API开发文档,查看商户号、商户密钥等参数。
签名算法
一句话概览:把“参与签名”的参数按参数名升序排列,按 k=v& 连接成字符串,末尾追加 &key=商户密钥,对整个字符串做 MD5 并转大写,得到 sign
签名步骤
  1. 确定参与签名的字段
    以参数表“参与签名=是”为准。请求里出现但标记为“不参与签名”的字段一律忽略;sign 本身不参与签名。
  2. 按参数名排序
    对参与签名的“参数名”做 ASCII 升序(字典序升序)。
    Python:sorted(dict.items())
    Golang:sort.Strings(keys)
    Java:new TreeMap<>()
    PHP:ksort()
  3. 拼接待签名字符串
    按排序后的顺序拼成 k=v,并用 & 连接:
    k1=v1&k2=v2&k3=v3...
    然后把 &key=商户密钥 追加到最后面
    k1=v1&k2=v2&k3=v3...&key=xxxxxx
  4. 生成 sign
    sign = MD5(待签名字符串).toUpperCase()
示例
待签名字符串:
pay_amount=10&pay_applydate=2020-02-18 11:42:53&pay_bankcode=904&pay_callbackurl=https://zfbh5.com/Pay_Test_callback.html&pay_memberid=10111&pay_notifyurl=https://zfbh5.com/Pay_Test_notify.html&pay_orderid=2020021811425310052559&key=96e79218965eb72c92a549dd5a330112
计算:
sign=MD5(stringSignTemp).toUpperCase()
最终签名:CEC49EC102B90C6E0FA6E831502A4845
常见问题(签名不一致时先对照这里)
  • 确认参与签名的字段集合与参数表一致(尤其是回调/返回时有些字段可能不参与)。
  • key 必须放在最后,格式固定为 &key=商户密钥
  • sign 不参与签名,不要把 sign 自己再拼进去。
  • MD5 结果需要转大写
代收提交接口
接口信息
POST form-data (multipart/form-data) UTF-8
接口地址: https://dxgj68.com/Pay_Index.html
说明:按下表提交参数,其中 pay_md5sign 为签名字段,计算方法见 签名算法
参数 类型 必填 参与签名 描述
pay_memberid int(10) 平台分配的商户号
pay_orderid string(32) 订单号, 需保证唯一性
pay_applydate datetime 提交时间,如:2038-01-01 10:00:13
pay_bankcode int(10) 银行编码, 取值范围:1251-越南银行卡扫码, 1252-越南MOMO 1253-越南zalo
pay_notifyurl string(255) 订单成功通知地址(请求方式:post form-data)
pay_callbackurl string(255) 页面跳转返回地址(GET返回数据)
pay_amount float(15, 2) 订单金额, 单位:元
pay_productname string(32) 商品名称
pay_productnum int(10) 商品数量
pay_productdesc string(32) Iphone6 16G
pay_producturl string(255) 商品链接地址
visitor_id string(32) 用户标识,如会员ID、设备ID,在return_type=3时必传
pay_cardnumber integer 拉空单时收款银行卡号
pay_orderidold string 拉空单时原商户订单号
pay_kyc string 泰国传卡号,其它国家不用传
return_type int(10) 返回类型,取值范围:2-支付链接(需商户自行提取并传递),3-收款信息(商户自建收银台使用)
pay_md5sign string(32) 签名字段,计算方法见 签名算法
返回说明
接口返回固定包含 codemsgdata 三个字段;其中 data 会随 return_type 不同而变化:
  • return_type=2:data 为支付链接(string)
  • return_type=3 或传入 pay_cardnumber 拉空单:data 为收款信息(object)
返回字段(通用)
参数 类型 必填 描述
code string(32) 状态, 取值范围: success-成功, error-失败
msg string(32) 状态描述
data string / object 返回数据(结构随 return_type 不同,见下方)
return_type=2:支付链接(data 为 string)
参数 类型 必填 描述
data string(255) 收银台跳转链接
return_type=3(或拉空单):收款信息(data 为 object)
参数 类型 必填 描述
data object 收款信息
↳ pay_orderid string(32) 平台交易流水号
↳ out_trade_id string(32) 商户订单号
↳ truename string(32) 收款人姓名
↳ card_no string(32) 收款人银行卡号
↳ bank_name string(32) 收款人银行名称
↳ pay_useramount string 订单支付金额
↳ qr_url string 支付二维码链接
↳ qr_text string 支付二维码内容
↳ remark string 付款备注
↳ account_id string 账号id
↳ jump_url string 收银台跳转链接
代收订单回调
接口信息
POST form-data (multipart/form-data) UTF-8
说明:当订单支付成功后,平台会立即向商户的 pay_notifyurl 发起回调通知(POST form-data)。
商户需做:接收参数 → 按 签名算法 验签 → 处理业务逻辑。
如何确认成功:处理成功后,请在 HTTP 响应体输出 OK(不带引号,必须大写)。返回 OK 表示“商户已成功收到并处理本次通知”,平台将停止继续通知。
重试规则:若未返回 OK(包含超时/返回其它内容/HTTP 异常),平台将每隔 1 分钟重试一次,最多重试 30 次(约 30 分钟)。
回调参数
参数 类型 必填 参与签名 描述
memberid int(10) 平台分配商户号
orderid string(32) 商户订单号, 字符长度32
amount float(15, 4) 订单金额
transaction_id string(32) 平台交易流水号
datetime datetime 交易时间
returncode string(2) 交易状态 00表示成功,其它表示失败
attach string(255) 商户附加数据返回
sign string(32) 签名字段,计算方法见 签名算法
订单查询接口
接口信息
POST form-data (multipart/form-data) UTF-8
接口地址: https://dxgj68.com/Pay_Trade_query.html
请求参数
参数 类型 必填 参与签名 描述
pay_memberid int(10) 平台分配的商户号
pay_orderid string(32) 订单号, 需保证唯一性
pay_md5sign string(32) 签名字段,计算方法见 签名算法
返回参数
参数 类型 必填 参与签名 描述
memberid int(10) 平台分配商户号
orderid string(32) 商户订单号, 字符长度32
amount float(15, 4) 订单金额
time_end datetime 支付时间
transaction_id string(32) 平台订单号
returncode string(2) 交易状态 00表示成功,其它表示失败
trade_state string 订单状态英文, 取值范围:SUCCESS-支付成功,NOTPAY-未支付
sign string(32) 签名字段,计算方法见 签名算法
掉单提交接口
接口信息
POST form-data (multipart/form-data) UTF-8
接口地址: https://dxgj68.com/Pay_Trade_lost.html
请求参数
参数 类型 必填 参与签名 描述
pay_memberid int(10) 商户号
pay_orderid string(32) 商户订单号
img text 图片 base64 编码,仅支持 png,最大 5M
pay_md5sign string(32) 签名字段,计算方法见 签名算法
返回参数
参数 类型 必填 描述
status string(32) 状态, 取值范围: success-成功, error-失败
msg string(32) 状态描述
transaction_id string(32) 平台订单号
img_url string(255) 平台图片链接地址
代付提交接口
接口信息
POST form-data (multipart/form-data) UTF-8
接口地址: https://dxgj68.com/Payment_Dfpay_add.html
请求参数
参数 类型 必填 参与签名 描述
mchid int(10) 平台分配商户号
out_trade_no string(32) 商户订单号(最大长度32),需保证唯一值
currency_type int(10) 货币类型,取值范围: 1-越南盾, 3-印尼盾, 4-巴基斯坦卢比, 默认值1
money float(15, 2) 代付金额,单位:元,只支持两位小数点
accountname string(32) 开户名
accounttype int(10) 银行账号类型,取值范围: 1-卡号收款,2-二维码收款, 默认值1
bankid int(10) 开户行ID(accounttype为1时必填), 银行信息对照表》
cardnumber string(32) 银行卡号(accounttype为1时必填)
qrbase64 string 收款码base64编码(accounttype为2时必填)
notifyurl string(255) 异步通知地址(请求方法:POST, 请求体编码格式:form-data)
subbranch string(32) 支行名称
pay_md5sign string(32) 签名字段,计算方法见 签名算法
返回参数
参数 类型 必填 描述
status string(32) 状态, 取值范围: success-成功, error-失败
msg string(32) 状态描述
transaction_id string(32) 平台订单号
代付订单回调
接口信息
POST form-data (multipart/form-data) UTF-8
说明:当订单状态变更完成后,平台会立即向商户的 notifyurl 发起回调通知(POST form-data)。
商户需做:接收参数 → 按 签名算法 验签 → 处理业务逻辑。
如何确认成功:处理成功后,请在 HTTP 响应体输出 OK(不带引号,必须大写)。返回 OK 表示“商户已成功收到并处理本次通知”,平台将停止继续通知。
重试规则:若未返回 OK(包含超时/返回其它内容/HTTP 异常),平台将每隔 1 分钟重试一次,最多重试 30 次(约 30 分钟)。
回调参数
参数 类型 必填 参与签名 描述
status string(32) 状态, 取值范围: success-成功
msg string(32) 状态描述
mchid int(10) 商户号
out_trade_no string(32) 商户订单号
amount float(15, 2) 代付金额
transaction_id string(32) 平台订单号
refCode string(10) 代付订单状态,1-已打款,5-已驳回
refMsg string(32) 代付订单状态描述
success_time datetime 付款成功时间
memo string(32) 驳回时的原因
img_url string(255) 凭证url地址
truename string(32) 付款人姓名
card_no string(32) 付款卡号
bank_name string(32) 付款银行名称
sign string(32) 签名字段,计算方法见 签名算法
代付查询接口
接口信息
POST form-data (multipart/form-data) UTF-8
接口地址: https://dxgj68.com/Payment_Dfpay_query.html
请求参数
参数 类型 必填 参与签名 描述
mchid int(10) 商户号
out_trade_no string(32) 商户订单号
pay_md5sign string(32) 签名字段,计算方法见 签名算法
返回参数
参数 类型 必填 参与签名 描述
status string(32) 状态, 取值范围: success-成功
msg string(32) 状态描述
mchid int(10) 商户号
out_trade_no string(32) 商户订单号
amount float(15, 2) 代付金额
transaction_id string(32) 平台订单号
refCode string(10) 代付订单状态,1-已打款,2-已驳回,3-处理中,4-待处理,8-未知
refMsg string(32) 代付订单状态描述
success_time datetime 付款成功时间
memo string(32) 驳回时的原因
img_url text 凭证url地址
sign string(32) 签名字段,计算方法见 签名算法
账户余额查询接口
接口信息
POST form-data (multipart/form-data) UTF-8
接口地址: https://dxgj68.com/Payment_Dfpay_balance.html
请求参数
参数 类型 必填 参与签名 描述
mchid int(10) 商户号
currency_type int(10) 货币类型,取值范围: 1-越南盾, 3-印尼盾, 4-巴基斯坦卢比, 默认值1
pay_md5sign string(32) 签名字段,计算方法见 签名算法
返回参数
参数 类型 必填 参与签名 描述
status string(32) 状态, 取值范围: success-成功
msg string(32) 状态描述
mchid int(10) 商户号
balance float(15, 2) 可提现余额
blockedbalance float(15, 2) 冻结余额
pay_md5sign string(32) 签名字段,计算方法见 签名算法
提现提交接口
接口信息
POST form-data (multipart/form-data) UTF-8
接口地址: https://dxgj68.com/Payment_Withdrawal_add.html
请求参数
参数 类型 必填 参与签名 描述
mchid int(10) 商户号
out_trade_no string(32) 商户订单号
currency_type int(10) 货币类型,取值范围: 1-越南盾, 3-印尼盾, 4-巴基斯坦卢比, 默认值1
money float(15, 2) 提现金额,单位:元,只支持两位小数点
bankname string(32) 开户行名称
accountname string(32) 开户名
cardnumber string(32) 银行卡号
notifyurl string(255) 异步通知地址(请求方式:post form-data)
subbranch string(32) 支行名称
pay_md5sign string(32) 签名字段,计算方法见 签名算法
返回参数
参数 类型 必填 描述
status string(32) 状态, 取值范围: success-成功, error-失败
msg string(32) 状态描述
transaction_id string(32) 平台订单号
提现订单回调
接口信息
POST form-data (multipart/form-data) UTF-8
说明:当订单状态变更完成后,平台会立即向商户的 notifyurl 发起回调通知(POST form-data)。
商户需做:接收参数 → 按 签名算法 验签 → 处理业务逻辑。
如何确认成功:处理成功后,请在 HTTP 响应体输出 OK(不带引号,必须大写)。返回 OK 表示“商户已成功收到并处理本次通知”,平台将停止继续通知。
重试规则:若未返回 OK(包含超时/返回其它内容/HTTP 异常),平台将每隔 1 分钟重试一次,最多重试 30 次(约 30 分钟)。
回调参数
参数 类型 必填 参与签名 描述
status string(32) 状态, 取值范围: success
msg string(32) 状态描述
mchid int(10) 商户号
out_trade_no string(32) 商户订单号
amount float(15, 2) 提现金额
transaction_id string(32) 平台订单号
refCode string(10) 提现订单状态,1-已打款,5-已驳回
refMsg string(32) 提现订单状态描述
success_time datetime 成功时间
memo string(32) 驳回时原因
img text 已打款时凭证截图,格式base64编码
sign string(32) 签名字段,计算方法见 签名算法
提现查询接口
接口信息
POST form-data (multipart/form-data) UTF-8
接口地址: https://dxgj68.com/Payment_Withdrawal_query.html
请求参数
参数 类型 必填 参与签名 描述
mchid int(10) 商户号
out_trade_no string(32) 商户订单号
pay_md5sign string(32) 签名字段,计算方法见 签名算法
返回参数
参数 类型 必填 参与签名 描述
status string(32) 状态, 取值范围: success
msg string(32) 状态描述
mchid int(10) 商户号
out_trade_no string(32) 商户订单号
amount float(15, 2) 提现金额
transaction_id string(32) 平台订单号
refCode string(10) 提现订单状态,1-已打款,3-处理中,4-待处理,5-已驳回,8-未知
refMsg string(32) 提现订单状态描述
success_time datetime 成功时间
memo string(32) 驳回时原因
img text 已打款时凭证截图,格式base64编码
sign string(32) 签名字段,计算方法见 签名算法