查询支付订单

查询微信或支付宝的支付订单信息,主要用于判断微信或支付宝侧的订单是否已经付款。一般情况下,用户付款后,蜂巢都将支付订单回调给第三方系统。特殊情况下,若第三方系统没有收到回调通知,也可以通过本接口主动进行查询。

1.请求参数:

请求URL:

POST https://kf.fw199.com/gateway/partner/pay/trade/query

参数名 类型 必须 说明
appid String 合作伙伴Id
timestamp String 必填 时间戳 请求时的时间,unixtime格式
pay_channel String 必填 支付渠道,微信传入weixin,支付宝传入alipay
mch_id String 必填 微信或支付宝商户号
ext_trade_no String 必填 开发者之前调用蜂巢支付时,传入的订单号
sign String 必填 签名,对各参数使用提供的AppSecret进行签名,签名逻辑具体实现见示例代码

2. 请求示例代码(Java)

        @Test
    public void queryPayTrade() throws Exception {

        String agentChannel = "weixin";
        String mchId = "1618623419";
        String extTradeNo = "DD202204151694131519";

        Map<String, String> data = new HashMap<String, String>();
        data.put("appid",  Config.AppId);
        Long timestamp = System.currentTimeMillis() / 1000;
        data.put("timestamp", timestamp.toString());
        data.put("mch_id", mchId);
        data.put("ext_trade_no",extTradeNo );
        data.put("pay_channel",agentChannel );
        data.put("sign", Utils.Sign(data, Config.AppSecret));
        String result = doHttpRequest(Config.QueryPayTradeUrl, data);
        System.out.println(result);

    }

3. 返回结果

如果code不为0,表示发生异常,返回异常结果类似,当然还会有其他异常情况,以code值为准。

    {
        "code": 11,
        "message": "获取原始订单出错,请核实订单号ext_trade_no",
        "trace_id": ""
    }

查询微信订单成功情况:

  {
        "code": 0,
        "message": "ok",
        "data": {
            "tppay_trade_no": "4200001322202204158870541798", // 微信订单号
            "out_trade_no": "DD202204151694131519", // 第三方网站自定义的订单号
            "quickpay_trade_no": "20220415191611181878", //蜂巢订单号
            "pay_time": "2022-04-15 19:16:32", // 付款时间
            "total_fee": 50, // 金额,单位分
            "pay_channel": "weixin",  // 支付渠道
            "pay_user": "oxL-nt_wXbwtIh04tCNZ27T1X57M", //付款主的微信openId
            "pay_status": "SUCCESS" // 支付成功为SUCCESS,否则FAIL
        },
        "trace_id": ""
    }

查询支付宝订单成功的情况

{
        "code": 0,
        "message": "ok",
        "data": {
            "tppay_trade_no": "2022041522001464271428370802",// 支付宝订单号
            "out_trade_no": "DD202204152099932560",// 第三方网站自定义的订单号
            "quickpay_trade_no": "202204156372794266", //蜂巢订单号
            "pay_time": "2022-04-15 22:42:11",// 付款时间
            "total_fee": 50, // 金额,单位分
            "pay_channel": "alipay",// 支付渠道
            "pay_user": "sup***@163.com",//付款方的支付宝账号
            "pay_status": "SUCCESS" // 支付成功为SUCCESS,否则FAIL
        },
        "trace_id": ""
    }

说明: code为0表示成功,非0为失败,message会包含失败原因。 订单实际支付成功以pay_status为准。

文档更新时间: 2023-09-07 18:09   作者:admin