---
url: "https://pay.weixin.qq.com/doc/v3/partner/4013328143.md"
title: "二级商户按日终余额预约提现"
doc_id: 4013328143
---

>更新时间：2024.12.19

二级商户按日终余额预约提现API帮助二级商户发起基本户提现。提现金额按前一天日终余额计算，当前余额少于前一天日终余额时退化为按当前余额计算（请求参数需额外设置该选项）。预计当日到账，具体以实际银行处理为准。

注意：

1. 建议在 10 点以后发起按日终余额预约提现（过早发起会返回日终余额还未生成的错误），每天 23 点 55 分后不再受理按日终余额预约提现请求。

2. 单笔预约提现最大发起金额暂不能超过8亿（大于8亿能力在规划中）。

3. 相同的“商户提现单号”+“二级商户号”可以提供6天内防重。

4. 当返回错误码为SYSTEM\_ERROR时，请务必不要换单重试，使用原单(所有请求参数保持不变)发起重试。

5. 返回参数可能会有新增，且顺序可能不完全遵循此文档规范，如果在解析回包的时候发生错误，可以根据api文档重新确认返回内容。

6. 接口限频：平台服务商 40次/秒。如需调整请联系微信支付客服或小助手。





## 接口说明

支持商户：【平台商户】

请求方式：【POST】 `/v3/platsolution/ecommerce/withdraw/day-end-balance-withdraw`

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

　　　　　【备域名】https://api2.mch.weixin.qq.com 使用该域名将访问异地的接入点，指引[点击查看](https://pay.weixin.qq.com/doc/v3/merchant/4012075113.md)

## 请求参数

### Header 参数
| 参数名 | 类型 | 必填 | 描述 |
| --- |  --- | --- | --- |
| Authorization | string | true | 请参考 [签名认证](https://pay.weixin.qq.com/doc/v3/merchant/4012365342.md#%E8%AF%B7%E6%B1%82%E6%8E%A5%E5%8F%A3%E5%90%8E%E7%AB%AF%E7%AD%BE%E5%90%8D) 生成认证信息 |
| Accept | string | true | 请设置为 `application/json` |
| Content-Type | string | true | 请设置为 `application/json` |
### Body 参数
| 参数名 | 类型 | 必填 | 描述 |
| --- |  --- | --- | --- |
| sub_mchid | string(32) | true | 【二级商户号】 收付通平台二级商户号，由微信支付生成并下发 |
| out_request_no | string(32) | true | 【商户提现单号】 由商户自定义生成，必须是字母数字 |
| calculate_amount_type | string | true | 【计算提现金额方式】 仅当前余额少于日终余额时才有区别，否则均以日终余额计算提现金额<br>可选取值<br><ul><li>`ONLY_DAY_END_BALANCE`:  仅使用日终余额计算提现金额，当前余额少于日终余额时返回余额不足的错误。提现金额 = 日终余额 \- 留存额。</li><li>`ALLOW_CURRENT_BALANCE`:  优先使用日终余额计算提现金额，当前余额少于日终余额时使用当前余额计算提现金额。提现金额 = min(可用余额, 日终余额) - 留存额。</li></ul> |
| remark | string(56) | false | 【提现备注】 商户对预约提现单的备注 |
| bank_memo | string(32) | false | 【银行附言】 展示在收款银行系统中的附言，由数字、字母、汉字组成（能否成功展示依赖银行系统支持） |
| notify_url | string(256) | false | 【提现结果通知地址】 异步接收提现结果通知（包括提现完成、提现异常）的回调地址，必须为公网可访问的URL，必须为HTTPS协议，不能携带URL参数。 |
| reserve_amount | integer | false | 【留存额】 单位：分，计算提现金额时账户将留存的最小金额 |
## 应答参数

200 OK

| 参数名 | 类型 | 必填 | 描述 |
| --- |  --- | --- | --- |
| sp_mchid | string | true | 【收付通平台商户号】 收付通平台商户号 |
| sub_mchid | string | true | 【二级商户号】 收付通平台二级商户号，由微信支付生成并下发 |
| status | string | true | 【单据状态】 单据状态<br>可选取值<br><ul><li>`CREATED`:  已创建，该状态下请使用 原单(所有请求参数保持不变) 发起重试提现</li><li>`PROCESSING`:  处理中，等待银行返回结果，最终结果请重试查询</li><li>`FINISHED`:  已完成，向银行付款完成且收到银行反馈为成功，但不代表银行入账一定成功，部分情况下可能发生银行退票(银行正常在7个工作日内处理退票，银行异常时无最长期限)。</li><li>`ABNORMAL`:  提现异常，存在向银行付款失败或银行退票情况</li></ul> |
| withdraw_id | string(64) | true | 【微信支付提现单号】 提交预约提现申请后，由微信支付返回的申请单号，作为查询申请状态的唯一标识 |
| out_request_no | string(32) | true | 【商户提现单号】 由商户自定义生成，必须是字母数字 |
| total_amount | integer | true | 【提现金额】 发起提现的金额，单位：分 |
| success_amount | integer | false | 【提现成功金额】 单位：分 |
| fail_amount | integer | false | 【提现失败金额】 包括银行处理失败和余额不足等原因关单，单位：分 |
| refund_amount | integer | false | 【提现退票金额】 大于0时代表存在提现退票，若此前已提现成功，那么“提现成功金额”会相应扣减；请检查登记的账户信息是否有误，退票后资金会自动退回发起时的商户账户内。单位：分 |
| create_time | string | true | 【提交预约时间】 遵循 [rfc3339](https://tools.ietf.org/html/rfc3339) 标准格式，格式为yyyy-MM-DDTHH:mm:ss+TIMEZONE，yyyy-MM-DD表示年月日，T出现在字符串中，表示time元素的开头，HH:mm:ss表示时分秒，TIMEZONE表示时区（+08:00表示东八区时间，领先UTC 8小时，即北京时间）。例如：2024-08-20T13:29:35+08:00表示，北京时间2024年8月20日13点29分35秒 |
| update_time | string | true | 【状态更新时间】 遵循 [rfc3339](https://tools.ietf.org/html/rfc3339) 标准格式，格式为yyyy-MM-DDTHH:mm:ss+TIMEZONE，yyyy-MM-DD表示年月日，T出现在字符串中，表示time元素的开头，HH:mm:ss表示时分秒，TIMEZONE表示时区（+08:00表示东八区时间，领先UTC 8小时，即北京时间）。例如：2024-08-20T13:29:35+08:00表示，北京时间2024年8月20日13点29分35秒 |
| reason | string(255) | false | 【失败原因】 仅在提现失败、退票、关单时有值。如果存在多条原因，则通过 ';' 分隔 |
| remark | string(255) | false | 【提现备注】 商户对预约提现单的备注。若发起预约提现时未传入相应值或输入不合法，则该值为空 |
| bank_memo | string(32) | false | 【银行附言】 展示在收款银行系统中的附言，由数字、字母、汉字组成（能否成功展示依赖银行系统支持）。若发起提现时未传入相应值或输入不合法，则该值为空 |
| account_type | string | true | 【出款账户类型】 出款账户类型<br>可选取值<br><ul><li>`BASIC`:  基本账户</li><li>`FEES`:  手续费账户</li><li>`OPERATION`:  运营账户</li></ul> |
| account_number | string(4) | true | 【入账银行账号后四位】 提现入账的银行账号，仅显示后四位 |
| account_bank | string(10) | true | 【入账银行】 提现入账的开户银行 |
| bank_name | string(128) | false | 【入账银行全称（含支行）】 提现入账的开户银行全称（含支行） |
## 错误码

### 公共错误码

| 状态码 | 错误码 | 描述 | 解决方案 |
| --- | --- | --- | --- |
| 400 | PARAM\_ERROR | 参数错误 | 请根据错误提示正确传入参数 |
| 400 | INVALID\_REQUEST | HTTP 请求不符合微信支付 APIv3 接口规则 | 请参阅 [接口规则](https://pay.weixin.qq.com/doc/v3/merchant/4012081709.md) |
| 401 | SIGN\_ERROR | 验证不通过 | 请参阅 [签名常见问题](https://pay.weixin.qq.com/doc/v3/merchant/4012072670.md) |
| 500 | SYSTEM\_ERROR | 系统异常，请稍后重试 | 请稍后重试 |

### 业务错误码

| 状态码 | 错误码 | 描述 | 解决方案 |
| --- | --- | --- | --- |
| 400 | INVALID\_REQUEST | 二级商户未开启预约提现权限 | 请确认电商平台商户号和二级商户商户号是否存在受理关系 |
| 400 | INVALID\_REQUEST | 商户账户类型不存在或未开通 | 请确认二级商户账户类型有效 |
| 403 | ACCOUNT\_ERROR | 二级商户未绑卡 | 二级商户号没有绑定结算银行卡，绑定后重试 |
| 403 | ACCOUNT\_NOT\_VERIFIED | 二级商户下行打款未成功 | 二级商户号结算银行卡信息有误，修改后重试 |
| 403 | CONTRACT\_NOT\_CONFIRMED | 二级商户未开启预约提现权限 | 二级商户号预约提现权限已关闭，无法发起预约提现 |
| 403 | NO\_AUTH | 无接口使用权限 | 请开通商户号相关权限 |
| 403 | NOT\_ENOUGH | 二级商户号账户可用余额不足 | 二级商户号账户可用余额不足 |
| 403 | REQUEST\_BLOCKED | 二级商户未开启预约提现权限 | 二级商户号预约提现权限被冻结，无法发起预约提现 |
| 404 | ORDER\_NOT\_EXIST | 预约提现单号不存在 | 请检查订单号是否正确 |
| 429 | FREQUENCY\_LIMITED | 频率限制 | 请降低频率后重试 |
| 500 | SYSTEM\_ERROR | 系统错误 | 系统异常，请使用相同参数稍后重新调用 |

请求示例

- [curl 示例](https://pay.weixin.qq.com/doc/v3/partner/4013328143-curl.md)
- [Java 示例](https://pay.weixin.qq.com/doc/v3/partner/4013328143-java.md)
- [Go 示例](https://pay.weixin.qq.com/doc/v3/partner/4013328143-go.md)


应答示例

> 200 OK

```
{
  "sp_mchid" : "222212131",
  "sub_mchid" : "1900000109",
  "status" : "CREATED",
  "withdraw_id" : "12321937198237912739132791732912793127931279317929791239112123",
  "out_request_no" : "T20240611222222222200",
  "total_amount" : 3,
  "success_amount" : 0,
  "fail_amount" : 0,
  "refund_amount" : 0,
  "create_time" : "2024-08-20T13:29:35+08:00",
  "update_time" : "2024-08-20T13:29:35+08:00",
  "reason" : "卡号错误",
  "remark" : "交易提现",
  "bank_memo" : "xx平台提现",
  "account_type" : "BASIC",
  "account_number" : "1178",
  "account_bank" : "招商银行",
  "bank_name" : "中国工商银行股份有限公司深圳软件园支行"
}

```
