https://{$api_host}/api/pay
| 字段名 | 变量名 | 必填 | 签名 | 类型 | 示例值 | 描述 |
|---|
| 商户号 ID | merid | 是 | 是 | string | 10086 | 平台创建商户分配给商户 id |
| 商户订单号 | tno | 是 | 是 | string | tno1234578910jqk | 商户提交的订单号,限 32 位以内,数字字母组合. |
| 金额 | amt | 是 | 是 | string | 126.35 | 订单总金额,保留两位。 |
| 渠道 | chnl | 是 | 是 | string | CHNL_CODE | 渠道代码。每个商户使用到的渠道代码不一样,请参考文档结合商户后台选择使用(商户后台类型是dp的) |
| 终端 IP | client_ip | 否 | 是 | string | 127.0.0.1 | 发起支付请求客户端的 IP 地址,提供便于分地区提高成功率 |
| 通知地址 | notify_url | 是 | 是 | string | https://www.baidu.com | 异步通知。(在订单成功支付的时候回调 5s/10s/30s/180s/600s) |
| 同步回调 | return_url | 否 | 是 | string | https://www.baidu.com | 同步完成后显示地址 |
| 附加参数 | extra | 否 | 是 | string | | 特定渠道发起交易时需要的额外参数,以及部分渠道支付成功返回的额外参数 |
| 付款账户 | acct | 否 | 是 | object | | 请参考渠道入账场景acct及订单track说明。目前"ph_"开头的不需要传递此项 |
| 签名 | sign | 是 | 否 | string | c380be5... | 签名,详见签名生成算法 |
!! 特别注意:
- 上述非必填字段空的时候签名需要过滤掉
- url签名的时候是需要进行urlencode的
- 金额单位保留两位小数。特别注意".00"会被省略。签名时候特被注意。
- 如果提交了acct数据则签名的时候需要进行“展开处理”. 详细见签名。
- acct数据字段见最后“acct类型示例”。如果不清楚则可以忽略这个。
- 如果某个渠道不需要acct数据,而又传递了数据。这部分数据依然会被签名校验
{
"merid": "10086",
"tno": "sn1234578910jqk",
"amt": "50.00",
"chnl": "cscn_cspb",
"client_ip": "127.0.0.1",
"return_url": "https://www.baidu.com",
"notify_url": "https://www.baidu.com",
"extra": "",
"sign": "9a9cba23f9075ff01b2ed2050f52f42d"
}
| 字段名 | 变量名 | 类型 | 示例值 | 描述 |
|---|
| 平台订单号 | sn | string | sn12345678 | 返回的订单号 |
| 商户订单号 | tno | string | tno1234578910jqk | 商户提交的订单号 |
| 订单金额 | amt | string | 1200.20 | 订单总金额,单位为元。注意这里是格式化之后的字符串 如果要使用记得转换类型 |
| 手续费 | fee | string | 12.20 | 订单总金额,单位为元。注意这里是格式化之后的字符串 如果要使用记得转换类型 |
| 创建交易时间 | ctm | string | 2008-08-08 08:08:08 | 订单创建时间 |
| 交易过期时间 | etm | string | 2008-08-08 12:17:12 | 交易有效时间(截止时间)。不一定都会存在 |
| 返回数据 | data | string | 或数组 | 如果是扫码图片等使用,返回 base64 编码 |
| 跳转/柜台url | url | string | url地址 | 如果是跳转类/收银台,返回跳转 url |
| 收款账号数据 | acct | object | 部分渠道会返回 | |
{
"data":{
"sn": "sn12345678",
"tno": "tno1234578910jqk",
"amt": "100.00",
"ctm": "2008-08-08 08:08:08",
"etm": "2008-08-08 12:17:12",
"url": "http://abc.com/payment/pay/A20191107055050B07115.html",
"acct":{
"name": "张三",
"acct": "1234567890"
}
}
}
- 如果是跳转类型。则返回的是收银台。且不会包含acct数据
- 如果是含收银台类。返回数据是url+ acct。收款账号数据部分渠道会返回。这个数据是用来自制收银台的。如果自制收银台。需要完成收款账号数据的展示
https://{$api_host}/api/pay/query
| 字段名 | 变量名 | 必填 | 类型 | 示例值 | 描述 |
|---|
| 商户号 | merid | 是 | string | 10086 | 创建分配给商户的数字号。非登录账号 |
| 平台单号 | sn | 是 | string | sn1234578910jqk | 我方的单号。不是贵公司的业务单号 |
| 商户单号 | tno | 是 | string | tno1234578910jqk | 商户提交的订单号 |
| 签名 | sign | 是 | string | c380bec2bfd727a4..... | 签名,详见签名生成算法 |
!!!
- 平台单号、商户单号。至少要提供一个。商户单号只能查询到近3日数据
{
"merid": "10086",
"sn": "sn1234578910jqk",
"sign":"9a9cba2119075ff01b2ed2050f52f42d"
}
| 字段名 | 变量名 | 类型 | 示例值 | 描述 |
|---|
| 商户号 | merid | string | 10086 | 创建分配给商户的数字号。非登录账号 |
| 平台订单号 | sn | string | sn12345678 | 返回的订单号 |
| 商户订单号 | tno | string | tno1234578910jqk | 商户提交的订单号 |
| 创建交易时间 | ctm | string | 2008-08-08 08:08:08 | 订单创建时间时间戳 |
| 订单金额 | amt | float | 1260.35 | 订单总金额,单位为元,详见支付金额 |
| 订单手续费 | fee | float | 12.35 | 订单手续费 |
| 订单状态 | sts | string | success | success—支付成功 |
| 签名 | sign | string | 1d48ac07237fa.. | 验证信息是否正确 |
{
"data":{
"merid": "10086",
"sn": "sn123456",
"tno": "tno12345678910jqk",
"amt": "1000.00",
"fee": "12.35",
"ctm": "2000-10-10 08:08:08",
"sts": "submit",
"acct":{
"name": "张三",
"acct": "1234567890"
}
}
}
| 状态值 | 说明 |
|---|
| submit | 提交成功 |
| paying | 支付中 |
| fail | 支付失败 |
| success | 成功 |
| close | 关闭 |