# 回退结果查询

> 使用本接口需要开启[开放接口服务](/miniprogram/dev/wxcloudservice/wxcloudrun/src/guide/weixin/open)

应用场景

- 商户需要核实回退结果，可调用此接口查询回退结果。
- 如果分账回退接口返回状态为处理中，可调用此接口查询回退结果。

接口频率：30QPS

## 接口地址

``` bash
http://api.weixin.qq.com/_/pay/profitsharingreturnquery
```

## 参数说明

| 名称 | 变量名| 必填 | 类型 | 示例值 | 描述 |
|-------|------|--------|---|---|---|
| 子商户号 | sub_mch_id| 是 | string(32) | 1900000109 | 微信支付分配的子商户号 |
| 随机字符串 | nonce_str | 是 | string(32) | 5K8264ILTKCH16CQ2502SI8ZNMTM67VS | 随机字符串，不长于 32 位。推荐随机数生成算法 |
| 微信分账订单号 | order_id| 与 out_order_no 二选一 | string(64) | 4208450740201411110007820472 | 原发起分账请求时，微信返回的微信分账单号，与商户分账单号一一对应。
微信分账单号与商户分账单号二选一填写 |
| 商户分账单号 | out_order_no| 与 order_id 二选一 | string(64) | P20190806125346| 原发起分账请求时使用的商户系统内部的分账单号。
微信分账单号与商户分账单号二选一填写 |
| 商户回退单号 | out_return_no | 是 | string(64) | R20190806125346| 调用回退接口提供的商户系统内部的回退单号 |

## 返回值说明

| 名称 | 变量名| 必填 | 类型| 示例值 | 描述 |
|---|----|------|----|---|---|
| 返回状态码 | return_code | 是 | string(32)| SUCCESS| 枚举值：
SUCCESS：分账回退处理成功
FAIL：分账回退处理失败|
| 错误代码 | error_code| 否 | string(32)| SYSTEMERROR| 如果返回状态码为 FAIL，则本字段存在，且为失败的错误码
详见错误码列表 |
| 返回信息 | error_msg | 否 | string(256) | 参数格式校验错误 | 如果返回状态码为 FAIL，则本字段存在，且为失败的错误信息 |

以下字段在 return_code 为 SUCCESS 的时候有返回

| 名称 | 变量名| 必填 | 类型 | 示例值 | 描述 |
|-------|---|------|---|-------|---|
| 商户号 | mch_id| 是 | string(32) | 1900000100 | 调用接口时提供的商户号 |
| 子商户号 | sub_mch_id| 是 | string(32) | 1900000109 | 微信支付分配特约商户的商户号 |
| 公众账号 ID | AppID | 是 | string(32) | wx8888888888888888 | 调用接口提供的公众账号 ID |
| 随机字符串 | nonce_str | 是 | string(32) | 5K8264ILTKCH16CQ2502SI8ZNMTM67VS | 微信返回的随机字符串 |
| 签名 | sign| 是 | string(64) | C380BEC2BFD727A4B6845133519F3AD6 | 微信返回的签名，详见签名算法 |
| 微信分账订单号 | order_id| 是 | string(64) | 4208450740201411110007820472 | 原发起分账请求时，微信返回的微信分账单号，与商户分账单号一一对应。 |
| 商户分账单号 | out_order_no| 是 | string(64) | P20150806125346| 原发起分账请求时使用的商户系统内部的分账单号。 |
| 商户回退单号 | out_return_no | 是 | string(64) | R20150806125346| 调用接口提供的商户系统内部的回退单号 |
| 微信回退单号 | return_no | 是 | string(64) | 3008450740201411110007820472 | 微信分账回退单号，微信系统返回的唯一标识 |
| 回退方类型 | return_account_type | 是 | string(32) | MERCHANT_ID| 枚举值：
MERCHANT_ID：商户 ID|
| 回退方账号 | return_account| 是 | string(64) | 86693852 | 回退方类型是 MERCHANT_ID 时，商户 ID|
| 回退金额 | return_amount | 是 | int| 888| 回退金额，整数，单位为分 |
| 回退描述 | description | 是 | string(80) | 用户退款 | 分账回退的原因描述 |
| 回退结果 | result| 是 | string(32) | SUCCESS| 枚举值：
PROCESSING:处理中
SUCCESS:已成功
FAILED: 已失败如果查询到回退结果在处理中，请勿变更商户回退单号，使用相同的参数再次发起分账回退，否则会出现资金风险。
在处理中状态的回退单如果 5 天没有成功，会因为超时被设置为已失败。 |
| 失败原因 | fail_reason | 否 | string(32) | ACCOUNT_ABNORMAL | 枚举值：
ACCOUNT_ABNORMAL:分账接收方账户异常
TIME_OUT_CLOSED: 超时关单
此字段仅回退结果为 FAILED 时存在 |
| 完成时间 | finish_time | 是 | string(16) | 20180608170132 | 分账回退完成时间 |

## 错误码

| 名称| 描述 | 原因| 解决方案 |
|---|-----|---|------|
| SYSTEMERROR | 接口返回错误 | 系统超时| 请尝试再次调用 API|
| PARAM_ERROR | 参数错误 | 请求参数未按指引进行填写| 请求参数错误，请重新检查再调用分账完结接口 |
| INVALID_REQUEST | 请求不合法 | 参数中 APPID 或 MCHID 不存在等 | 请检查请求参数 |
| FREQUENCY_LIMITED | 频率限制 | 请求过多被频率限制| 该笔请求未受理，请降低频率后原单重试，请勿更换商户分账单号 |
| ORDERNOTEXIST | 回退单不存在 | 分账单号或者回退单号错误| 请检查分账单号，回退单号是否有误 |
