直连商户预扣费通知API
更新时间:2023.10.12接口请求方
具有委托代扣扣费权限,且开通了周期扣费功能的直连商户。
能力说明
商户进行委托代扣扣费前需要在可通知时间段内调用「预扣费通知」的接口为用户发送扣费提醒,并设定扣费持续天数和预计扣费金额,经过扣费等待期后,在可扣费期内可发起扣费,扣款金额不能高于预计扣费金额,扣费失败可主动发起重试扣费(重试次数由其他规则限制),直到扣费成功,或者可扣费期结束。 扣费等待期:商户调用「预扣费通知」接口成功当日及第二个自然日。 扣费持续天数:由商户通过参数指定,在扣费等待期后,能够进行扣款的自然日天数。 可扣费期:经过扣费等待期后的N个自然日,N为扣费持续天数。 扣费周期:商户调用「预扣费通知」接口成功后,到扣款成功或可扣费日期结束。 可通知时间段:为了不打扰用户,商户只能在北京时间每天 6:00~22:00调用「预扣费通知」。 注:一个扣费周期内只能扣款成功一次,即无论可扣费期是否结束,只要周期内扣款成功一次,该扣费周期则结束。
扣费规则
假如扣费持续天数为1, 通知下发当天为“扣费等待期”,商户不允许扣费 第二天为“扣费等待期”,商户不允许扣费 第三天为“可扣费期”,在可扣费期内可以发起扣费。 如:若需要在3号扣费,则需要在1号将通知下发给用户,2号为用户的扣费等待期,用户可以选择等待扣费或关闭扣费服务,3号商户可正常发起扣费。
# 接口说明
支持商户:
【普通商户】
请求方式:
【POST】/v3/papay/contracts/{contract_id}/notify
请求域名:
【主域名】
https://api.mch.weixin.qq.com
使用该域名将访问就近的接入点【备域名】
https://api2.mch.weixin.qq.com
使用该域名将访问异地的接入点 ,指引点击查看
# 请求参数
- Authorization 必填请参考 签名认证 生成认证信息
- Accept 必填请设置为
application/json
- Content-Type 必填请设置为
application/json
Header HTTP头参数
- contract_id 必填【委托代扣协议ID】 从URL中获取,签约成功后,微信返回的委托代扣协议ID。
Path 路径参数
- mchid 必填【直连商户号】 填写微信支付分配的商户号。
- appid 必填【公众号ID】 直连商户的AppID。
- deduct_duration 选填【扣费持续时间】 在扣费等待期后,能够进行扣款的时间。注:扣费等待期是指商户调用本接口成功当日及第二个自然日。
- 属性
- estimated_amount 必填【预计扣费金额信息】
- 属性
Body 包体参数
请求示例
POST
# 应答参数
无应答包体
应答示例
204 No Content
# 错误码
# 公共错误码
状态码 | 错误码 | 描述 | 解决方案 |
---|---|---|---|
400 | PARAM_ERROR | 参数错误 | 请根据错误提示正确传入参数 |
400 | INVALID_REQUEST | HTTP 请求不符合微信支付 APIv3 接口规则 | 请参阅 接口规则 |
401 | SIGN_ERROR | 验证不通过 | 请参阅 签名常见问题 |
500 | SYSTEM_ERROR | 系统异常,请稍后重试 | 请稍后重试 |
# 业务错误码
状态码 | 错误码 | 描述 | 解决方案 |
---|---|---|---|
400 | INVALID_REQUEST | 无效请求 | 请根据接口返回的详细信息检查您的程序 |
403 | CONTRACT_NOT_EXIST | 签约协议不存在 | 请检查签约协议号是否正确,是否已解约 |
403 | NO_AUTH | 商户暂无权限使用此功能 | 请开通商户号权限。请联系产品或商务申请 |
429 | FREQUENCY_LIMITED | 频率超限 | 请降低请求接口频率 |
500 | SYSTEM_ERROR | 接口返回错误 | 系统异常,请用相同参数重新调用 |
文档是否有帮助