统一下单接口

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

    请求地址:

    api/pay/create

    请求方式:

    POST

    请求参数说明:

    字段名变量名必填类型示例值描述
    商户IDpidInt1001
    接口类型methodStringweb接口类型列表
    设备类型deviceStringpc仅通用网页支付需要传 设备类型列表
    支付方式typeStringalipay支付方式列表
    商户订单号out_trade_noString20160806151343349
    异步通知地址notify_urlStringhttp://www.pay.com/notify_url.php服务器异步通知地址
    跳转通知地址return_urlStringhttp://www.pay.com/return_url.php页面跳转通知地址
    商品名称nameStringVIP会员如超过127个字节会自动截取
    商品金额moneyString1.00单位:元,最大2位小数
    用户IP地址clientipString192.168.1.100用户发起支付的IP地址
    业务扩展参数paramString没有请留空支付后原样返回
    被扫支付授权码auth_codeString 仅被扫支付需要传
    用户Openidsub_openidString 仅JSAPI支付需要传
    公众号AppIdsub_appidString 仅JSAPI支付需要传
    当前时间戳timestampString172120607210位整数,单位秒
    签名字符串signString 参考签名规则
    签名类型sign_typeStringRSA默认为RSA

    返回参数说明:

    字段名变量名类型示例值描述
    返回状态码codeInt00为成功,其它值为失败
    错误信息msgString 失败时返回原因
    平台订单号trade_noString20160806151343349平台内部的订单号
    发起支付类型pay_typeStringjump参考 发起支付类型说明
    发起支付参数pay_infoStringweixin://wxpay/bizpayurl?pr=04IPMKM根据不同的发起支付类型,返回内容也不一样
    当前时间戳timestampString172120607210位整数,单位秒
    签名字符串signString 参考签名规则
    签名类型sign_typeStringRSA默认为RSA

    返回示例:

    {
        "code": 0,
        "trade_no": "20160806151343349",
        "pay_type": "qrcode",
        "pay_info": "weixin://wxpay/bizpayurl?pr=04IPMKM"
    }
    {
        "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\"}"
    }
    {
        "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)
    jsapiJSAPI支付(小程序内支付使用,仅返回JSAPI参数,
    需传入sub_openid和sub_appid参数)
    appAPP支付(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内拉起微信小程序支付

    其他说明:

    • 代码中需根据接口返回的pay_type值来展示具体的支付页面,例如扫码页面等。如果不懂怎么展示支付页面,可在method传入jump,这样pay_type就只会返回jump,直接跳转支付即可。
    • 付款码支付可不传支付类型type字段,会根据auth_code的数字自动判断支付类型。
    • 微信小程序插件支付,不同支付平台拉起支付方式不一样,可联系客服获取对接小程序插件的文档。
    • APP拉起微信小程序可参考微信官方文档