合单查询订单

更新时间: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)

【交易单订单号】合单商户订单号

请求示例

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)

【平台商户应用ID】 交易单发起方申请的公众号或移动应用appid。


 combine_mchid  必填   string(32)

【平台商户号】 交易单发起方商户号。


 combine_payer_info    选填  PayerInfo

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

属性

 openid  选填  string

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


sub_orders  选填   array[object]

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

属性

 mchid  必填   string(32)

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


 trade_type  选填   string(16)

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

  • NATIVE:Native支付

  • JSAPI:公众号支付

  • MINIPROGRAM:小程序支付

  • APP:APP支付

  • MWEB:H5支付


 trade_state  必填   string(32)

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

  • SUCCESS:支付成功

  • REFUND:转入退款

  • NOTPAY:未支付

  • CLOSED:已关闭

  • USERPAYING:用户支付中

  • 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,代表人民币。


 transaction_id  选填   string

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


 out_trade_no  必填   string(32)

【商品单商户订单号】 商户系统内部订单号,最短2个字符,最长32个字符,只能是数字、大小写字母_-|* ,且在同一个商户号下唯一。


 sub_mchid  选填   string(32)

【二级商户号】 特约商户商户号


 sub_appid  选填   string(32)

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


 sub_openid  选填   string(128)

【用户子标识】 服务商模式下,sub_appid 对应的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)

【商户端设备号】 终端设备号(门店号或收银设备ID)。


 combine_out_trade_no   必填  string

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

应答示例

200 OK

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

 

错误码

公共错误码

状态码

错误码

描述

解决方案

400

PARAM_ERROR

参数错误

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

400

INVALID_REQUEST

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

请参阅 接口规则

401

SIGN_ERROR

验证不通过

请参阅 签名常见问题

500

SYSTEM_ERROR

系统异常,请稍后重试

请稍后重试

业务错误码

状态码

错误码

描述

解决方案

202

USER_PAYING

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

等待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

ACCOUNT_ERROR

账号异常

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

403

NO_AUTH

商户无权限

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

403

OUT_TRADE_NO_USED

商户订单号重复

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

403

RULE_LIMIT

业务规则限制

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

403

TRADE_ERROR

交易错误

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

404

ORDER_NOT_EXIST

订单不存在

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

429

FREQUENCY_LIMITED

频率超限

请降低请求接口频率

500

BANK_ERROR

银行系统异常

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

500

INVALID_TRANSACTIONID

订单号非法

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

500

OPENID_MISMATCH

OpenID和AppID不匹配

请确认OpenID和AppID是否匹配

500

SYSTEM_ERROR

系统错误

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

 

 

元宝AI
反馈
目录
置顶