预支付订单接口
接口说明
预支付订单接口是聚合支付系统的核心支付接口,支持微信公众号支付场景。
适用对象
间连商户
请求URL
https://openapi.shuhuipay.com/v1/order/preCreate请求方法
POST
公共参数说明详见「通用规则 - API公共参数」部分
预下单流程图
业务参数
| 参数 | 类型 | 必填 | 参数说明 |
|---|---|---|---|
paymentMethod |
String | Y | 支付编码(参考支付编码枚举) |
orderNo |
String | Y | 商户订单号(建议唯一) |
amount |
String | Y | 支付金额(单位元,保留两位小数,如 0.01) |
subject |
String | Y | 商品名称,展示于支付渠道订单 |
notifyUrl |
String | Y | 异步通知地址,需可公网访问的 HTTPS 地址 |
returnUrl |
String | C | 页面跳转地址,支付完成需要跳转时必填 |
clientIp |
String | Y | 下单用户公网 IP,例如 152.33.40.28 |
merchantUrl |
String | N | 商家网站地址,如 https://shop.xxx.com |
description |
String | N | 商品描述,仅保留内部,不上传渠道 |
needCode |
String | N | 是否需要返回二维码 |
expireMinutes |
String | N | 订单超时时间,单位分钟,最大 1440(默认 10 分钟) |
参数说明:Y: 必填,N: 非必填,C: 条件必填
正扫:商户系统调用该接口生成预支付链接,可直接跳转支付,也可将链接转换成二维码,消费者扫码支付。
接口返回参数
公共返回参数
| 参数 | 类型 | 必须 | 参数说明 |
|---|---|---|---|
code |
String | Y | 响应状态码,成功 0000 |
message |
String | Y | 响应描述 |
timestamp |
String | Y | 响应时间戳,UTC 时间,ISO 8601 格式 |
data |
Object | N | 业务数据,无数据时返回空对象 {} |
响应附加参数(data)
| 参数 | 类型 | 必须 | 参数说明 |
|---|---|---|---|
transactionNo |
String | Y | 平台订单号 |
expiredTime |
String | Y | 订单过期时间 |
url |
String | Y | 授权链接,让用户手动触发,也可以直接显示授权二维码 |
qrcode |
String | Y | 授权二维码,用户扫码授权后直接调起微信公众号支付 |
参数说明:Y: 返回,N: 不返回,C: 条件返回
请求示例
支付请求示例(微信公众号)
JSON
{
"appId": "you_system_appid",
"subMerchantNo": "your_user_id",
"bizContent": "{\"paymentMethod\":\"WX_OFFICIAL_ACCOUNT\",\"notifyUrl\":\"/api/notify/huifu/handle\",\"orderNo\":\"TEST202607021449024813\",\"subject\":\"测试订单-144902\",\"merchantUrl\":\"www.sh.com\",\"amount\":\"0.01\",\"clientIp\":\"127.0.0.1\",\"needCode\":\"1\"}",
"version": "1.0",
"nonce": "49d55020fa3adf6ed67b253c583ccdaa",
"contentHash": "95772c8a0c74e52b707e2ace5963e0eae956e8b1ae26e86a6cde5469247d0382",
"timestamp": "2026-07-02 14:33:11",
"sign": "your_sign"
}
返回示例
返回示例
JSON
{
"code": "0000",
"message": "Success",
"timestamp": "2026-07-01T10:30:00.000Z",
"data": {
"transactionNo": "SHPAY202607011030001234567890",
"expiredTime": "2026-07-03 14:51:56",
"url": "https://open.weixin.qq.com/connect/oauth2/authorize?appid=wxb8bea53ef1bf6c3d&redirect_uri=https%3A%2F%2Fuser.shuhuipay.com%2Fwechat%2Fpay.html%3Ftrade_no%3DSHPAY202607231044488706532&response_type=code&scope=snsapi_base&state=6852b5118a054dfd83903cdc608b0778#wechat_redirect",
"qrcode": "https://api.shuhuipay.com/upload/qrcode/202607/23/104449_62e1277c.png"
}
}
失败返回示例
JSON
{
"code": "4001",
"message": "缺少必填参数 paymentMethod",
"timestamp": "2026-07-01T10:30:00.000Z",
"data": {}
}
支付编码枚举
线上具体支付方式可在商户后台查看最新的数据,此处仅展示部分常用通道。
线上通道(正扫)
名称
支付编码
微信JS支付
WX_OFFICIAL_ACCOUNT注意事项
重要提醒:
- 所有金额参数使用字符串类型,保留两位小数
- 商户订单号建议保持唯一性,避免重复提交
- 异步通知地址必须是可公网访问的 HTTPS 地址
- 签名算法和参数排序规则请参考「签名与加密」文档
- 测试环境和生产环境使用不同的网关地址
开发建议
- 建议在正式环境使用前,先在测试环境充分测试各种支付场景
- 实现异步通知处理逻辑,确保订单状态的准确性
- 合理设置订单超时时间,避免长时间占用资源
- 对于分账功能,请确保分账金额总和不超过订单总金额
请求格式说明:主体参数包括 appId、subMerchantNo、bizContent、sign;业务参数放在 bizContent 字段中,以 JSON 字符串形式传递,需要进行 JSON 转义。
© 2026 数汇支付平台 | API 文档版本 v1.0