Appearance
支付订单查询接口 ¶
提示
用于支付订单创建后,可以通过该接口主动查询订单状态,完成下一步的业务逻辑。
接口说明 ¶
参数 | 说明 |
---|---|
请求URL | /unipay/query/payOrder |
请求方式 | POST |
请求类型 | application/json |
请求参数 ¶
业务参数 ¶
提示
设置参数时,不要忘了设置公共请求参数调用说明,未做特殊说明所有接口都需要传输
字段名 | 变量名 | 必填 | 类型 | 长度 | 示例值 | 描述 |
---|---|---|---|---|---|---|
支付订单号 | orderNo | 否 | String | 100 | 1753370980523384832 | 不可同时为空,支付订单号 > 商户订单号 > 通道订单号 |
商户支付订单号 | bizOrderNo | 否 | String | 100 | P0001 | 不可同时为空,支付订单号 > 商户订单号 > 通道订单号 |
通道支付订单号 | outOrderNo | 否 | String | 100 | 2025110024006610001 | 不可同时为空,支付订单号 > 商户订单号 > 通道订单号 |
响应结果 ¶
通用响应参数 ¶
业务响应参数 ¶
提示
业务数据在公共响应参数
中的data
字段,在code
为0
时才会有返回数据,见调用说明。
字段名 | 变量名 | 必传 | 类型 | 示例值 | 描述 |
---|---|---|---|---|---|
支付订单号 | orderNo | 是 | String | 1753370980523384832 | 系统生成的订单号 |
商户支付订单号 | bizOrderNo | 是 | String | P0001 | 商户传输的订单号 |
通道支付订单号 | outOrderNo | 是 | String | 22212137757334130130 | 三方支付系统返回的交易号 |
标题 | title | 是 | String | 测试支付 | |
描述 | description | 否 | String | 测试描述 | |
支持分账 | allocation | 否 | Boolean | true | 订单是都支持分账 |
自动分账 | autoAllocation | 否 | String | wechat_pay | |
支付通道 | channel | 否 | String | ali_pay | 要进行支付的通道编码,如微信支付、支付宝支付等。见常量和状态表支付通道相关的描述 |
支付方式 | method | 否 | String | qrcode | |
其他支付方式 | otherMethod | 否 | String | wx_pub | 只有在支付方式为其他支付(other)时才会生效, |
金额 | amount | 是 | BigDecimal | 10.12 | 支付的金额,单位为元,保留两位小数 |
可退款余额 | refundableBalance | 是 | BigDecimal | 10.12 | 可以进行退款的金额,单位为元,保留两位小数 |
限制用户支付类型 | limitPay | 否 | String | no_credit | 限制用户支付类型, 目前支持限制信用卡,部分通道才会有效 |
终端设备编码 | terminalNo | 否 | String | Hvbvdfg | 使用被扫支付方式,部分通道要求传输扫码终端号,此处的设备为在Daxpay中管理并进行报备的终端 |
支付状态 | status | 是 | String | progress | 见支付状态说明 |
退款状态 | refundStatus | 是 | String | refunding | 见支付订单退款状态说明 |
分账状态 | allocStatus | 是 | String | progress | 见支付订单分账状态说明 |
支付时间 | payTime | 否 | String | 2024-10-24 12:00:00 | 时间格式 yyyy-MM-dd HH:mm:ss |
过期时间 | expiredTime | 是 | String | 2024-10-24 12:00:00 | 时间格式 yyyy-MM-dd HH:mm:ss |
关闭时间 | closeTime | 否 | String | 2024-10-24 12:00:00 | 时间格式 yyyy-MM-dd HH:mm:ss |
商户扩展参数 | attach | 否 | String | 500 | 商户传入的扩展参数 |
错误信息 | errorMsg | 否 | String | 未启用分账 | 返回订单的错误信息 |
HTTP请求示例 ¶
请求参数 ¶
json
{
"orderNo" : "DEV_P2025041010494470000001",
"mchNo" : "M1723635576766",
"appId" : "M8207639754663343",
"clientIp" : "127.0.0.1",
"sign" : "cb1e87e917f61f1c99527fc5e663e4c4",
"reqTime" : "2025-04-11 15:56:26"
}
响应参数(成功) ¶
json
{
"code" : 0,
"msg" : "success",
"data" : {
"bizOrderNo" : "PAY_96219193611744253264863",
"orderNo" : "DEV_P2025041010494470000001",
"outOrderNo" : "2025041022001404211421433855",
"title" : "测试支付",
"allocation" : false,
"autoAllocation" : false,
"channel" : "ali_pay",
"method" : "qrcode",
"amount" : 0.01,
"refundableBalance" : 0,
"status" : "success",
"refundStatus" : "refunded",
"payTime" : "2025-04-10 10:50:51",
"expiredTime" : "2025-04-10 11:17:44"
},
"sign" : "3bcca2bcb69977ea0b8737db83b676ba",
"resTime" : "2025-04-11 15:56:27",
"traceId" : "uldNLLM1zgec"
}
响应参数(失败) ¶
json
{
"code": 20041,
"msg": "支付订单不存在",
"sign": "fd6303c6a6bc28c5ce1d9a9d389ec779",
"resTime": "2025-04-11 15:59:40",
"traceId": "3pAQLkT3qg1u"
}
SDK请求示例 ¶
提示
使用SDK可以简化接入支付的速度
java
public void testPay() {
QueryPayParam param = new QueryPayParam();
param.setOrderNo("DEV_P2025041010494470000002");
param.setClientIp("127.0.0.1");
DaxResult<PayOrderResult> execute = DaxPayKit.execute(param);
System.out.println("验签结果: " + DaxPayKit.verifySign(execute));
System.out.println(JsonUtil.toJsonStr(execute));
}