Skip to content

统一下单规则 ​

更新时间:2026-07-01

接口说明 ​

统一下单接口是聚合支付系统的核心支付接口,支持多种支付方式包括PC/H5/JSAPI(生成支付链接,商户可直接跳转或封装为二维码)、支付宝小程序、微信小程序等支付场景。

接口信息

  • 适用对象:间连商户
  • 请求 URL:https://webpayapi.com/openapi/v1/order/create
  • 请求方法:POST

ℹ️ 公共参数说明详见 通用规则 - API公共参数 部分

下单流程图 ​

下单流程图

业务参数 ​

参数类型必填参数说明
paymentMethodStringY支付编码(参考支付编码枚举)
orderNoStringY商户订单号(建议唯一)
amountStringY支付金额(单位元,保留两位小数,如 0.01)
subjectStringY商品名称,展示于支付渠道订单
notifyUrlStringY异步通知地址,需可公网访问的 HTTPS 地址
returnUrlStringC页面跳转地址,支付完成需要跳转时必填
clientIpStringY下单用户公网 IP,例如 152.33.40.28
merchantUrlStringN商家网站地址,如 https://shop.xxx.com
descriptionStringN商品描述,仅保留内部,不上传渠道
needCodeStringN是否需要返回二维码
openIdStringC微信小程序支付必传,微信用户OPENID
buyerIdStringN支付宝JSAPI支付必传,2088开头的16位纯数字
expireMinutesStringN订单超时时间,单位分钟,最大 1440(默认 10 分钟)

参数说明:Y: 必填,N: 非必填, C: 条件必填

WARNING

⚠️正扫:商户系统调用该接口生成预支付链接,可直接跳转支付,也可将链接转换成二维码,消费者扫码支付。

接口返回数据 ​

响应附加参数(data) ​

参数类型必须参数说明
transactionNoStringY平台订单号
expiredTimeStringY订单过期时间
typeStringYjump-支付链接;alipay-支付宝小程序支付;wechat-微信小程序支付
jumpUrlStringC支付链接,类型为 jump 时返回
qrCodeStringC二维码链接,类型为 jump 并且有传 needCode 时返回
payInfoObjectC支付返回信息,类型为alipay或wechat时返回
└── schemaUrlStringN支付宝小程序支付链接
└── appIdStringN微信小程序appid
└── pathStringN微信小程序页面支付路径
└── schemeCodeStringN外部拉取微信小程序支付链接
miniPayInfoObjectC类型为mini时返回,微信小程序调起支付所需参数
└── appIdStringN微信小程序appid
└── timeStampStringN
└── nonceStrStringN
└── packageStringN
└── signTypeStringN
└── paySignStringN

参数说明:Y: 必填,N: 非必填, C: 条件必填

请求示例 ​

支付请求示例(PC/H5/微信公众号/支付宝JS/支付宝正扫) ​

json
{
  "appId": "you_system_appid",
  "subMerchantNo": "your_user_id",
  "bizContent": "{\"paymentMethod\":\"WECHAT_JSAPI\",\"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
{
  "appId": "you_system_appid",
  "subMerchantNo": "your_user_id",
  "bizContent": "{\"paymentMethod\":\"WECHAT_MINIAPP\",\"openId\":\"o8jhotzittQSetZ-N0Yj4Hz91Rqc\",\"notifyUrl\":\"/api/notify/huifu/handle\",\"orderNo\":\"TEST202607021506596406\",\"subject\":\"测试订单-150659\",\"merchantUrl\":\"www.sh.com\",\"amount\":\"0.01\",\"clientIp\":\"127.0.0.1\"}",
  "version": "1.0",
  "nonce": "49d55020fa3adf6ed67b253c583ccdaa",
  "contentHash": "95772c8a0c74e52b707e2ace5963e0eae956e8b1ae26e86a6cde5469247d0382",
  "timestamp": "2026-07-02 14:33:11",
  "sign": "your_sign"
}

支付请求示例(微信小程序托管支付) ​

json
{
  "appId": "you_system_appid",
  "subMerchantNo": "your_user_id",
  "bizContent": "{\"paymentMethod\":\"WECHAT_MINI\",\"notifyUrl\":\"/api/notify/huifu/handle\",\"orderNo\":\"TEST202607021506596406\",\"subject\":\"测试订单-150659\",\"merchantUrl\":\"www.sh.com\",\"amount\":\"0.01\",\"clientIp\":\"127.0.0.1\"}",
  "version": "1.0",
  "nonce": "49d55020fa3adf6ed67b253c583ccdaa",
  "contentHash": "95772c8a0c74e52b707e2ace5963e0eae956e8b1ae26e86a6cde5469247d0382",
  "timestamp": "2026-07-02 14:33:11",
  "sign": "your_sign"
}

支付请求示例(支付宝小程序托管支付) ​

json
{
  "appId": "you_system_appid",
  "subMerchantNo": "your_user_id",
  "bizContent": "{\"appId\":\"9021000165612901\",\"paymentMethod\":\"ALIPAY_MINI\",\"notifyUrl\":\"/api/notify/huifu/handle\",\"orderNo\":\"TEST202607021433112206\",\"subject\":\"测试订单-143311\",\"merchantUrl\":\"www.sh.com\",\"amount\":\"0.01\",\"clientIp\":\"127.0.0.1\"}",
  "version": "1.0",
  "nonce": "49d55020fa3adf6ed67b253c583ccdaa",
  "contentHash": "95772c8a0c74e52b707e2ace5963e0eae956e8b1ae26e86a6cde5469247d0382",
  "timestamp": "2026-07-02 14:33:11",
  "sign": "your_sign"
}

返回示例 ​

PC/H5返回示例 ​

json
{
  "code": "0000",
  "message": "Success",
  "timestamp": "2026-07-01T10:30:00.000Z",
  "data": {
    "transactionNo": "SHPAY202607011030001234567890",
    "expiredTime": "2026-07-03 14:51:56",
    "type": "jump",
    "jumpUrl": "https://api.huifu.com/hostingh5/?jump_id=H202607010927040098601706&huifu_id=6666000109133323&bank_switch=Y"
  }
}

微信小程序托管支付返回示例 ​

json
{
  "code": "0000",
  "message": "Success",
  "timestamp": "2026-07-01T10:30:00.000Z",
  "data": {
    "transactionNo": "SHPAY202607011030001234567890",
    "expiredTime": "2026-07-03 14:51:56",
    "type": "mini",
    "miniPayInfo": {
      "appId": "wx1234567890abcdef",
      "timeStamp": "1784383621",
      "nonceStr": "4168bad799a745c39f18afc4cb1ebfcb",
      "package": "prepay_id=wx68956541928170d9450000028020263000",
      "signType": "RSA",
      "paySign": "vgyIOJ8or5gG5q9kGYAB7zsNIIl89uhdeRlRRyq83Q/Hi5LMpQPD4GbEmkU+ltp4Hj5tWz/8HFi00apV800uVjvWW57nkUFN7fTlxAwrTwqWCwsWDNIYrNO3NB8yfzAVkQouoqkSlR+5KFcM1q84NnF8Sg4Asi4QE0u78ZfcQLQe9A/OZThO8FspwtKoZB4ojt5wRBCjcQZHi2LW6gxE3D7p0EABWuF5ss/Tzcd6ix2F5v7riSX13MBPSe5q1/nWey4WKrJbSD/dxcTxHmQH08dvL7D6XbUydFs44qjH2HwRwxP1Xu0CTnOQRBjAwknQZ4X/sykpMctHEwa/S0uDdA==",
    }
  }
}

微信小程序托管支付返回示例 ​

json
{
  "code": "0000",
  "message": "Success",
  "timestamp": "2026-07-01T10:30:00.000Z",
  "data": {
    "transactionNo": "SHPAY202607011030001234567890",
    "expiredTime": "2026-07-03 14:51:56",
    "type": "wechat",
    "payInfo": {
      "appId": "wx1234567890abcdef",
      "path": "pages/cashier/cashier?p=H2023112713461700667284637&s=app",
      "schemeCode": "weixin://dl/business/?t=f5x3WMhYPat"
    }
  }
}

支付宝小程序托管返回示例 ​

json
{
  "code": "0000",
  "message": "Success",
  "timestamp": "2026-07-01T10:30:00.000Z",
  "data": {
    "transactionNo": "SHPAY202607011030001234567890",
    "expiredTime": "2026-07-03 14:51:56",
    "type": "alipay",
    "payInfo": {
      "schemaUrl": "alipays://platformapi/startapp?appId=xxx&url=xxx"
    }
  }
}

失败返回示例 ​

json
{
  "code": "4001",
  "message": "缺少必填参数 paymentMethod",
  "timestamp": "2026-07-01T10:30:00.000Z",
  "data": {}
}

支付编码枚举 ​

线上具体支付方式可在商户后台查看最新的数据,此处仅展示部分常用通道。

线上通道(正扫) ​

名称支付编码
微信PC支付(含JSAPI)WECHAT_JSAPI
微信公众号支付WECHAT_JSAPI_H5
微信小程序支付WECHAT_MINIAPP
微信小程序拖管支付WECHAT_MINI
支付宝PC支付(含JSAPI)ALIPAY_JSAPI
支付宝H5支付(含JSAPI)ALIPAY_JSAPI_H5
支付宝小程序托管支付ALIPAY_MINI

注意事项 ​

WARNING

🚨 重要提醒:

  • 所有金额参数使用字符串类型,保留两位小数
  • 商户订单号建议保持唯一性,避免重复提交
  • 异步通知地址必须是可公网访问的HTTPS 地址
  • 签名算法和参数排序规则请参考「签名与加密」文档
  • 测试环境和生产环境使用不同的网关地址

开发建议 ​

  • 建议在正式环境使用前,先在测试环境充分测试各种支付场景
  • 实现异步通知处理逻辑,确保订单状态的准确性
  • 合理设置订单超时时间,避免长时间占用资源
  • 对于分账功能,请确保分账金额总和不超过订单总金额

TIP

💡请求格式说明:主体参数包括 appId、subMerchantNo、bizContent、sign;业务参数放在 bizContent 字段中,以 JSON 字符串形式传递,需要进行 JSON 转义