协议规则
请求格式 application/x-www-form-urlencoded 返回格式 JSON 签名算法 MD5 字符编码 UTF-8
页面跳转支付
适用于前台直接发起支付,支持 form 表单或 URL 跳转。
| 字段名 | 变量名 | 必填 | 类型 | 示例值 | 描述 |
|---|---|---|---|---|---|
| 商户ID | pid | 是 | Int | 1001 | 平台分配商户号 |
| 支付方式 | type | 否 | String | alipay | 支付方式列表 |
| 商户订单号 | out_trade_no | 是 | String | 20160806151343349 | 唯一 |
| 异步通知地址 | notify_url | 是 | String | http://www.pay.com/notify.php | 服务器异步通知 |
| 跳转通知地址 | return_url | 是 | String | http://www.pay.com/return.php | 同步跳转 |
| 商品名称 | name | 是 | String | VIP会员 | 超过127字节自动截取 |
| 商品金额 | money | 是 | String | 1.00 | 单位元,最多两位小数 |
| 业务扩展参数 | param | 否 | String | 自定义参数 | 支付后原样返回 |
| 签名字符串 | sign | 是 | String | 202cb962ac59075b964b07152d234b70 | 签名算法 |
| 签名类型 | sign_type | 是 | String | MD5 | 默认MD5 |
请求地址: https://pay.pr06.cn/submit.php (POST/GET)
提示:不传递
type 参数时会跳转至收银台,用户自主选择支付方式。API接口支付
后端发起支付,返回二维码链接 / 支付跳转URL / 小程序scheme。
| 字段名 | 变量名 | 必填 | 类型 | 示例值 | 描述 |
|---|---|---|---|---|---|
| 商户ID | pid | 是 | Int | 1001 | - |
| 支付方式 | type | 是 | String | wxpay | 支付方式列表 |
| 商户订单号 | out_trade_no | 是 | String | 202408211234 | 唯一订单号 |
| 异步通知地址 | notify_url | 是 | String | http://domain/notify.php | 异步回调 |
| 跳转通知地址 | return_url | 否 | String | http://domain/return.php | 同步跳转 |
| 商品名称 | name | 是 | String | 月度会员 | - |
| 商品金额 | money | 是 | String | 19.99 | 精确到分 |
| 用户IP地址 | clientip | 是 | String | 192.168.1.100 | 客户端真实IP |
| 设备类型 | device | 否 | String | 设备类型列表 | |
| 扩展参数 | param | 否 | String | order123 | 原样返回 |
| 签名字符串 | sign | 是 | String | md5值 | 参照签名规则 |
| 签名类型 | sign_type | 是 | String | MD5 | - |
API地址: https://pay.pr06.cn/mapi.php (POST)
返回JSON示例:
{
"code": 1,
"msg": "success",
"trade_no": "202408211234567",
"payurl": "https://pay.domain/pay/xxx",
"qrcode": "weixin://wxpay/bizpayurl?pr=xxx",
"urlscheme": "weixin://dl/business/?t=xxx"
}
其中
payurl、qrcode、urlscheme 仅返回其一,根据支付场景适配。支付结果通知
服务器异步通知 notify_url 与 页面跳转通知 return_url 均通过 GET 方式回调以下参数。
| 字段名 | 变量名 | 说明 |
|---|---|---|
| 商户ID | pid | 平台商户号 |
| 易支付订单号 | trade_no | 系统订单号 |
| 商户订单号 | out_trade_no | 原始商户订单号 |
| 支付方式 | type | alipay / wxpay / unionpay |
| 商品名称 | name | 商品标题 |
| 商品金额 | money | 实际支付金额 |
| 支付状态 | trade_status | TRADE_SUCCESS 代表成功 |
| 扩展参数 | param | 原样透传 |
| 签名 | sign | MD5签名 |
| 签名类型 | sign_type | MD5 |
异步通知收到后请务必返回字符串
success(不加任何HTML及空格),否则系统会重发通知。MD5签名算法
1. 将所有请求参数(sign、sign_type 以及空值不参与)按照参数名 ASCII 升序排序。
2. 排序后拼接为 url 键值对格式:key1=value1&key2=value2(不转义特殊字符)。
3. 拼接商户密钥 KEY 得到待签名字符串:待签名字符串 + KEY。
4. 对上述字符串进行 MD5 哈希,得到 32 位小写签名字符串。
示例:
参数: pid=1001&money=1.00&name=会员&out_trade_no=202501011234
商户KEY = 5hG7Lk2d9F1sX
待签名字符串 = "money=1.00&name=会员&out_trade_no=202501011234&pid=1001" + "5hG7Lk2d9F1sX"
sign = md5(待签名字符串) -> 32位小写
开发建议:参考官方 SDK 或各语言示例代码实现。
支付方式列表
| 调用值 | 描述 |
|---|---|
alipay | 支付宝支付 |
wxpay | 微信支付 |
unionpay | 云闪付 |
设备类型列表
| 调用值 | 描述 |
|---|---|
pc | 电脑浏览器 |
mobile | 手机浏览器 |
qq | 手机QQ内建浏览器 |
wechat | 微信内浏览器 |
alipay | 支付宝客户端 |
pr06a61y pay · 开发文档 · 聚合支付接口规范