统一下单接口

此接口可用于服务器后端发起支付请求,会返回支付二维码链接、支付跳转url等。

请求信息

请求URL /api/pay/create
请求方式 POST

请求参数

参数名 类型 必填 示例值 说明
pid Int 1001 商户ID
method String web 接口类型,详见接口类型列表
device String pc 设备类型,仅通用网页支付需要传,详见设备类型列表
type String alipay 支付方式,详见支付方式列表
out_trade_no String 20160806151343349 商户订单号
notify_url String http://www.pay.com/notify_url.php 服务器异步通知地址
return_url String http://www.pay.com/return_url.php 页面跳转通知地址
name String VIP会员 商品名称,如超过127个字节会自动截取
money String 1.00 商品金额,单位:元,最大2位小数
clientip String 192.168.1.100 用户发起支付的IP地址
param String 没有请留空 业务扩展参数,支付后原样返回
auth_code String 被扫支付授权码,仅被扫支付需要传
sub_openid String 用户Openid,仅JSAPI支付需要传
sub_appid String 公众号AppId,仅JSAPI支付需要传
timestamp String 1721206072 当前时间戳,10位整数,单位秒
sign String 签名字符串,详见签名规则
sign_type String RSA 签名类型,默认为RSA

返回参数

参数名 类型 示例值 说明
code Int 0 返回状态码,0为成功,其它值为失败
msg String 错误信息,失败时返回原因
trade_no String 20160806151343349 平台内部的订单号
pay_type String jump 发起支付类型,详见发起支付类型说明
pay_info String weixin://wxpay/bizpayurl?pr=04IPMKM 根据不同的发起支付类型,返回内容也不一样
timestamp String 1721206072 当前时间戳,10位整数,单位秒
sign String 签名字符串,详见签名规则
sign_type String RSA 签名类型,默认为RSA

返回示例

二维码支付返回示例:

{
    "code": 0,
    "trade_no": "20160806151343349",
    "pay_type": "qrcode",
    "pay_info": "weixin://wxpay/bizpayurl?pr=04IPMKM"
}

JSAPI支付返回示例:

{
    "code": 0,
    "trade_no": "20160806151343351",
    "pay_type": "jsapi",
    "pay_info": "{\"appId\":\"wx2421b1c4370ec43b\",\"timeStamp\":\"1395712654\",\"nonceStr\":\"e61463f8efa94090b1f366cccfbbb444\",\"package\":\"prepay_id=up_wx21201855730335ac86f8c43d1889123400\",\"signType\":\"RSA\",\"paySign\":\"oR9d8PuhnIc+YZ8cBHFCwfgpaK9gd7vaRvkYD7rthRAZ\"}"
}

付款码支付返回示例:

{
    "code": 0,
    "trade_no": "2024072320222180092",
    "pay_type": "scan",
    "pay_info": "{\"type\":\"wxpay\",\"trade_no\":\"2024072320222180092\",\"api_trade_no\":\"4200002345202407238253501450\",\"buyer\":\"o9uAcc6VlZxhcujpKIqQuWWoDQc\",\"money\":\"1.00\"}"
}

小程序插件支付返回示例:

{
    "code": 0,
    "trade_no": "2024072320222180018",
    "pay_type": "wxplugin",
    "pay_info": "{\"appId\":\"wxc237fd59fbb634ae\",\"supplierId\":\"123456\",\"shopId\":\"123456\",\"orderId\":\"2024072320222180092\"}"
}

APP拉起小程序支付返回示例:

{
    "code": 0,
    "trade_no": "2024072320222180018",
    "pay_type": "wxapp",
    "pay_info": "{\"appId\":\"wxbb48bac536053072\",\"miniProgramId\":\"gh_bf9cd8cf50b5\",\"path\":\"pages/fromAppPay/index?orderid=123456\",\"extraData\":\"\"}"
}

接口类型列表

调用值 描述
web 通用网页支付(会根据device判断,自动返回跳转url/二维码/小程序跳转url等)
jump 跳转支付(仅会返回跳转url)
jsapi JSAPI支付(小程序内支付使用,仅返回JSAPI参数,需传入sub_openid和sub_appid参数)
app APP支付(iOS/安卓APP内支付使用,仅返回APP支付参数,或APP拉起微信小程序参数)
scan 付款码支付(需传入auth_code参数,支付成功后返回订单信息)
applet 小程序支付(微信小程序内使用,返回微信小程序插件参数或跳转小程序参数)

设备类型列表

调用值 描述
pc 电脑浏览器(默认)
mobile 手机浏览器
qq 手机QQ内浏览器
wechat 微信内浏览器
alipay 支付宝客户端

发起支付类型说明

发起支付类型 描述
jump 返回支付跳转url
html 返回html代码,用于支付跳转
qrcode 返回支付二维码
urlscheme 返回微信/支付宝小程序跳转url scheme
jsapi 返回用于发起JSAPI支付的参数
app 返回用于发起APP支付的参数
scan 付款码支付成功,返回支付订单信息
wxplugin 返回要拉起的微信小程序插件参数,用于未开通支付能力的小程序发起支付
wxapp 返回要拉起的微信小程序和路径,用于APP内拉起微信小程序支付

其他说明

注意事项