合单查询订单

更新时间:2024.10.24

电商平台通过合单查询订单API查询订单状态,完成下一步的业务逻辑。

需要调用查询接口的情况:

  1. 当商户后台、网络、服务器等出现异常,商户系统最终未接收到支付通知。

  2. 调用支付接口后,返回系统错误或未知交易状态情况。

  3. 调用刷卡支付API,返回USERPAYING的状态。

  4. 调用关单或撤销接口API之前,需确认支付状态。

接口说明

支持商户:【普通服务商】【平台商户】

请求方式:【GET】/v3/combine-transactions/out-trade-no/{combine_out_trade_no}

请求域名:【主域名】https://api.mch.weixin.qq.com 使用该域名将访问就近的接入点

     【备域名】https://api2.mch.weixin.qq.com 使用该域名将访问异地的接入点 ,指引点击查看

请求参数

Header  HTTP头参数

 Authorization  必填 string

请参考签名认证生成认证信息


 Accept  必填 string

请设置为application/json


path  路径参数

 combine_out_trade_no  必填   string(32)

【合单商户订单号】 合单支付总订单号,要求32个字符内,只能是数字、大小写字母_-|* ,且在同一个商户号下唯一 。

请求示例

curl
Java
Go

GET

1curl -X GET \
2  https://api.mch.weixin.qq.com/v3/combine-transactions/out-trade-no/P20150806125346 \
3  -H "Authorization: WECHATPAY2-SHA256-RSA2048 mchid=\"1900000001\",..." \
4  -H "Accept: application/json" 
5

应答参数
折叠全部参数

200 OK

 combine_appid  必填   string(32)

【合单商户Appid】 合单发起方的Appid


 combine_mchid  必填   string(32)

【合单商户号】 合单发起方商户号


 combine_payer_info  选填   object

【合单支付者】 合单订单支付者的信息。

属性

 openid  选填   string(128)

【用户标识】 用户在商户appid下的唯一标识


 sub_orders  选填   array[object]

【商品单信息】 商品单列表。

属性

 mchid  必填   string(32)

【商品单商户号】 商品单商户号,与合单发起方的Appid有绑定关系


 trade_type  选填   string

【交易类型】 交易类型,枚举值:

  • NATIVE:Native支付

  • JSAPI:公众号支付

  • APP:APP支付

  • MWEB:H5支付


 trade_state  必填   string

【交易状态】 交易状态,枚举值:

  • SUCCESS:支付成功

  • REFUND:转入退款

  • NOTPAY:未支付

  • CLOSED:已关闭

  • PAYERROR:支付失败(其他原因,如银行返回失败)


 bank_type  选填   string(32)

【付款银行】 银行类型,采用字符串类型的银行标识。银行标识请参考《银行类型对照表》


 attach  选填   string(128)

【附加数据】 商户在下单时传入的自定义数据包,用户不可见。用于存放订单的商户自定义数据,在查询API和支付通知中原样返回。


 success_time  选填   string(32)

【支付完成时间】 订单支付时间


 amount  选填   object

【订单金额】 订单金额信息。

属性

 total_amount  必填   integer

【标价金额】 商品单金额,单位为分。


 payer_amount  必填   integer

【用户支付金额】用户支付金额,整型,单位为分。
用户支付金额 = 标价金额total_amount - 代金券金额promotion_detail.amount


 currency  必填   string(16)

【标价币种】 货币类型,符合ISO 4217标准的三位字母代码,默认人民币:CNY


 payer_currency  必填   string(16)

【用户支付币种】 用户实际支付的币种,符合ISO 4217标准的三位字母代码。例如:CNY,代表人民币。


 settlement_rate  选填   integer

【结算汇率】 结算汇率,即标价币种和结算币种的汇率,例如,美元(USD)与人民币(CNY)之间的汇率为6.5,则汇率值为650000000(汇率值是汇率乘以10的8次方),标价币种和结算币种不一致时才返回。


 transaction_id  选填   string(32)

【微信支付订单号】 微信支付订单号。


 out_trade_no  必填   string(32)

【商品单订单号】 商户系统内部对商品单定义的订单号,要求32个字符内,只能是数字、大小写字母_-|* ,且在同一个商户号下唯一。


 sub_mchid  选填   string(32)

【特约商户商户号】  特约商户商户号


 sub_appid  选填   string(32)

【子商户绑定的Appid】 服务商模式下,sub_mchid对应的sub_appid。


 sub_openid  选填   string(128)

【sub_appid 对应的 openid】 服务商模式下,sub_appid对应的sub_openid。


 promotion_detail  选填   array[object]

【优惠功能】 优惠功能,享受优惠时返回该字段。

属性

 coupon_id  必填   string(32)

【券ID】 券ID。


 name  选填   string(64)

【优惠名称】 优惠名称。


 scope  选填   string(32)

【优惠范围】 优惠范围,枚举值:GLOBAL:全场代金券SINGLE:单品优惠。


 type  选填   string(32)

【优惠类型】 CASH:充值;NOCASH:预充值。


 amount  必填   integer

【优惠券面额】 优惠券面额。


 stock_id  选填   string(32)

【活动ID】 活动ID,批次ID。


 wechatpay_contribute  选填   integer

【微信出资】 微信出资,单位为分。


 merchant_contribute  选填   integer

【商户出资】 商户出资,单位为分。


 other_contribute  选填   integer

【其他出资】 其他出资,单位为分。


 currency  选填   string(16)

【优惠币种】 CNY:人民币,境内商户号仅支持人民币。


 goods_detail  选填   array[object]

【单品列表】 单品列表。

属性

 goods_id  必填   string(32)

【商品编码】 商品编码。


 quantity  必填   integer

【商品数量】 商品数量。


 unit_price  必填   integer

【商品单价】 商品单价,单位为分。


 discount_amount  必填   integer

【商品优惠金额】 商品优惠金额。


 goods_remark  选填   string(128)

【商品备注】 商品备注。


scene_info  选填   object

【场景信息】 支付场景描述。

属性

 device_id  选填   string(32)

【商户端设备号】 设备号,自定义参数


 combine_out_trade_no  必填   string(32)

【合单商户订单号】 合单支付总单号,商户系统内部订单号

应答示例

200 OK

1{
2  "combine_appid" : "wxd678efh567hg6787",
3  "combine_mchid" : "1230000109",
4  "combine_out_trade_no" : "P20150806125346",
5  "combine_payer_info" : {
6    "openid" : "oUpF8uMuAJO_M2pxb1Q9zNjWeS6o"
7  },
8  "scene_info" : {
9    "device_id" : "POS1:1"
10  },
11  "sub_orders" : [
12    {
13      "mchid" : "1900000109",
14      "sub_mchid" : "1230000109",
15      "sub_appid" : "wxd678efh567hg6999",
16      "sub_openid" : "oUpF8uMuAJO_M2pxb1Q9zNjWeS6o",
17      "out_trade_no" : "20150806125346",
18      "transaction_id" : "1009660380201506130728806387",
19      "trade_type" : "JSAPI",
20      "trade_state" : "SUCCESS",
21      "bank_type" : "CMC",
22      "attach" : "深圳分店",
23      "success_time" : "2015-05-20T13:29:35.120+08:00",
24      "amount" : {
25        "total_amount" : 10,
26        "payer_amount" : 10,
27        "currency" : "CNY",
28        "payer_currency" : "CNY",
29        "settlement_rate" : 650000000
30      },
31      "promotion_detail" : [
32        {
33          "coupon_id" : "109519",
34          "name" : "单品惠-6",
35          "scope" : "GLOBAL",
36          "type" : "CASH",
37          "amount" : 100,
38          "stock_id" : "931386",
39          "wechatpay_contribute" : 0,
40          "merchant_contribute" : 0,
41          "other_contribute" : 0,
42          "currency" : "CNY",
43          "goods_detail" : [
44            {
45              "goods_id" : "M1006",
46              "quantity" : 1,
47              "unit_price" : 100,
48              "discount_amount" : 1,
49              "goods_remark" : "商品备注信息"
50            }
51          ]
52        }
53      ]
54    }
55  ]
56}
57

 

错误码

公共错误码

状态码

错误码

描述

解决方案

400

PARAM_ERROR

参数错误

请根据错误提示正确传入参数

400

INVALID_REQUEST

HTTP 请求不符合微信支付 APIv3 接口规则

请参阅 接口规则

401

SIGN_ERROR

验证不通过

请参阅 签名常见问题

500

SYSTEM_ERROR

系统异常,请稍后重试

请稍后重试

业务错误码

状态码

错误码

描述

解决方案

202

USERPAYING

用户支付中,需要输入密码

等待5秒,然后调用被扫订单结果查询API,查询当前订单的不同状态,决定下一步的操作

400

APPID_MCHID_NOT_MATCH

AppID和mch_id不匹配

请确认AppID和mch_id是否匹配

400

INVALID_REQUEST

无效请求

请根据接口返回的详细信息检查

400

MCH_NOT_EXISTS

商户号不存在

请检查商户号是否正确

400

ORDER_CLOSED

订单已关闭

当前订单已关闭,请重新下单

401

SIGN_ERROR

签名错误

请检查签名参数和方法是否都符合签名算法要求

403

ACCOUNTERROR

账号异常

用户账号异常,无需更多操作

403

NOAUTH

商户无权限

请商户前往申请此接口相关权限

403

OUT_TRADE_NO_USED

商户订单号重复

请核实商户订单号是否重复提交

403

RULELIMIT

业务规则限制

因业务规则限制请求频率,请查看接口返回的详细信息

403

TRADE_ERROR

交易错误

因业务原因交易失败,请查看接口返回的详细信息

404

ORDERNOTEXIST

订单不存在

请检查订单是否发起过交易

429

FREQUENCY_LIMITED

频率超限

请降低请求接口频率

500

BANKERROR

银行系统异常

银行系统异常,请用相同参数重新调用

500

INVALID_TRANSACTIONID

订单号非法

请检查微信支付订单号是否正确

500

OPENID_MISMATCH

OpenID和AppID不匹配

请确认OpenID和AppID是否匹配

500

SYSTEMERROR

系统错误

系统异常,请用相同参数重新调用

 

 

元宝AI
反馈
目录
置顶