创建订单(3.0可用)

创建成功后,请保存返回的order_id,用于下一步的唤起APP支付,及用户支付成功后的异步回调验证

js调用示例

QFH5.Order(json,function(state,data){
});

参数说明

字段名 类型 说明
json string 一个string型的json串
json对应的obj参数说明
字段名 类型 是否必填 说明
version string 必填 创建订单的版本,目前固定为”5.0”
type int 必填 订单类型, 在后台插件账户平台里面创建教程
title string - 订单标题\说明
out_trade_no string - 站点自己的商户订单号
需要唯一,可为空,千帆会默认分配一个22位的订单号(老版是20位)
站点可以选择一个其他长度的订单号,来避开千帆的规则,这样可以最大可能的避免重复订单号的出现
重复订单号会导致下单失败
expired_at int - 允许最后的支付时间戳,默认15分钟
cash float - 订单的现金价格(元)
gold float - 订单的金币价格
pay_type_allow int - 订单现金部分,允许的支付方式
2:余额,4:微信,8:支付宝
如想允许多钟方式,求和即可
notify_url string - 支付完成后异步回调的地址
ext string - 订单的其他参数,异步回调时会带回去

返回值

字段名 类型 说明
state int 是否成功 1:成功,2:失败
data obj

data字段说明

字段名 类型 说明
error string 失败理由
order_id int 成功返回,订单ID

示例

    var data = {
        version: '5.0',
        type: 10000,
        title: '我是标题',
        out_trade_no: 'No001',
        expired_at: 1562919172,
        cash: 19.99,
        gold: 19.5,
        virtual: 0,
        pay_type_allow: 14,
        ext: '{id:15,num:2,title:"标题2号"}',
        notify_url: 'http://www.qianfanyun.com/notify'
    };
    QFH5.Order(JSON.stringify(data), function (state, data) {
        alert(state);
        alert(JSON.stringify(data));
        if (state == 1) {
            // 下单成功
            // TODO 将订单ID保存到本地的数据库中
            QFH5.jumpPayOrder(parseInt(data.order_id), function (state, data) {
                if (state == 1) {
                    alert('支付成功');
                }else{
                    // TODO 重新使用数据库中的order_id唤起APP支付即可,无需再次下单
                }
            })
        } else {
            alert('订单生成失败:' + data.error);
        }
    });
文档更新时间: 2023-08-02 17:12   作者:李伟