批量转账查询
查询批量转账批次单以及指定状态的转账明细单。
提示
- 只支持查询最近30天内的转账。
- 转账明细单只会在批次单完成的情况下返回,如果需要在批次处理过程中查询转账明细单,请通过转账明细单查询接口来查询。
- 如果查询单号对应的数据不存在,那么数据不存在的原因可能是:
- 转账还在处理中;
- 转账批次单受理失败或还未开始处理导致转账明细单没有落地。
- 如果遇到回包返回不明确的错误码或错误信息,请务必不要换单重试,请联系客服确认转账情况。
请求接口
openapi/pay/fund/wxSpTransferBatchQuery
公共参数
请求参数
| 参数 | 必填 | 类型 | 说明 |
|---|---|---|---|
| batch_id | 是 | String(64) | 微信支付批次单号,二选一 |
| out_batch_no | 是 | String(32) | 商家批次单号,二选一 |
| need_query_detail | 是 | String(1) | 是否查询转账明细单,Y为是,N为否 |
| offset | 否 | int | 分页起始位置, 默认0 |
| limit | 否 | int | 分页大小,默认20 |
| detail_status | 否 | String(10) | 明细状态,需要查询转账明细单时,必填。 ALL:全部。需要同时查询转账成功和转账失败的明细单 SUCCESS:转账成功。只查询转账成功的明细单 FAIL:转账失败。只查询转账失败的明细单 |
content请求实例
{
"batch_id": "1030000071100999991182020050700019480001",
"need_query_detail": "Y",
"offset": 1,
"limit": 20,
"detail_status": "ALL"
}
响应参数
| 名称 | 必填 | 类型 | 说明 |
|---|---|---|---|
| sub_mchid | 是 | String(32) | 特约商户号 |
| out_batch_no | 是 | String(32) | 商家批次单号 |
| batch_id | 是 | String(64) | 微信支付批次单号 |
| sub_appid | 否 | String(32) | 特约商户appid |
| batch_status | 是 | String(32) | 批次状态。 WAIT_PAY:待付款,商户员工确认付款阶段。 ACCEPTED:已受理。批次已受理成功,若发起批量转账的30分钟后,转账批次单仍处于该状态,可能原因是商户账户余额不足等。商户可查询账户资金流水,若该笔转账批次单的扣款已经发生,则表示批次已经进入转账中,请再次查单确认。 PROCESSING:转账中。已开始处理批次内的转账明细单。 FINISHED:已完成。批次内的所有转账明细单都已处理完成。 CLOSED:已关闭。可查询具体的批次关闭原因确认 |
| batch_type | 是 | String(32) | 批次类型 API:API方式发起 WEB:页面方式发起 |
| authorization_type | 是 | String(32) | 特约商户授权类型 NFORMATION_AUTHORIZATION_TYPE:特约商户信息授权类型 FUND_AUTHORIZATION_TYPE:特约商户资金授权类型 INFORMATION_AND_FUND_AUTHORIZATION_TYPE:特约商户信息和资金授权类型 |
| batch_name | 是 | String(32) | 批次名称 |
| batch_remark | 是 | String(32) | 批次备注 |
| close_reason | 否 | String(32) | 批次关闭原因 MERCHANT_REVOCATION:商户主动撤销 OVERDUE_CLOSE:系统超时关闭 |
| total_amount | 是 | int | 转账总金额,单位分 |
| total_num | 是 | int | 转账总笔数 |
| create_time | 否 | String(32) | 批次创建时间,格式:"yyyy-MM-dd HH:mm:ss" |
| update_time | 否 | String(32) | 批次更新时间,格式:"yyyy-MM-dd HH:mm:ss" |
| success_amount | 否 | int | 转账成功金额,单位分 |
| success_num | 否 | int | 转账成功笔数 |
| fail_amount | 否 | int | 转账失败金额,单位分 |
| fail_num | 否 | int | 转账失败笔数 |
| transfer_purpose | 否 | String(32) | 批量转账用途 GOODSPAYMENT:货款 COMMISSION:佣金 REFUND:退款 REIMBURSEMENT:报销 FREIGHT:运费 OTHERS:其他 |
| transfer_detail_list | 否 | array | 转账明细单列表 当批次状态为“FINISHED”(已完成),且成功查询到转账明细单时返回。包括微信明细单号、明细状态信息 |
transfer_detail_list列表参数
| 名称 | 必填 | 类型 | 说明 |
|---|---|---|---|
| detail_id | 是 | String(32) | 微信支付明细单号 |
| out_detail_no | 是 | String(32) | 商家明细单号 |
| detail_status | 是 | String(64) | 明细状态 PROCESSING:转账中。正在处理中,转账结果尚未明确 SUCCESS:转账成功 FAIL:转账失败。需要确认失败原因后,再决定是否重新发起对该笔明细单的转账(并非整个转账批次单) |
响应示例
{
"sub_mchid": "1900000109",
"out_batch_no": "plfk20210611132926",
"batch_id": "1030000071100999991182020050700019480001",
"sub_appid": "wxf636efh567hg4356",
"batch_status": "ACCEPTED",
"batch_type": "API",
"authorization_type": "INFORMATION_AUTHORIZATION_TYPE",
"batch_name": "2021年6月报销单",
"batch_remark": "2021年6月报销单",
"close_reason": "OVERDUE_CLOSE",
"total_amount": 200000,
"total_num": 2,
"create_time": "2021-06-11 13:29:35",
"update_time": "2021-06-11 13:30:52",
"success_amount": 120000,
"success_num": 1,
"fail_amount": 80000,
"fail_num": 1,
"transfer_detail_list": [
{
"detail_id": "1040000071100999991182020050700019500100",
"out_detail_no": "plfk2021061113292601",
"detail_status": "SUCCESS"
},
{
"detail_id": "1040000071100999991182020050700019500222",
"out_detail_no": "plfk2021061113292602",
"detail_status": "FAIL"
}
],
"transfer_purpose": "COMMISSION"
}
错误描述说明
| 错误描述 | 解决方案 |
|---|---|
| 请求参数符合参数格式,但不符合业务规则 | 查询单据超过限定时间(30天),可以尝试通过商户平台预约下载 |
| 记录不存在 | 查询的转账批次单不存在 |
| 频率超限 | 请求量不要超过接口调用频率限制 |