搜索结果

×

搜索结果将在这里显示。

查询支付订单V2

商户通过该接口查询订单,支付网关会返回订单最新的数据。

本文档为查询订单 API 2.0 版本。2.0 版本支持以 5 种订单号类型中的任一种进行精准查单;已对接 1.0 接口的商户可继续使用原接口,无向下兼容影响。

接口说明
适用对象:普通商户 特约商户

请求URL:https://pay.yintongzaixian.com/api/pay/query/v2

请求方式:POST

请求类型:application/json 或 application/x-www-form-urlencoded

请求参数

字段名 变量名 必填 类型 示例值 描述
商户号 mchNo String(30) M1621873433953 商户号
应用ID appId String(24) 60cc09bce4b0f1c0b83761c9 应用ID
订单号类型 orderType int 1 订单号类型,枚举值 1-5,详见下方说明
订单号值 orderNo String(64) P20160427210604000490 与 orderType 配合使用,对应类型的订单号值
请求时间 reqTime long 1622016572190 请求接口时间,13位时间戳
接口版本 version String(3) 1.0 接口版本号,固定:1.0
签名 sign String(32) C380BEC2BFD727A4B6845133519F3AD6 签名值,详见签名算法
签名类型 signType String(32) MD5 签名类型,目前只支持MD5或RSA2方式

orderType 枚举说明

orderType 含义 orderNo 示例
1 支付订单号 P20160427210604000490(计全付系统生成)
2 商户订单号 20160427210604000490(商户系统生成)
3 渠道订单号 2021061822001423031419593035(收单机构系统生成)
4 用户支付凭证交易单号 微信/支付宝等支付凭证上的交易单号
5 用户支付凭证商户单号 微信/支付宝等支付凭证上的商户单号

请求示例数据

{
  "orderType": 1,
  "orderNo": "P202106181104177050002",
  "appId": "60cc09bce4b0f1c0b83761c9",
  "sign": "46940C58B2F3AE426B77A297ABF4D31E",
  "signType": "MD5",
  "reqTime": "1624006009",
  "mchNo": "M1623984572",
  "version": "1.0"
}

按商户订单号查询示例:

{
  "orderType": 2,
  "orderNo": "20160427210604000490",
  "appId": "60cc09bce4b0f1c0b83761c9",
  "sign": "5B9F4C21EA6624FE12FBD6D7BC2F62A0",
  "signType": "MD5",
  "reqTime": "1624006200",
  "mchNo": "M1623984572",
  "version": "1.0"
}

返回参数

字段名 变量名 必填 类型 示例值 描述
返回状态 code int 0 0-处理成功,其他-处理有误,详见错误码
返回信息 msg String(128) 签名失败 具体错误原因,例如:签名失败、参数格式校验错误
签名信息 sign String(32) CCD9083A6DAD9A2DA9F668C3D4517A84 对data内数据签名,如data为空则不返回
返回数据 data String(512) {} 返回下单数据,json格式数据

data数据格式

字段名 变量名 必填 类型 示例值 描述
支付订单号 payOrderId String(30) P12021022311124442600 返回支付系统订单号
商户号 mchNo String(30) M1621873433953 商户号
应用ID appId String(24) 60cc09bce4b0f1c0b83761c9 应用ID
商户订单号 mchOrderNo String(30) 20160427210604000490 返回商户传入的订单号
支付接口 ifCode String(30) wxpay 支付接口编码
支付方式 wayCode String(30) WX_LITE 支付方式,如微信小程序WX_LITE
支付金额 amount int 100 支付金额,单位分
货币代码 currency String(3) cny 三位货币代码,人民币:cny
订单状态 state int 2 支付订单状态
0-订单生成
1-支付中
2-支付成功
3-支付失败
4-已撤销
5-已退款
6-订单关闭
客户端IP clientIp String(32) 210.73.10.148 客户端IPV4地址
商品标题 subject String(64) Jeepay商品标题测试 商品标题
商品描述 body String(256) Jeepay商品描述测试 商品描述
渠道订单号 channelOrderNo String 20160427210604000490 对应渠道的订单号
渠道错误码 errCode String 1002 渠道下单返回错误码
渠道错误描述 errMsg String 业务异常错误 渠道下单返回错误描述
扩展参数 extParam String(512) 134586944573118714 商户扩展参数,回调时会原样返回
创建时间 createdAt long 1622016572190 订单创建时间,13位时间戳
成功时间 successTime long 1622016572190 订单支付成功时间,13位时间戳

返回示例数据

{
  "code": 0,
  "data": {
    "amount": 58,
    "appId": "60cc09bce4b0f1c0b83761c9",
    "body": "商品描述",
    "channelOrderNo": "2021061822001423031419593035",
    "clientIp": "192.166.1.132",
    "createdAt": 1623985457705,
    "currency": "cny",
    "extParam": "",
    "ifCode": "alipay",
    "mchNo": "M1623984572",
    "mchOrderNo": "mho1623985457320",
    "payOrderId": "P202106181104177050002",
    "state": 2,
    "subject": "商品标题",
    "successTime": 1623985459000,
    "wayCode": "ALI_BAR"
  },
  "msg": "SUCCESS",
  "sign": "9548145EA12D0CD8C1628BCF44E19E0D"
}

错误码

code msg 说明
0 SUCCESS 处理成功
其他 - 处理有误,msg 字段返回具体错误原因(如:签名失败、orderType 取值不合法、订单不存在等)

SDK 调用示例(Java):

JeepayClient jeepayClient = JeepayClient.getInstance(Jeepay.appId, Jeepay.apiKey, Jeepay.getApiBase());

PayOrderQueryV2Request request = new PayOrderQueryV2Request();
PayOrderQueryV2ReqModel model = new PayOrderQueryV2ReqModel();
model.setMchNo(Jeepay.mchNo);                   // 商户号
model.setAppId(jeepayClient.getAppId());        // 应用ID
model.setOrderType((byte) 1);                   // 订单号类型:1-支付订单号
model.setOrderNo("P202106181104177050002");     // 订单号值
request.setBizModel(model);

try {
    PayOrderQueryV2Response response = jeepayClient.execute(request);
    System.out.println("验签结果:" + response.checkSign(Jeepay.apiKey));

    if (response.isSuccess(Jeepay.apiKey)) {
        System.out.println("订单金额:" + response.get().getAmount());
        System.out.println("订单状态:" + response.get().getState());
    }
} catch (JeepayException e) {
    e.printStackTrace();
}

其他 orderType 调用示例:

// 按商户订单号查询
model.setOrderType((byte) 2);
model.setOrderNo("20160427210604000490");

// 按渠道订单号查询
model.setOrderType((byte) 3);
model.setOrderNo("2021061822001423031419593035");

// 按用户支付凭证交易单号查询
model.setOrderType((byte) 4);
model.setOrderNo("微信/支付宝交易单号");

// 按用户支付凭证商户单号查询
model.setOrderType((byte) 5);
model.setOrderNo("微信/支付宝商户单号");