# 商家扣款
---
## 1. 商家扣款失败后,立即再发起扣款时,需要修改扣款日期吗?
不需要,在扣款周期内扣款失败后可以直接发起重试
---
## 2. 商家扣款单笔扣款最大额度
目前产品规则:单个商家对单个协议的扣款限额为单笔限额 100 元。
---
## 3. 商家扣款报错CYCLE_PAY_TIME_NOT_SUPPORT(扣款时间不在允许的范围之内)
商家扣款的扣款日期应该在预期扣款时间的前五日内发起扣款。同时为保障用户体验,“商家扣款”、“周期扣款”等代扣类产品的签约后扣款操作不可在晚上执行,只能在北京时间 **7:00~22:00** 期间发起扣款。
详见: [https://opendocs.alipay.com/open/08bpuc?pathHash=74036bac](https://opendocs.alipay.com/open/08bpuc?pathHash=74036bac)
---
## 4. 目前已开通周期扣款的账户,是否可以开通子账户用于其它业务线使用
签约产品是pid维度的,开通子账户后pid不一样,子账户是需要重新签约周期扣款
---
## 5. 如何处理解约中状态的代扣协议问题
“解约中”状态的代扣协议常见于“异步解约用户操作解约”的场景。
需要商户调用代扣协议解约接口(详见:[https://opendocs.alipay.com/open/b841da1f_alipay.user.agreement.unsign?pathHash=6d2d4910&scene=common](https://opendocs.alipay.com/open/b841da1f_alipay.user.agreement.unsign?pathHash=6d2d4910&scene=common)),传入operate_type 操作类型:
- 如果允许解约,传operate_type=confirm
- 如果不允许解约,传operate_type=invalid
- 当operate_type=invalid时,extend_params扩展参数中UNSIGN_ERROR_CODE必传,UNSIGN_ERROR_CODE枚举如下:
- USER_OWE_MONEY(用户账户存在欠费订单)
- USER_IN_SERVICE(用户有进行的订单)
- 补充说明:UNSIGN_ERROR_INFO可以不传,在UNSIGN_ERROR_CODE=USER_OWE_MONEY,只能传double类型的金额。
---
## 6. 拼接商家扣款字符串的alipays链接的appid
alipays://platformapi/startapp?appId=60000157&appClearTop=false&startMultApp=YES&sign_params= 链接中的appId是固定的,无需修改。
---
## 7. 周期扣款产品支付并签约唤起提示:当面付等产品不支持在小程序场景内使用,请联系商户更换收单产品后再重新发起支付
小程序场景专用支付产品为:jsapi支付、预授权支付、商家扣款,相关说明详见:[升级指南](https://opendocs.alipay.com/mini/08e1af?pathHash=bb1e00d5)
### 创建小程序支付并签约步骤如下:
使用步骤:
1. 在小程序中下单,获取交易号tradeNo
2. 唤起收银台完成支付
#### 前期准备
接入 JASPI支付产品 [JSAPI支付接入准备](https://opendocs.alipay.com/mini/05xmim?pathHash=e9ca29c2)。
#### 创建交易订单
在服务端调用 [alipay.trade.create](https://opendocs.alipay.com/mini/05x9kv?scene=de4d6a1e0c6e423b9eefa7c3a6dcb7a5&pathHash=779dc517)(统一收单交易创建接口),获得支付宝交易号 tradeNO。
详情参考文档:[https://opendocs.alipay.com/open/08bpuc?pathHash=74036bac#%E5%88%9B%E5%BB%BA%E5%B0%8F%E7%A8%8B%E5%BA%8F%E6%94%AF%E4%BB%98%E5%B9%B6%E7%AD%BE%E7%BA%A6](https://opendocs.alipay.com/open/08bpuc?pathHash=74036bac#%E5%88%9B%E5%BB%BA%E5%B0%8F%E7%A8%8B%E5%BA%8F%E6%94%AF%E4%BB%98%E5%B9%B6%E7%AD%BE%E7%BA%A6)
---
## 8. 小程序和APP的周期扣款和签约模式使用的API一致吗
小程序和APP的周期扣款和签约模式使用的API不一致。
小程序支付并签约参考:[https://opendocs.alipay.com/open/08bpuc?pathHash=74036bac#%E5%88%9B%E5%BB%BA%E5%B0%8F%E7%A8%8B%E5%BA%8F%E6%94%AF%E4%BB%98%E5%B9%B6%E7%AD%BE%E7%BA%A6](https://opendocs.alipay.com/open/08bpuc?pathHash=74036bac#%E5%88%9B%E5%BB%BA%E5%B0%8F%E7%A8%8B%E5%BA%8F%E6%94%AF%E4%BB%98%E5%B9%B6%E7%AD%BE%E7%BA%A6)
APP支付并签约参考:[https://opendocs.alipay.com/open/08bpuc?pathHash=74036bac#%E5%88%9B%E5%BB%BAAPP%E6%94%AF%E4%BB%98%E5%B9%B6%E7%AD%BE%E7%BA%A6](https://opendocs.alipay.com/open/08bpuc?pathHash=74036bac#%E5%88%9B%E5%BB%BAAPP%E6%94%AF%E4%BB%98%E5%B9%B6%E7%AD%BE%E7%BA%A6)
---
## 9. 扣款日期不在签约时的允许范围之内
扣款日期应该在预期扣款时间的前五日内发起扣款,超过这个时间就报错扣款日期不在签约时的允许范围之内。
---
## 10. mapi版本的代扣如何接入
mapi 1.0版本的代扣相关产品已经不再支持新商户接入了;
新接入的商户请使用新版代扣产品(商家扣款),参考文档:[https://opendocs.alipay.com/open/06de8c?pathHash=654eb816](https://opendocs.alipay.com/open/06de8c?pathHash=654eb816)
---
## 11. 商家扣款每次最多可以扣100元吗
是的,单个商家对单个协议的扣款限额为单笔限额100元。
---
## 12. 商家扣款里如何获取签约用户的id
代扣签约的异步通知会返回用户uid信息
---
## 13. 【代扣问题一键诊断】工具使用说明
开发者在对接“商家扣款、周期扣款”等代扣类产品时经常会遇到签约唤起失败、支付并签约异常、代扣协议扣款失败、代扣协议解约异常、代扣协议查询失败、代扣协议修改故障、异步通知发送失败等异常情况,此时商户可以使用工具:[https://opensupport.alipay.com/support/diagnostic-tools/06eab291-4ee3-421c-86e2-895ab46776cb](https://opensupport.alipay.com/support/diagnostic-tools/06eab291-4ee3-421c-86e2-895ab46776cb) 自行发起诊断。
输入请求参数、接口和请求时间后,点击“开始诊断”可定位接口异常具体原因,并提供相应的解决方案。
---
## 14. 商家扣款个人签约产品码从哪里获取
商家扣款个人签约产品固定为:CYCLE_PAY_AUTH_P;
参考文档:[https://opendocs.alipay.com/open/08ayiq?pathHash=a2d4e097](https://opendocs.alipay.com/open/08ayiq?pathHash=a2d4e097)
---
## 15. 周期扣款的这个场景码传参,默认都是INDUSTRY|DEFAULT_SCENE么
是的;如果有述求可以自行在商家中心新增模版配置
登录 **商家平台** > [产品大全](https://b.alipay.com/page/product-mall/all-product) >**商家扣款** >**功能管理** >**修改** >**设置模版 可** 新增模版及场景码
---
## 16. 代扣交易的账单里面【管理自动扣款】的取值是什么?
默认是取的签约方案里面的【商户服务名称】,取值规则是:【支付宝账户名称】+ 自动续费;目前不支持修改
---
## 17. 个人签约产品码(personal_product_code)如何传入
商家扣款个人签约产品码personal_product_code固定为CYCLE_PAY_AUTH_P,详见文档:[https://opendocs.alipay.com/open/08ayiq?pathHash=a2d4e097](https://opendocs.alipay.com/open/08ayiq?pathHash=a2d4e097)
---
## 18. 商家扣款重新开通,那之前已经签约的用户扣款额度限制是按之前的还是按新开的商家扣款产品额度限制?
扣款额度限制默认按照当前签约的方案里面的产品额度限制做校验。
---
## 19. harmony os 极简版SDK 如何介入免密签约能力
sdk不提供此项能力,请参考开放平台文档,生成对应唤端链接,进行唤端。附独立签约文档:[https://opendocs.alipay.com/open/08ayiq?pathHash=a2d4e097](https://opendocs.alipay.com/open/08ayiq?pathHash=a2d4e097) 如何唤端请参考鸿蒙官方文档 [https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/uiability-startup-adjust-V5](https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/uiability-startup-adjust-V5)
---
## 20. 商家扣款支付并签约接口的首次支付时间取的是异步通知中哪个参数
调用alipay.trade.app.pay支付并签约接口完成支付和签约后,可以使用支付异步通知中的 **gmt_payment字段** 算作首次支付的时间。
---
## 21. 代扣产品签约的免密支付协议是否可以协助商户解约
支付宝技术支持侧无发协助进行协议解约,需要商户根据自身业务需要调用解约接口进行解约,详见:
[https://opendocs.alipay.com/open/b841da1f_alipay.user.agreement.unsign?pathHash=6d2d4910&ref=api&scene=common](https://opendocs.alipay.com/open/b841da1f_alipay.user.agreement.unsign?pathHash=6d2d4910&ref=api&scene=common)
---
## 22. 更改付款顺序后,代扣是否会失败
更改付款顺序不一定会导致代扣失败。但如果用户更改付款顺序后,可用支付渠道资金不足,则会导致扣款失败。
---
## 23. 支付并签约,支付成功的异步通知中没有协议号参数
这是正常的,支付和签约的异步通知是分开发送的。支付的异步通知中只会携带支付的通知数据,不会有签约的协议号等信息。
支付并签约场景中签约的异步发送地址取值优先级:sign_notify_url 参数 > notify_url 参数 > 应用网关地址
---
## 24. 如何查询商家扣款下次扣款时间
### 查询方式
商家与用户签约商家扣款协议成功后,通过签约时设置的 period_rule_params.execute_time 指定商户发起首次扣款的时间, 通过period_rule_params.period_type、period_rule_params.period 指定周期类型、周期数 自动计算下次扣款时间,**商家需自行记录发起首次扣款时间 和 下次扣款时间** 。
1、如果商家未记录 首次扣款时间,需要查询首次扣款时间,建议方案如下:
- 需要联系用户在支付宝钱包【我的】>【设置】>【支付设置】>【免密支付/自动扣款】中选择对应的协议进行查看。
- 如果有过成功扣款或者修改协议的操作,**服务详情** 中的扣款时间为扣款后或修改后的下次扣款时间,但是不影响根据 **服务详情** 中的扣款时间计算下次扣款时间或者调用协议修改接口。
2、如果商家未记录 下次扣款时间,需要查询下次扣款时间,建议方案如下:
- 可以调用协议信息查询接口进行查询,对应参数:**next_deduct_time(** 预计下次扣款时间**)** ,接口文档:[https://opendocs.alipay.com/open/3dab71bc_alipay.user.agreement.query?scene=common&pathHash=6706b504](https://opendocs.alipay.com/open/3dab71bc_alipay.user.agreement.query?scene=common&pathHash=6706b504)
### 注意事项
- 商家扣款“服务详情”的扣款时间变化说明:
- 会根据扣款情况进行修改,用户可以从支付宝客户端代扣协议 **服务详情** 中看到下一次什么时间扣款。
案例:period_type=MONTH,period=1,execute_time=2020-04-02。
服务详情扣款时间:2020-04-02,扣款成功后服务详情扣款时间显示:2020-05-02。
或者协议修改接口设置:execute_time=2020-04-10,修改成功后服务详情扣款时间显示:2020-04-10。
- 本期扣款一直失败,或者忘记扣款,在 **服务详情** 中扣款时间不会改变,仍然为当期时间。
案例:period_type=MONTH,period=1,execute_time=2020-04-02。本期商家忘记扣款,结果时间到了2020-04-03,但是服务详情扣款时间仍为:2020-04-02。
原因及处理方案:本期没有扣款,**服务详情** 中约定扣款日始终停留在本期, 到下一期约定扣款日发起扣款会报:不在扣款时间范围内。
- 周期/商家扣款产品的设计是为了满足每期都有扣款需求的业务,一期扣一期不扣的业务场景不在射程范围内。
- 代码逻辑上是这么设计的:必须要上一期扣款成功才会转入下一期,否则商家应该停服务。
---
## 25. 如何判断代扣是否支付成功
商家扣款如何判断代扣是否扣款成功
- 根据公共返回参数中的 code,返回10000 则可以判断扣款是成功的;
- 根据接口设置的 notify_url 进行接收异步,根据异步通知返回的 trade_status(交易状态)=TRADE_SUCCESS;
- 根据 [alipay.trade.query](https://opendocs.alipay.com/open/02ekfq)(统一收单交易查询)返回的 trade_status(交易状态)=TRADE_SUCCESS;
注意:若同步接口反馈其他状态不可直接判断扣款是失败的,需要通过查询接口二次确认。可以参考下面处理方式
- **针对耗时不敏感的业务场景** (如:周期续费代扣,无需用户同步等待结果):建议商家等待5分钟后,使用 [alipay.trade.query](https://opendocs.alipay.com/pre-apis/00a8o1) 接口查询交易状态,若查询 4 次后依然返回等待用户付款,商户可以选择幂等重试代扣或通过 [alipay.trade.cancel](https://opendocs.alipay.com/pre-apis/00a8ui) 接口发起交易撤销。
---
## 26. 查询单次代扣协议
1、后续如有单次代扣协议查询需求,建议在网页端提交问题时「产品分类」选"收单&代扣问题"、「问题类型」选"接口报错/异常排查"、「产品」选“商家扣款”、「问题描述」示例:查询代扣协议信息,支付宝协议号:2025****** 或 查询代扣协议信息,用户uid:2088****,商户pid:2088*****,个人签约产品码:ONE_TIME_AUTH_P。 规范提问可触发AI工具自动查询协议信息。
2、可以使用支付宝开放平台提供的 `alipay.user.agreement.query` 接口来查询单次代扣协议的详细信息。
3、也可以通过工具进行查询:[https://opensupport.alipay.com/support/diagnostic-tools/019512fd-25e8-4736-b0d5-498b00ccbfe8](https://opensupport.alipay.com/support/diagnostic-tools/019512fd-25e8-4736-b0d5-498b00ccbfe8)
---
## 27. 【代扣协议信息查询】工具使用说明
如果需要查询商家扣款、周期扣款等代扣类产品签约的协议信息(协议号、签约产品码、签约时间、协议状态、签约场景码、解约信息等)可以使用工具:[https://opensupport.alipay.com/support/diagnostic-tools/09bd7c2e-a331-47f1-8072-32ed506142a8](https://opensupport-pre.alipay.com/support/diagnostic-tools/09bd7c2e-a331-47f1-8072-32ed506142a8)
1、传入协议号(特殊可选)或 UID(特殊可选)+ 个人签约产品码(非必传)+ PID(非必传)来查询代扣类产品相关协议详情。 2、协议号 和 UID不能同时为空。(注意:当前工具仅支持查询已登录账户的交易信息)
---
## 28. 商家扣款用户主动申请解约,为何没有收到异步通知
1. 确认是否是异步解约情况,如果是异步解约,商家扣款用户主动申请解约后,需要商家确认是否可以解约。
2. 异步解约场景,如果允许解约,需要商户主动调用解约接口 alipay.user.agreement.unsign。
3. 异步解约场景,可能当前协议仍处于解约中状态,并未解约。
4. 用户解约的异步通知是发送到应用对应的应用网关上的,而非签约时传入的 notify_url。请登录支付宝开放平台,找到应用设置应用网关进行配置。
5. 如果明确已经解约成功,且解约前设置了应用网关,借助异步解约查询工具:[https://opensupport.alipay.com/support/diagnostic-tools/329cfb48-dbc6-4d9a-a528-d348b9618b5e](https://opensupport.alipay.com/support/diagnostic-tools/329cfb48-dbc6-4d9a-a528-d348b9618b5e) 查看异步通知情况。
---
## 29. 如何检查和确认支付宝异步通知地址是否正确
1. notify_url地址必须是外网post可以正常访问的地址(即访问状态码为http200;
2. notify_url必须是以http或https开头的完整的url;
3. notify_url地址后不能加?id=123这类自定义参数;
4. 不支持任何跳转语句,重定向;
5. 不支持cookie、session、js、html、application。
6. 如遇到支付宝异步通知未收到或重复发送等问题,建议使用“异步通知”工具解决,工具地址:[https://opensupport.alipay.com/support/diagnostic-tools/329cfb48-dbc6-4d9a-a528-d348b9618b5e](https://opensupport.alipay.com/support/diagnostic-tools/329cfb48-dbc6-4d9a-a528-d348b9618b5e)
---
## 30. 商家扣款alipay.trade.app.pay和alipay.trade.pay这两个接口的区别
在接入支付并签约时需使用alipay.trade.app.pay,在完成协议签约后,后续周期性扣款需通过alipay.trade.pay接口完成扣款操作。
---
## 31. 代扣支持组合支付吗
不支持,代扣无法进行组合支付。如果一张卡的余额不足,然后轮询其他支付渠道的资金也不够的话,会提示代扣失败。
---
## 32. 单次代扣个人产品码是什么
"personal_product_code": "ONE_TIME_AUTH_P"
---
## 33. 支付并签约,但是用户没有勾选签约,只进行支付,机构侧是不是只会收到支付相关的通知,不会收到签约相关的通知
是的,只有签约成功后才会触发签约的异步通知。
---
## 34. APP支付客户购买联系包年会员后,取消了签约 ,然后用户又打开了续约;短期内扣款了两次,有没有什么方式屏蔽会员期间内的第二次扣款
如商户有独立签约模式权限,二次签约可使用独立签约模式进行签约;
如商户没有独立签约模式权限,可以在业务侧限制服务有效期间不能进行支付并签约,等服务到期后在进行支付并签约。
---
## 35. 产品到期后重新续签是否会影响产品能力
会有影响,若产品失效后续接口会出现ISV权限不足报错。
---
## 36. 在使用alipay.trade.create接口创建支付并签约时,设置了ReturnUrl,但支付签约后没有跳转到ReturnUrl地址,应该如何解决?
alipay.trade.create接口不支持设置ReturnUrl。如果要实现支付成功后的同步跳转,需要在前端小程序中写跳转逻辑。具体步骤如下:
1. 在小程序中处理支付成功的逻辑。
2. 在success回调中添加跳转到指定ReturnUrl的代码。
---
## 37. 商家扣款支付并签约场景,比如首次扣了0.1元,并打开了签约开关,后续我能代扣19.9元么
不可以,因为商家扣款后续扣款金额不能超过首次扣款金额的3倍。
详见:[https://opendocs.alipay.com/open/00a98h?pathHash=db786228](https://opendocs.alipay.com/open/00a98h?pathHash=db786228)
---
## 38. 支付并签约的场景中,为什么没有收到签约回调
商家扣款支付并签约场景中,用户支付成功及签约成功都会触发异步通知。规则如下:
- 若 [alipay.trade.app.pay(app支付接口2.0接口)](https://opendocs.alipay.com/open/e65d4f60_alipay.trade.app.pay)只设置 notify_url,则支付和签约两条异步通知都会发送到该地址。
- 若 [alipay.trade.app.pay(app支付接口2.0接口)](https://opendocs.alipay.com/open/e65d4f60_alipay.trade.app.pay)分别设置 notify_url 及 sign_notify_url 则支付成功异步通知会发送到 notify_url,签约成功异步通知会发送到 sign_notify_url。
1、建议商户根据上述规则,核对支付并签约接口是有有正确设定异步通知接收地址(明确签约是否成功了,且异步通知接收地址外网可达)
2、商家可调用 [alipay.user.agreement.query(支付宝个人代扣协议查询接口)](https://opendocs.alipay.com/open/3dab71bc_alipay.user.agreement.query)查询用户是否完成签约操作,用户实际签约结果请以查询接口返回值为准
3、商家可以使用工具诊断支付并签约的接口异常、订单状态、通知结果等,工具地址:[https://opensupport.alipay.com/support/diagnostic-tools/06eab291-4ee3-421c-86e2-895ab46776cb](https://opensupport.alipay.com/support/diagnostic-tools/06eab291-4ee3-421c-86e2-895ab46776cb)
---
## 39. 周期管控规则参数里面的total_amount、total_payments如果不传,会对后续扣款次数,金额有限制吗
没有限制,只要后续单次扣款的金额不超过您周期规则中的single_amount值就可以。
详见:[https://opendocs.alipay.com/open/08bpuc?pathHash=74036bac#%E7%AD%BE%E7%BA%A6%E9%87%8D%E8%A6%81%E5%8F%82%E6%95%B0%EF%BC%88agreement_sign_params%EF%BC%89%E8%AF%B4%E6%98%8E](https://opendocs.alipay.com/open/08bpuc?pathHash=74036bac#%E7%AD%BE%E7%BA%A6%E9%87%8D%E8%A6%81%E5%8F%82%E6%95%B0%EF%BC%88agreement_sign_params%EF%BC%89%E8%AF%B4%E6%98%8E)
---
## 40. 单次代扣,超过15天之后订单关闭了不能使用新订单号重新发起支付了吗?
可以的,单次代扣交易关闭未扣款成功,可以更换单号继续发起扣款的。
单次代扣,一个协议号只能扣款成功一次,扣款成功后协议自动解约失效;协议未失效前,都可以在关闭订单后更换新的单号发起扣款
---
## 41. 商家扣款,签约完成后续扣款的out_trade_no需要重新设置吗?
out_trade_no参数是商户订单号,由商家自定义。需保证在商户端不重复。
如果是扣款失败,且扣款未超过扣款日志,可以保持参数不变重试触发扣款。
---
## 42. 在哪查看签约异步通知字段
目前没有单独的签约通知字段文档,建议参考 [商家扣款接入指南](https://opendocs.alipay.com/open/08ayiq?pathHash=a2d4e097) 中描述的签约通知重要参数说明。
---
## 43. 商家扣款首期0元,次月开始代扣的支付并代扣接口是否支持
目前支付并签约场景避免商家低价营销有产品管控,后续代扣金额不能超过首次支付金额的3倍。接口要求最低金额是0.01元。首期最低代扣0.01元,后续不能超过首次支付的三倍。
---
## 44. 商家扣款和用户签约的协议过一段时间后就自动解除了是什么原因?
商家扣款,用户签约协议自己解约了,可以参考下面流程检查一下:
1.协议到期或次数限制:签约时接口设置了扣款次数或者设置了协议有效期(扣款次数:period_rule_params.total_payments;协议有效期:sign_validity_period)。
2.用户主动解约的:用户可能在支付宝 App 内自行解约,路径为:支付宝 App - 我的 - 右上角齿轮 - 支付设置/免密支付 - 自动续费 - 找到代扣协议点进详情 - 关闭服务;
用户主动解约,可以在appid设置应用网关地址用于接收通知。
3.接口触发解约:商家侧通过调用解约接口 alipay.user.agreement.unsign 主动解约
可以通过在线咨询 选“商家扣款”、「问题描述」示例:查询代扣协议信息,支付宝协议号:2025****** 或 查询代扣协议信息,里面会返回解约方信息和解约时间,可以通过这个工具返回信息来自行判断
---
## 45. 商家扣款支持哪些类型应用接入?
建议使用移动应用或者小程序应用,支付并签约可能会需要使用JSAPI支付和app支付。
---
## 46. 如何查询代扣协议详情信息
1. 如需查询更多代扣类产品的协议详情信息,推荐使用“代扣协议信息查询”工具,工具地址为:[https://opensupport.alipay.com/support/diagnostic-tools/019512fd-25e8-4736-b0d5-498b00ccbfe8](https://opensupport.alipay.com/support/diagnostic-tools/019512fd-25e8-4736-b0d5-498b00ccbfe8)。
2. 商户也可以通过 alipay.user.agreement.query(支付宝个人代扣协议查询接口) 来查询用户的单笔代扣协议详情。
---
## 47. 商家扣款签约后直接会触发 支付宝消息push,但是实际扣款发生是要在一周之后,这个通知必须要前置这么长时间吗?
用户签约周期/商家扣款成功,会有通知提醒用户签约成功。 签约完就会在用户支付宝app腰封处推一个push通知 。 在后续代扣扣款前5-7天还会有个push通知,通知用户即将扣款。
---
## 48. 商家扣款external_agreement_no(商户签约号)
external_agreement_no:商户签约号,代扣协议中标示用户的唯一签约号(确保在商户系统中唯一)。一个external_agreement_no 值只能签约成功一次
格式规则:支持大写小写字母和数字,最长32位。
商户系统按需自定义传入,如果同一用户在同一产品码、同一签约场景下,签订了多份代扣协议,那么需要指定并传入该值,即API设置sign_scene,external_agreement_no必传。
注意:external_agreement_no是商家对签约协议的唯一标识,agreement_no(支付宝代扣协议号)是支付宝系统对签约协议的唯一标识,代扣签约成功由支付宝返回给商户,扣款的时候可以传入agreement_no来进行扣款。
---
## 49. 支付并签约三倍管控说明
“商家扣款”针对商家侧金额倍数管控,后续扣款金额不得大于首次金额的3倍。
---
## 50. 当开启异步解约后,拒绝解约时是否会发送异步解约消息
拒绝解约时并不会触发协议解约,所以不会发送异步解约消息。
---
## 51. 如何获取签约成功支付宝返回的协议号(agreement_no)
1. 签约成功的异步通知会返回协议号,商户可以接入异步通知获取签约成功的协议号信息,参考:[https://opendocs.alipay.com/open/08bpuc?pathHash=74036bac#%E7%AD%BE%E7%BA%A6%E5%BC%82%E6%AD%A5%E9%80%9A%E7%9F%A5%E8%AF%B4%E6%98%8E](https://opendocs.alipay.com/open/08bpuc?pathHash=74036bac#%E7%AD%BE%E7%BA%A6%E5%BC%82%E6%AD%A5%E9%80%9A%E7%9F%A5%E8%AF%B4%E6%98%8E)
2. 可以通过代扣协议查询接口获取协议号,接口文档:[https://opendocs.alipay.com/open/3dab71bc_alipay.user.agreement.query?scene=common&pathHash=6706b504](https://opendocs.alipay.com/open/3dab71bc_alipay.user.agreement.query?scene=common&pathHash=6706b504)
---
## 52. 代扣是否有退款消息
代扣异步通知触发条件:
部分退款交易状态TRADE_SUCCESS有异步通知,全额退款对应交易状态:TRADE_CLOSED 没有异步
### 触发条件
| **触发条件名** | **触发条件描述** | **触发条件默认值** |
| --- | --- | --- |
| TRADE_FINISHED | 交易完成 | false(不触发通知) |
| TRADE_SUCCESS | 支付成功 | true(触发通知) |
| WAIT_BUYER_PAY | 交易创建 | false(不触发通知) |
| TRADE_CLOSED | 交易关闭 | false(不触发通知) |
---
## 53. 商家扣款支付并签约时如何从支付异步通知中判断用户是否关闭了签约
支付回调通知无法判断用户是否勾选了周期扣款的签约协议,如果支付成功的通知收到了,未收到签约成功的通知,建议使用协议查询接口来确认协议是否签约成功。
alipay.user.agreement.query接口文档:[https://opendocs.alipay.com/open/3dab71bc_alipay.user.agreement.query?scene=common&pathHash=6706b504](https://opendocs.alipay.com/open/3dab71bc_alipay.user.agreement.query?scene=common&pathHash=6706b504)
---
## 54. 单次代扣协议,客户可以在支付宝app主动解除吗
不可以的,单次代扣协议不会在用户支付宝中展示协议信息,没有用户操作解约的入口
---
## 55. alipay.trade.pay 接口调用后的响应参数 未找到 trade_status 状态字段
alipay.trade.pay 接口同步响应默认不返回 trade_status 状态参数,判断交易是否成功建议以异步通知和查询接口为准(交易成功的异步通知 或 查询接口会返回trade_status字段)。
---
## 56. alipay.user.agreement.page.sign接口的notify_url在哪里传入
alipay.user.agreement.page.sign接口的notify_url在公共参数里面
---
## 57. 如何区分不同场景的订单
可以通过自定参数 out_trade_no商家单号去区分,比如支付并签约的out_trade_no可以设置为 01+单号 ,走alipay.trade.pay接口扣款的out_trade_no可以设置为02+单号 这样在账单中根据单号去区分交易
---
## 58. 商家扣款没有可用的支付工具
商家扣款报错:ACQ.NO_PAYMENT_INSTRUMENTS_AVAILABLE(没有可用的支付工具)
错误原因:
1.扣款场景一般是轮询用户支付渠道扣款,最后渠道返回不可用;
2.扣款接口接口中传入过 disable_pay_channels 禁用支付渠道参数或者 enable_pay_channels 可用渠道参数,导致用户支持的支付渠道无法使用。
3.付款用户关闭了支付宝账号的可扣款的支付渠道,可让扣款用户检查支付能力
---
## 59. 商家扣款的订单标题,在签约后还能进行修改吗
商家扣款的订单标题在签约后通常无法进行修改,订单标题通常展示的商家别名信息(若账号没有设置别名信息,则展示账号名称);
如果需要修改订单标题,建议重新签约,重新签约时可以设置正确的商家别名信息,登录商家平台:[https://b.alipay.com/page/store-management/infomanage](https://b.alipay.com/page/store-management/infomanage) 去修改。
---
## 60. 周期扣款用户签约的数据在商户后台哪里查看
是商户自己保存的,商家中心后台无法查看的
---
## 61. 商家扣款可以优先扣花呗吗?
首先需要商家支持花呗支付渠道,并且用户有开通花呗。
用户侧在签约是可以设置扣款顺序,
1.签约时,在页面【扣款方式】一栏选择的是 花呗,那么后续扣款时,会优先从花呗去扣款,如果用户花呗额度不足之类的,支付宝侧则会按照用户在支付宝app中设置的支付渠道顺序去自动轮询扣款;
2.已经签约完成,在签约详情页面【扣款方式】也可以设置,如果未设置默认按照app中设置的支付渠道顺序去自动轮询扣款。
---
## 62. 为什么在指定的首次扣款日期进行扣款时,会收到扣款时间不在允许的范围之内的错误
扣款日期应该在预期扣款时间的前五日内发起扣款。同时为保障用户体验,“商家扣款”、“周期扣款”等代扣类产品的签约后扣款操作不可在晚上执行,只能在北京时间 **7:00~22:00** 期间发起扣款。
---
## 63. 目前在H5内调用AlipayJSBridge.call唤起签约页的方法是否还支持,如果有其他替代方案是什么
目前最新的方法已经没有AlipayJSBridge.call唤起签约页的能力。建议使用其他替代方案,具体可以参考官方文档中的 [pageExecute()方法如何生成url形式](https://opendocs.alipay.com/support/01ravn) 生成 url ,在支付宝端内 H5 直接打开签约页面。
---
## 64. 签约产品码GENERAL_WITHHOLDING和GENERAL_WITHHOLDING_P的区别
GENERAL_WITHHOLDING 是商家扣款的固定产品码
GENERAL_WITHHOLDING_P 是商家扣款--商户代扣模式下的固定个人产品码
CYCLE_PAY_AUTH_P 是商家扣款--周期扣款模式下的固定个人产品码。
---
## 65. 异步通知有alipay_user_id字段返回吗
从异步通知中获取用户id可以取buyer_id(buyer_open_id),买家支付宝用户号。买家支付宝账号对应的支付宝唯一用户号。新商户建议使用open_id替代该字段。对于新商户,user_id字段未来计划逐步回收,存量商户可继续使用。如使用open_id,请确认 应用-开发配置-openid配置管理 已启用。无该配置项,可查看[openid配置申请](https://opendocs.alipay.com/common/0ai9ok?pathHash=a43b913d)。
---
## 66. 商家扣款签约跳转时不出现 “取消/打开”按钮
如果签约链接是这个可用的,点击链接就会跳转的。如果复制到浏览器没有跳转,可能是浏览器适配的问题,需要咨询对应浏览器的开发商
---
## 67. 商家扣款后续扣款金额不能超过首次扣款金额的3倍的运营规则
1、商家扣款后续扣款金额不能超过首次扣款金额的3倍的运营规则从2023年12月1号开始生效
2、同时针对“支付并签约场景”,预计下次扣款时间会按照【首次支付时间+传入的周期规则】去计算,不再取execute_time。请商户按照[商家扣款产品使用规范](https://opendocs.alipay.com/b/06aql9),合理使用商家扣款产品
详见:[https://opendocs.alipay.com/open/00a98h?pathHash=db786228](https://opendocs.alipay.com/open/00a98h?pathHash=db786228)
---
## 68. 代扣是否支持境外卡支付
没有强限制,轮训用户资产展开,外卡的话代扣消费都有限额的
---
## 69. 商户代扣支付并签约时如何进行入参
建议参考 商户代扣支付并签约文档链接: [https://opendocs.alipay.com/pre-open/20170601105911096277new/fgv341?pathHash=9bec2457](https://opendocs.alipay.com/pre-open/20170601105911096277new/fgv341?pathHash=9bec2457)
---
## 70. 如何通过spi.alipay.pay.app.thirdpartyprize.precheck.consult接口让商家决定展示哪个奖品
1. 用户点击解约时,支付宝主动咨询商户奖品的情况,调用接口[https://opendocs.alipay.com/apis/02gxdp。](https://opendocs.alipay.com/apis/02gxdp。)
2. 如有奖品提供,则向用户展示对应的奖品。
3. 用户放弃解约。
4. 触发活动。
5. 支付宝主动通知商户给用户发奖品,调用接口[https://opendocs.alipay.com/apis/025tzg。](https://opendocs.alipay.com/apis/025tzg。)
6. 商户通过spi.alipay.pay.app.thirdpartyprize.precheck.consult接口判断给用户展示哪一个活动。
---
## 71. 商家扣款签约成功后的页面是否支持修改
签约成功页面是不支持修改的。
---
## 72. 商家扣款产品,商户一个APP应用是否可以接入多个不同主体的商户号去对接商家扣款支付并签约
可以的,不同主体的账号去签约开通商家扣款产品,然后可以在同一个商家APP中去拉起支付并签约
---
## 73. 代扣失败后,用户支付宝客户端是否会有提示?
失败是没有提示的,代扣成功后会有成功的记录
---
## 74. h5纯签约返回拉起签约的地址,地址中链接 http://d.alipay.com/i/index.htm?iframeSrc= 可以修改为Https吗
可以的,Https和http都支持。
---
## 75. 如何查询单次代扣协议的外部协议号
1. 如需查询更多代扣类产品的协议详情信息,推荐使用“代扣协议信息查询”工具,工具地址为:[https://opensupport.alipay.com/support/diagnostic-tools/019512fd-25e8-4736-b0d5-498b00ccbfe8](https://opensupport.alipay.com/support/diagnostic-tools/019512fd-25e8-4736-b0d5-498b00ccbfe8)。
2. 商户也可以通过 alipay.user.agreement.query(支付宝个人代扣协议查询接口) 来查询用户的单笔代扣协议详情。
---
## 76. 代扣的金额是实时到账的吗
默认代扣收款的金额是实时到商家账户的;但是未连续交易满30天或开通产品未满90天 ,是t+1结算的。
---
## 77. jsapi支付前端拉起返回6001
**问题原因:**
- 6001 代表支付未完成
**解决方案:**
- 用户中途取消签约 / 支付,建议引导用户重新签约 / 支付。
更多my.tradePay 返回支付结果码参考 [https://opendocs.alipay.com/mini/05xhsr?pathHash=d4709298](https://opendocs.alipay.com/mini/05xhsr?pathHash=d4709298)
---
## 78. 商家扣款代扣成功是否会发送异步通知
代扣成功是会发送异步通知的,异步通知发送至支付接口设置的 notify_url 地址中,若是未设置 notify_url,则不触发异步。
---
## 79. 如何在商家签约后扣款时禁用用户的余额和花呗支付,避免扣款失败
您可以在扣款接口入参disable_pay_channels来禁用支付渠道。渠道参数值可参考[https://opendocs.alipay.com/open/common/wifww7](https://opendocs.alipay.com/open/common/wifww7)。
如后续遇到商家扣款、周期扣款等代扣类产品相关接口异常、订单状态异常等问题,建议使用商家扣款工具解决,工具地址为:[https://opensupport.alipay.com/support/diagnostic-tools/06eab291-4ee3-421c-86e2-895ab46776cb](https://opensupport.alipay.com/support/diagnostic-tools/06eab291-4ee3-421c-86e2-895ab46776cb)。
---
## 80. 周期扣款先支付1分钱完成签约体验几天后再进行周期性扣款
目前运营侧禁止低价诱导用户签约,不支持该场景。运营规则可以参考:[商家扣款产品使用规范](https://opendocs.alipay.com/rules/0a8ihd)。
---
## 81. 代扣交易如何对应二级商户
**代扣交易对应二级商户** :在代扣交易中,为了确保交易能够正确地与特定的二级商户关联,您需要在发起代扣请求时传递二级商户的相关信息。即使在代扣签约过程中这些信息是可选的,但在实际交易时,这些信息是必要的,以确保资金流向正确的二级商户。
**传递二级商户信息** :您可以通过在代扣交易接口中设置 sub_merchant 参数来指定二级商户。这个参数通常包括二级商户的 ID 和其他相关信息,确保交易能够准确地与特定的二级商户绑定。
"sub_merchant": {
"merchant_id": "xxxxx"
},
sub_merchant和out_trade_no同级设置
---
## 82. 商家扣款场景场景码是要单独添加模板,不能默认调用的么
可以使用默认模板,也可以按需添加模版。
---
## 83. 商家扣款如何设置sign_scene(签约协议场景)
商户签约[商家扣款](https://opendocs.alipay.com/open/06de8c?pathHash=654eb816)(product_code=GENERAL_WITHHOLDING),sign_scene需商家在商家平台配置后获取:
- sign_scene默认值为:INDUSTRY|DEFAULT_SCENE,(可固定传参,无需商家平台配置)。
- sign_scene修改方式:商家登录商家后台>[产品中心](https://b.alipay.com/page/product-workspace/all-product),选择商家扣款>功能管理中查看,默认的第一个模板都是INDUSTRY|DEFAULT_SCENE,如需新增其它场景值模板,请点击修改按钮去操作即可。(自定义规则:**INDUSTRY** (固定值)**| 场景英文** (大写))
---
## 84. 支付并签约的扣款是否有时间限制
支付并签约的扣款有时间限制,需要在北京时间 7:00~22:00 期间发起扣款,详见:[https://opendocs.alipay.com/open/08bpuc?pathHash=74036bac](https://opendocs.alipay.com/open/08bpuc?pathHash=74036bac)
---
## 85. 支付并签约场景接入指南
商家扣款支付并签约场景接入指南可以参考:[https://opendocs.alipay.com/open/08bpuc?pathHash=74036bac](https://opendocs.alipay.com/open/08bpuc?pathHash=74036bac)
---
## 86. 异步代扣失败是否会发出异步通知
- NORMAL_ASYNC: 普通异步模式,此模式下,还需要设置 timeout_express 大于 60 m。当同步返回结果 async_payment_mode 返回为 NORMAL_ASYNC_PAY(纯异步付款)时,表明异步受理成功。受理成功后,支付宝会根据相关的策略重试扣款,提升成功率,直到交易超时关闭。要注意扣款频率后续可能调整和优化。交易扣款失败时,不会发送用户通知。
- NEAR_REAL_TIME_ASYNC:准实时异步模式,当同步返回结果 async_payment_mode 返回为 NEAR_REAL_TIME_ASYNC_PAY 时,表明准实时受理成功。受理成功后,支付宝会先受理,然后准实时发起一次扣款,扣款失败后,会关闭交易。
---
## 87. h5纯签约返回拉起签约的地址,地址中链接http://d.alipay.com/i/index.htm?iframeSrc=,可以修改为Https吗
Https和http都支持。
---
## 88. 商家扣款POST方式生成的签约表单显示的是立即支付
没有影响可以忽略。
---
## 89. 在支付完成回调通知里是否可以查询到用户是否勾选了周期扣款的签约协议
在支付完成回调通知里是可以查询到用户是否勾选了周期扣款的签约协议的。可根据next_deduct_time(周期扣款下次扣款时间)来核实是否勾选。
---
## 90. alipay.user.agreement.query接口的 next_deduct_time 结果是扣款周期的最后一天么
是的,商家可以根据该时间提前 5 天发起扣款。
---
## 91. 1.0接口文件无法下载
**解决方案:**
- 目前1.0接口已停止维护,新接入商户已无法对接1.0接口。 如果是历史存在的商户需要查看接口文档,可以通过这个链接:[https://opendocs.alipay.com/open/277/agg4ok?pathHash=6a1eac03](https://opendocs.alipay.com/open/277/agg4ok?pathHash=6a1eac03) 进入1.0收单接口文档中查看。
- 建议对接2.0产品,产品地图参考:[https://opendocs.alipay.com/open/065yhr?pathHash=d43962c0](https://opendocs.alipay.com/open/065yhr?pathHash=d43962c0)
---
## 92. 如何使用external_agreement_no查询签约状态
1、如果在支付宝个人协议页面签约接口接口中传递了sign_scene+external_agreement_no 2 个参数,那在对应的协议查询接口中传递personal_product_code+sign_scene+external_agreement_no 3 个参数即可查询到内容。
2、如果在支付宝个人协议页面签约接口中没有传递sign_scene+external_agreement_no2 个参数,那在对应的协议查询接口中传递personal_product_code+(alipay_logon_id和alipay_user_id(alipay_open_id)2 个参数中的任何一个参数)即可查询到内容
3、也可以使用工具:[https://opensupport.alipay.com/support/diagnostic-tools/09bd7c2e-a331-47f1-8072-32ed506142a8](https://opensupport-pre.alipay.com/support/diagnostic-tools/09bd7c2e-a331-47f1-8072-32ed506142a8) 查询商家扣款、周期扣款等代扣类产品签约的协议信息
- 传入协议号(特殊可选)或 UID(特殊可选)+ 个人签约产品码(非必传)+ PID(非必传)来查询代扣类产品相关协议详情。
- 协议号 和 UID 不能同时为空。
- 注意:当前工具仅支持查询已登录账户的交易信息
---
## 93. 商家扣款功能支持鸿蒙next吗?
支持的,目前鸿蒙next相关文档在开放平台还没上架,参考:[https://ohpm.openharmony.cn/#/cn/detail/@cashier_alipay%2Fcashiersdk](https://ohpm.openharmony.cn/#/cn/detail/@cashier_alipay%2Fcashiersdk)
其中sdk不提供签约的集成,建议参考支付宝开放平台的商家扣款文档:[https://opendocs.alipay.com/open/06de8c?pathHash=654eb816](https://opendocs.alipay.com/open/06de8c?pathHash=654eb816) 将生成的链接拼结为鸿蒙的唤端链接。
---
## 94. 商家扣款是否支持分账
支持,商家扣款(周期扣款)相关分账可参考:[https://opendocs.alipay.com/open/009yj8?pathHash=d2150a55](https://opendocs.alipay.com/open/009yj8?pathHash=d2150a55)
---
## 95. 芝麻免押能扣到哪些支付渠道?商家扣款能扣到哪些支付渠道?
根据产品方案所支持的支付渠道决定。
---
## 96. 商家扣款支持组合代扣支付吗
不支持,代扣无法进行组合支付。如果一张卡的余额不足,然后轮询其他支付渠道的资金也不够的话,会提示代扣失败。
---
## 97. 周期扣款 和 商户扣款 两种模式 首次扣款的时间最长可以设置多久
周期扣款模式下,首次扣款执行时间(execute_time)可以设置为当前时间或者大于当前时间的任意一天,没有最长设置时间的限制。
商户扣款模式下,首次扣款时间同样可以设置为当前时间或者大于当前时间的任意一天,也没有最长设置时间的限制。
---
## 98. 间连机构是否开放了免密支付接口
间连场景默认不支持商家扣款产品,不支持免密支付;如果有特殊述求,联系您这边支付宝业务经理(BD)沟通述求
---
## 99. 商家扣款如何判断代扣是否支付成功
商家扣款如何判断代扣是否扣款成功
- 根据公共返回参数中的 code,返回10000 则可以判断扣款是成功的;
- 根据接口设置的 notify_url 进行接收异步,根据异步通知返回的 trade_status(交易状态)=TRADE_SUCCESS;
- 根据 [alipay.trade.query](https://opendocs.alipay.com/open/02ekfq)(统一收单交易查询)返回的 trade_status(交易状态)=TRADE_SUCCESS;
注意:若同步接口反馈其他状态不可直接判断扣款是失败的,需要通过查询接口二次确认。可以参考下面处理方式
- **针对耗时不敏感的业务场景** (如:周期续费代扣,无需用户同步等待结果):建议商家等待5分钟后,使用 [alipay.trade.query](https://opendocs.alipay.com/pre-apis/00a8o1) 接口查询交易状态,若查询 4 次后依然返回等待用户付款,商户可以选择幂等重试代扣或通过 [alipay.trade.cancel](https://opendocs.alipay.com/pre-apis/00a8ui) 接口发起交易撤销。
---
## 100. 商家扣款单笔限额 100 元,但是签约的时候,超过100元并没有提示错误
商家扣款单个商家对单个协议的扣款限额为单笔限额 100 元,因为额度是可以变化的,所以目前在签约时不会进行拦截。但是在扣款时,如果扣款金额大于100元,会报错ACQ.PRODUCT_AMOUNT_LIMIT_ERROR(产品额度超限)。
---
## 101. 使用这个场景码签约报错:商户协议状态不正常
商家扣款产品,sign_sence场景码传入的值必须要和产品方案中配置的模版场景值一样,否则会报错:商户协议状态不正常。
说明:登录 **商家平台** > [产品大全](https://b.alipay.com/page/portal/home) >**商家扣款** >**功能管理** >**修改** >**设置模版 可**新增模版及场景码。
---
## 102. 商家扣款报错:签约的行业场景需要指定结算条款
商家扣款产品合约中签约的行业场景需要指定结算条款,所以相关接口需要传入结算信息; 建议商户核实自身业务场景是否需要指定结算条款,如果不需要指定结算条款的话需要修改产品合约。
---
## 103. MERCHANT_STATUS_IS_NOT_NORMAL(商户协议状态不正常)
### 错误描述
商家扣款报错:MERCHANT_STATUS_IS_NOT_NORMAL(商户协议状态不正常)。
### 问题原因
- sign_scene有误
- 商家与支付宝签约的产品协议失效
### 涉及接口
[alipay.user.agreement.page.sign](https://opendocs.alipay.com/open/02fkan?ref=api&scene=35) (支付宝个人协议页面签约接口)
[alipay.user.agreement.transfer ](https://opendocs.alipay.com/open/02fkar?ref=api)(协议由普通通用代扣协议产品转移到周期扣协议产品)
### 解决方案
#### sign_scene有误
请注意签约协议,不同协议下sign_scene传值要求不同,sign_scene 参数值详见:[https://opendocs.alipay.com/open/08bg92](https://opendocs.alipay.com/open/08bg92)
1. 周期扣款sign_scene枚举参数值详见[代扣产品常见场景值](https://opendocs.alipay.com/open/20190319114403226822/signscene?pathHash=1e125353&ref=api)。
2. 商家扣款ign_scene需商家在商家平台配置后获取:
- sign_scene默认值为:INDUSTRY|DEFAULT_SCENE,(可固定传参,无需商家平台配置)。
- sign_scene修改方式:商家登录商家后台>[产品中心](https://b.alipay.com/page/product-workspace/all-product),选择商家扣款>功能管理中查看,默认的第一个模板都是INDUSTRY|DEFAULT_SCENE,如需新增其它场景值模板,请点击修改按钮去操作即可。(自定义规则:**INDUSTRY** (固定值)**| 场景英文** (大写))
#### 产品协议失效
建议商户确认与支付宝的签约合同是否已失效,并重新签约商户合同,或拨打商家服务热线400*****58咨询,服务时间为:8:00-24:00。
---
## 104. 异步解约,商户没有收到解约的通知
异步解约,商户没有收到解约的通知,可能的情况,1,商户设置的应用网关不对或者异步通知的地址有问题,导致没有收到异步通知,2,销户解约的场景,是没有异步解约的通知的
---
## 105. 商家扣款到期是否自动扣款
Q:用户与商家之前签约周期/商家扣款协议,设定周期时间,按照周期规则到期后,系统是否自动扣款,将金额收款到商家账号?
A:不是的,周期/商家扣款在后续扣款时,需商家调用 alipay.trade.pay(统一收单交易支付接口)进行扣款,不是无感知的系统自动扣款。
详见[商家扣款如何实现扣款支付](https://opendocs.alipay.com/open/08ayiq?pathHash=a2d4e097#%E7%AD%BE%E7%BA%A6%E6%88%90%E5%8A%9F%E5%90%8E%E6%89%A3%E6%AC%BE)。
扣款时间:目前允许商家在约定日期之前 5 天开始扣款,如扣款时间 2019-11-06,可从 11-01 到 11-06 调用扣款接口。
到账时间:接口调用扣款成功,支付宝客户端内就显示账单,支付成功。如:周期要求为 2019-11-06 扣款,在 11-01 调用接口后,实际 11-01 已扣款成功,而不是等待到 11-06 才进行扣款。
接口调用是否扣款成功,根据 [alipay.trade.query](https://opendocs.alipay.com/open/02fkaw)(统一收单交易查询接口)返回的 trade_status(交易状态)进行判断:TRADE_SUCCESS 和 TRADE_FINISHED 都表示扣款成功。
扣款次数:在周期内第一次扣款成功,第二次扣款必须等下一个周期才可以扣款,否则同一个周期内扣款2次,第二次报错“ACQ.CYCLE_PAY_DATE_NOT_MATCH(扣款日期不在签约时的允许范围之内)”。
---
## 106. 如何解决ACCESS_FORBIDDEN错误并成功发起支付请求
1. 将product_code的值从错误状态修改为GENERAL_WITHHOLDING。
2. 重新发起支付请求。
3. 使用商家扣款工具排查:[https://opensupport.alipay.com/support/diagnostic-tools/06eab291-4ee3-421c-86e2-895ab46776cb](https://opensupport.alipay.com/support/diagnostic-tools/06eab291-4ee3-421c-86e2-895ab46776cb)
---
## 107. 商家扣款的最新扣款时间规则
商家扣款的最新扣款时间规则:为保障用户体验,扣费操作不可在晚上执行,请于北京时间 **7:00~22:00** 期间发起扣款,接口会报错,具体参考文档说明 [https://opendocs.alipay.com/open/08bpuc?pathHash=74036bac#%E7%AD%BE%E7%BA%A6%E6%88%90%E5%8A%9F%E5%90%8E%E6%89%A3%E6%AC%BE](https://opendocs.alipay.com/open/08bpuc?pathHash=74036bac#%E7%AD%BE%E7%BA%A6%E6%88%90%E5%8A%9F%E5%90%8E%E6%89%A3%E6%AC%BE)
---
## 108. 周期扣款唤起签约界面报错系统繁忙
1、将 [alipay.user.agreement.page.sign](https://docs.open.alipay.com/api_2/alipay.user.agreement.page.sign/)(支付宝个人协议页面签约接口) 的返回值Decode成正常JSON串并检查参数是否有误。
---
## 109. 商家扣款single_amount(单次扣款最大金额)
single_amount:单次扣款最大金额,在商家扣款period_rule_params(周期管控规则参数)中配置,period_rule_params在签约周期扣款产品(如CYCLE_PAY_AUTH_P)时必传。
single_amount是每次发起扣款时限制的最大金额,即商户每次发起扣款都不允许大于此金额,否则扣款失败返回报错。
在商家扣款产品,单个商家对单个协议的扣款限额为单笔限额 100 元,也就是SINGLE_AMOUNT值不能大于100。
后续扣款alipay.trade.pay扣款金额只要小于等于single_amount即可。
---
## 110. 商家扣款拉起支付宝页面提示“商家订单参数异常,请重新发起付款”
### 排查工具
排查工具可以直接查询到接口报错的实际原因,开发者可根据对应的解决方案进行处理。具体情况可查看 [接口报错排查工具](https://opensupport.alipay.com/support/diagnostic-tools)。
### 问题原因
- 请求 APPID 应用未上线
- 应用类型问题
- 签约权限问题
- 签名类型使用错误
- 签名方式使用错误
- 请求参数问题
- 密钥匹配问题
### 排查方案
#### 请求 APPID 应用未上线
APPID 应用未上线,应用必须是 **已上线** 状态才可以调用。
检查方法:登录 [开放平台](https://openhome.alipay.com/platform/developerIndex.htm),查看我的应用,调用 App 支付接口的 APPID 应用是否已上线。

#### 应用类型问题
检查方法:登录 [应用平台](https://openhome.alipay.com/platform/developerIndex.htm) 查看应用是否显示在第三方应用中。
如果是第三方应用需要在接口传递 app_auth_token 参数值才能进行请求。
或者可重新创建自用型应用进行调用,具体详见 [如何创建应用](https://opensupport.alipay.com/support/FAQ/4fc54b67-c99c-4a89-ac6f-f84e6338aa2a)。
#### 签约权限问题
产品未签约成功或者功能未添加,可参考 [如何确认是否完成签约](https://opensupport.alipay.com/support/FAQ/94fc6cff-9a4d-4f5e-b1c0-22fc1420e319)。
**注意:** 应用功能列表中必须添加该产品功能,且为 **已生效****** 状态。
#### 签名类型使用错误
2018-01-05 之后创建的应用只能上传 RSA2 签名方式的密钥(即 RSA(SHA1)密钥入口下架),所以接口调用的签名类型必须要使用 RSA2。
因此需核实代码中 sign_type 参数值是否和平台应用上设置密钥是否对应,详情请参见[接口加签方式配置说明](https://opendocs.alipay.com/mini/introduce/01p6u8)。

如果程序代码里面的私钥对应的公钥是上传到接口加签方式,那 sign_type=RSA2
序代码里面的私钥对应的公钥是上传到 RSA(SHA1)密钥,那 sign_type=RSA。
#### 签名方式使用错误
根据应用中 **接口加签方式** 的 **选择加签模式** ,选择对应的模式签名,公钥证书使用证书签名方式,公钥使用 RSA2 签名方法。
**注意:** 公钥证书和普通公钥的签名的数据内容,sdk 的调用代码示例都会存在差异,详见 [RSA2 和公钥证书签名验签的区别](https://opensupport.alipay.com/support/FAQ/c50f87e3-4c07-418d-af4e-ec0febaecd2e)。

#### 请求参数问题
建议只传必传参数进行测试或者使用官方客户端 demo 测试先保证账号和密钥没有问题。
- 查看 [app支付服务端代码示例](https://docs.open.alipay.com/54/106370/)(需下拉)。
- 查看官方 [客户端 demo](https://docs.open.alipay.com/54/104509/) 测试 demo。
- 如果使用官方客户端测试请求字符串成功,说明是客户端集成方式有误。
- 如果使用官方客户端测试请求字符串失败,说明是服务端生成请求字符串错误导致。
- 沙箱测试需注意在客户端中加 [沙箱联调代码](https://opendocs.alipay.com/open/204/106450)。
方法调用位置如下图所示:

#### 密钥匹配问题
非证书方式请求:检查自己的项目中的私钥和上传的商户公钥是否匹配,详见 [如何检验 RSA2 密钥是否匹配](https://opensupport.alipay.com/support/FAQ/eaf3d6f8-4aab-4345-a864-a3eb5f6bfad9)。
证书方法请求:检查自己项目中的私钥和使用的商户公钥证书是否匹配,详见 [如何检验密钥证书是否匹配](https://opensupport.alipay.com/support/FAQ/46f91f8d-34f3-409a-a667-e6275458c131)。
### 注意事项
如果是使用小程序支付报错“ALIN10146”,除以上排查方案需额外检查以下几点:
- 检查小程序端设置数据为交易号(trade_no),还是请求字符串。
- 如果设置为交易号(trade_no),说明是使用小程序支付 alipay.trade.create 接口,建议检查如下:
- 检查使用 my.tradePay 中必须设置为 tradeNo,不可以是 orderStr。
- 建议传参代码格式参考 [文档示例](https://opendocs.alipay.com/mini/00arkf#%E6%8E%A5%E5%85%A5%E6%8C%87%E5%BC%95)。
- 如果设置为请求字符串,说明是使用 App 支付接口请求传参,建议检查如下:
- 是否签约 App 支付。
- 应用里是否有 App 支付功能选项(目前小程序已经不能添加 App 支付功能选项了,之前添加过的不受影响),且为已生效状态。
- 以上情况都满足后,小程序传参需使用 orderStr 调用。
**注意:**
- 应用中的 [小程序支付](https://opendocs.alipay.com/mini/00arkf) 功能只含有 alipay.trade.create 接口权限,不含 alipay.trade.app.pay 接口权限。
- 如果应用中没有 App 支付功能,只能添加小程序支付,则必须通过小程序支付 alipay.trade.create 接口生成交易号,在 my.tradePay 中传入 tradeNo 交易号参数。
---
## 111. 代扣协议状态为TEMP代表什么
TEMP-暂存是签约解决agreement_effect_type控制 如果设置了NOTICE签约完成就是暂存 需要再次调用alipay.user.agreement.sign.effect (支付宝个人协议签约生效接口)接口推进协议生效。
---
## 112. 商家扣款产品,商户一个APP应用是否可以接入多个不同主体的商户号去对接商家扣款产品
可以的,不同主体账号去签约开通商家扣款产品,可以在不同的商家app中去拉起。
---
## 113. 信用代扣支持v3sdk接入吗?
支持的,v2和v3sdk都支持信用代扣接入。
---
## 114. 指定银行卡代扣是否支持组合支付
不可以的,指定银行卡代扣是用户无感知的支付,因此无法支持组合支付。如果需要组合支付,建议使用其他支付方式。
---
## 115. 如何处理扣款时间不在签约时间范围之内的错误
1. 使用支付宝提供的诊断工具,输入请求单号和时间范围,查看具体的扣款时间和签约时间范围。
2. 根据诊断结果调整扣款时间,确保其在签约时间范围内。
3. 重新发起扣款请求,确保所有参数正确传递。
4. 如果问题仍然存在,可以联系支付宝技术支持获取进一步的帮助。
---
## 116. 用户在支付后为什么没有收到推荐签约免密支付的弹窗
1. 确认签约方式是否为支付后推荐。
2. 确认签约内容没有错误。
3. 使用商家扣款工具排查:[https://opensupport.alipay.com/support/diagnostic-tools/06eab291-4ee3-421c-86e2-895ab46776cb](https://opensupport.alipay.com/support/diagnostic-tools/06eab291-4ee3-421c-86e2-895ab46776cb)
4. 如果问题依然存在,建议联系技术支持进行详细排查。
---
## 117. 扣款日期不在签约时的允许范围之内是什么意思
扣款日期应该在预期扣款时间的前五日内发起扣款,超过这个时间就报错扣款日期不在签约时的允许范围之内。
---
## 118. 商家扣款支付并签约场景如何传参?
参考文档示例入参 :[https://opendocs.alipay.com/open/08bpuc?pathHash=74036bac](https://opendocs.alipay.com/open/08bpuc?pathHash=74036bac)
product_code:商家扣款产品码固定为GENERAL_WITHHOLDING。
personal_product_code:商家扣款个人签约产品码固定为 CYCLE_PAY_AUTH_P。
---
## 119. java.lang.RuntimeException: com.alipay.api.AlipayApiException: RSA2签名遭遇异常,请检查私钥格式是否正确。
### 问题原因
- 密钥格式错误
- 密钥设置错误
### 解决方案
1、检查格式是否正确。Java需使用PKCS8格式,其他语言使用PKCS1格式;
2、检查私钥是否是一行、是否有空格;
---
## 120. 商家扣款签约成功的agreement_no是全局唯一的吗
是的,agreement_no是全局唯一的。
---
## 121. 商家扣款签约页面,服务名称如何修改
服务名称默认取的是您商家账号配置的别名,如果没有设置别名的话,取的就是您账号的真实名称,修改商家别名的地址:[https://b.alipay.com/page/store-management/infomanage](https://b.alipay.com/page/store-management/infomanage)
---
## 122. 商户代扣接入准备
商户代扣接入准备 参考文档 :[https://opendocs.alipay.com/pre-open/20170601105911096277new/pgxw31?pathHash=7721a993](https://opendocs.alipay.com/pre-open/20170601105911096277new/pgxw31?pathHash=7721a993)
---
## 123. 商家扣款当期扣款失败,没有调用延期接口,超过可扣款时间调用协议查询接口会返回什么状态?
只有在用户主动解约或协议因其他原因失效时,查询签约状态才会返回 **USER_AGREEMENT_NOT_EXIST**(用户协议不存在)。
因此,即使某一期扣款失败,只要未取消签约,仍然可以查询到签约信息,返回的状态为有效状态。只有在解约后,才会返回 USER_AGREEMENT_NOT_EXIST。
---
## 124. 商家扣款签约页面,服务名称可以单独找bd设置吗
服务名称默认取的是您商家账号配置的别名,如果没有设置别名的话,取的就是您账号的真实名称,期望单独设置的话,那只能联系下您的bd,让其看下能否在代扣的产品合约中把名称单独设置一下了。
---
## 125. 商家扣款支付并签约如何传参?
参考文档示例入参 :[https://opendocs.alipay.com/open/08bpuc?pathHash=74036bac](https://opendocs.alipay.com/open/08bpuc?pathHash=74036bac)
product_code:商家扣款产品码固定为GENERAL_WITHHOLDING。
personal_product_code:商家扣款个人签约产品码固定为 CYCLE_PAY_AUTH_P。
---
## 126. 代扣签约结果通知文档在哪里
参考文档说明 [https://opendocs.alipay.com/open/08bpuc?pathHash=74036bac](https://opendocs.alipay.com/open/08bpuc?pathHash=74036bac)
---
## 127. 商家扣款 alipay.trade.pay(统一收单交易支付接口),接口调用次数上限是多少? 是什么维度的? 商户维度还是C端用户维度
该接口没有具体调用次数限制。
---
## 128. 商家扣款用户取消签约会有异步通知吗?
用户拉起签约页面后取消签约是不会有异步通知的,调用[alipay.user.agreement.query(支付宝个人代扣协议查询接口)](https://opendocs.alipay.com/open/3dab71bc_alipay.user.agreement.query?referPath=08bpuc_74036bac)接口会返回协议不存在。
---
## 129. AGREEMENT_NOT_EXIST(协议信息不存在)
### 错误描述
商家扣款接口报错 ACQ.AGREEMENT_NOT_EXIST(协议信息不存在)。
### 问题原因
1,agreement_no参数值有误
2,协议已经解约
### 涉及接口
alipay.user.agreement.unsign(支付宝个人代扣协议解约接口)
### 解决方案
请检查接口设置的agreement_no参数值是否正确,是否存在。
---
## 130. 商家扣款支付并签约小程序接入流程
参考接入文档 [https://opendocs.alipay.com/open/08bpuc?pathHash=74036bac](https://opendocs.alipay.com/open/08bpuc?pathHash=74036bac)
---
## 131. 商户代扣h5支付并签约走alipay.trade.page.pay接口的支付和签约异步通知发送到哪里
英文名称:alipay.trade.page.pay(统一收单下单并支付页面接口)
有无异步:需要api接口传入,成功才有异步(全部成功两个异步)、异步发送地址,支付走notify_url,签约走应用网关。 参考文档说明:[https://opendocs.alipay.com/pre-open/01o4xw](https://opendocs.alipay.com/pre-open/01o4xw)
---
## 132. ACQ.AGREEMENT_ERROR(协议信息异常)
### 错误描述
周期扣款扣款接口报错“ACQ.AGREEMENT_ERROR(协议信息异常)”
### 问题原因
1、接口并发导致
2、接口传递的agreement_no不属于product_code下的协议号
### 解决方案
#### 1、接口并发导致
接口报错不要高频率调用接口,建议报错了过几秒后重新调用检查是否正常。
#### 2、协议传参错误
周期扣款在进行调用[alipay.trade.pay](https://opendocs.alipay.com/apis/api_1/alipay.trade.pay/)接口时,需注意以下几点。
(1)添加product_code参数,且该参数值必须为商户扣款(周期扣款)的固定值进行区分:GENERAL_WITHHOLDING。
(2)检查agreement_no参数值
agreement_no=签约成功返回的agreement_no,核实接口传递的agreement_no值是否存在,是否填写正确,该值可点击[商家扣款如何查询agreement_no](https://opensupport.alipay.com/support/FAQ/720cda49-9f8d-4d31-8678-142460855278)获取。
---
## 133. 直连/间连场景接入商户代扣如何创建应用?
直连场景appid和加签信息是需要商家在[支付宝开放平台](https://open.alipay.com/)创建应用并配置密钥,应用创建流程参考文档:[https://opendocs.alipay.com/open/200/105310](https://opendocs.alipay.com/open/200/105310) 。间连场景接入代扣的话,是需要银联网联侧调用支付宝接口。
---
## 134. 商家扣款产品文档上要求单个商家对单个协议的扣款限额为单笔限额 100 元,实际我支付并签约拉起的支付大于100元是为什么呢
文档上说的单个商家对单个协议的扣款限额为单笔限额 100 元指的是后续调用alipay.trade.pay接口进行代扣单笔不能超100元,支付并签约首次支付不受这个单笔100元的影响。
---
## 135. 商家扣款通过小程序签约的对接文档
独立签约参考:[https://opendocs.alipay.com/open/08ayiq?pathHash=a2d4e097#%E5%B0%8F%E7%A8%8B%E5%BA%8F%E5%86%85%E5%94%A4%E8%B5%B7%E7%AD%BE%E7%BA%A6%E9%A1%B5](https://opendocs.alipay.com/open/08ayiq?pathHash=a2d4e097#%E5%B0%8F%E7%A8%8B%E5%BA%8F%E5%86%85%E5%94%A4%E8%B5%B7%E7%AD%BE%E7%BA%A6%E9%A1%B5)
支付并签约参考:[https://opendocs.alipay.com/open/08bpuc?pathHash=74036bac#%E5%88%9B%E5%BB%BA%E5%B0%8F%E7%A8%8B%E5%BA%8F%E6%94%AF%E4%BB%98%E5%B9%B6%E7%AD%BE%E7%BA%A6](https://opendocs.alipay.com/open/08bpuc?pathHash=74036bac#%E5%88%9B%E5%BB%BA%E5%B0%8F%E7%A8%8B%E5%BA%8F%E6%94%AF%E4%BB%98%E5%B9%B6%E7%AD%BE%E7%BA%A6)
---
## 136. 商家扣款支付并签约接口的回调 是先回调签约后回调支付吗?
签约和支付的异步通知几乎是同时的,一般是支付的通知会稍快一点。
---
## 137. 商家扣款代扣失败报错余额不足,这种情况下代扣订单是什么状态?
是WAIT_BUYER_PAY:交易创建,等待买家付款,超过交易自动关闭时间后会变成 TRADE_CLOSED状态。
---
## 138. 商家扣款,每日限额是多少?
商家扣款能力扣款额度有 单笔、单日累计、单月累计 的额度上限控制,额度按照商户 PID + 用户维度计算。具体得看产品方案配置的额度情况 ,可联系商户客服,商户客服电话:400*****58,或在线商户客服:登录 b.alipay.com 点击右侧小蚂蚁头像中(我的客服)进行咨询 [https://cschannel.alipay.com/newPortal.htm?scene=kfpt](https://cschannel.alipay.com/newPortal.htm?scene=kfpt)
---
## 139. 商家扣款如何提高单笔限额
商家扣款限额提高的问题,建议您联系支付宝客服咨询, 可拨打电话400-758-5858 ,或在线商户客服进行咨询:[https://cschannel.alipay.com/newPortal.htm?scene=cpzx-cpdq](https://cschannel.alipay.com/newPortal.htm?scene=cpzx-cpdq)
---
## 140. 如何通过商家扣款协议状态status字段判断协议是否签约成功?
商家扣款场景下协议状态只有这两种:NORMAL:正常;UNSIGN:解约。
NORMAL:代表协议正常(签约成功)。签约失败调用 [alipay.user.agreement.query(支付宝个人代扣协议查询接口)](https://opendocs.alipay.com/open/3dab71bc_alipay.user.agreement.query?referPath=08ayiq_a2d4e097)会同步"返回协议不存在"。
---
## 141. 商家扣款解约入参怎么传
开发者可调用 [alipay.user.agreement.unsign(支付宝个人代扣协议解约接口)](https://opendocs.alipay.com/open/b841da1f_alipay.user.agreement.unsign?referPath=08bpuc_74036bac)完成协议解约。
- 通过协议号解约,此时请求参数中填入协议号(agreement_no),其它业务参数均可不填。
- 通过`personal_product_code`+`sign_scene+external_agreement_no`+`alipay_logon_id+alipay_user_id(alipay_open_id)`来解约,入参值按照商家调 [alipay.user.agreement.page.sign(支付宝个人协议页面签约接口)](https://opendocs.alipay.com/open/8bccfa0b_alipay.user.agreement.page.sign?referPath=08bpuc_74036bac)中的对应值传入;如果传入 external_agreement_no,则 alipay_logon_id 与 alipay_user_id(alipay_open_id)可不传,否则 alipay_logon_id 与alipay_user_id(alipay_open_id)必须传其中一个。
---
## 142. 商家扣款协议查询接口如何传参
商家可调用 [alipay.user.agreement.query(支付宝个人代扣协议查询接口)](https://opendocs.alipay.com/open/3dab71bc_alipay.user.agreement.query?referPath=08bpuc_74036bac)查询用户是否完成签约操作,用户实际签约结果请以查询接口返回值为准。
- 通过协议号查询协议详情,此时请求参数中填入协议号(agreement_no),其它业务参数均可不填。
- 如果在支付宝个人协议页面签约接口接口中传递了`sign_scene`+`external_agreement_no` 2 个参数,那在对应的协议查询接口中传递`personal_product_code`+`sign_scene`+`external_agreement_no` 3 个参数即可查询到内容。
- 如果在支付宝个人协议页面签约接口中没有传递`sign_scene`+`external_agreement_no`2 个参数,那在对应的协议查询接口中传递`personal_product_code`+(`alipay_logon_id`和`alipay_user_id(alipay_open_id)`2 个参数中的任何一个参数)即可查询到内容。
参考文档说明:[https://opendocs.alipay.com/open/08bpuc?pathHash=74036bac](https://opendocs.alipay.com/open/08bpuc?pathHash=74036bac)
---
## 143. 商家扣款total_payments(总扣款次数)
total_payments:总扣款次数,商家扣款period_rule_params(周期管控规则参数)中配置,
total_payments 是在协议有效期内的商户成功扣款的次数限制(扣款失败不计入)。
---
## 144. 商家扣款如何配置场景值模板?
sign_scene:签约场景码,具体参数请商家完成产品签约后,根据业务场景或用户购买商品的差异性对应新增模版及场景码。
说明:登录 **商家平台** > [产品大全](https://b.alipay.com/page/product-workspace/all-product) >**商家扣款** >**功能管理** >**修改** >**设置模版 可**新增模版及场景码。商家在确认新增模版及场景码完成后,签约接入时需要传入模版中实际填写的场景码。场景码格式详情可查看 [常见场景值](https://opendocs.alipay.com/open/08bg92?referPath=08bpuc_74036bac)。
---
## 145. alipay.user.agreement.page.sign(支付宝个人协议页面签约接口) 签约后如何发起支付?
商家根据用户签约成功支付宝返回的协议号(agreement_no)每次主动调[alipay.trade.pay](https://opendocs.alipay.com/open/38d751b1_alipay.trade.pay?scene=32&pathHash=0a222003)(统一收单交易支付接口),完成后续扣款操作。
**注:** 允许商家在扣款日 execute_time前 5 天开始扣款,例:约定扣款日为 20 号,支持商家从 15 至 20 号发起扣款。
**注意** :为保障用户体验,扣费操作不可在晚上执行,请于北京时间 **7:00~22:00** 期间发起扣款。
---
## 146. 普通密钥接口加签除了应用公钥和支付宝私钥,还别的密钥吗
还有支付宝公钥,通过在应用后台接口加签方式处上传应用公钥获取到支付宝公钥,用于同步异步验签。
---
## 147. 商户代扣alipay.user.agreement.permission.create(支付宝协议支付许可创建接口)接口的扣款许可生效时间怎么计算?
调用alipay.user.agreement.permission.create(支付宝协议支付许可创建接口)接口成功开始计算。这个effective_time_start 就是许可生效时间。
---
## 148. 商家扣款想要实现:用户先购买7天会员,会员到期当天按自动续费扣款XX元/月来,请问需要怎样实现呢?
【用户先购买7天会员,会员到期当天按自动续费扣款XX元/月来扣】,标准对外的代扣产品无法实现这个场景,目前商家扣款支付并签约场景有产品管控,预计下次扣款时间会按照【首次支付时间+传入的周期规则】去计算,不再取execute_time,所以无法实现上述场景。
---
## 149. 商户代扣,NORMAL_ASYNC异步代扣模式最短的关单时间可以设置成几分钟?
NORMAL_ASYNC: 普通异步模式,此模式下,还需要设置 timeout_express 大于 60 m。当同步返回结果 async_payment_mode 返回为 NORMAL_ASYNC_PAY(纯异步付款)时,表明异步受理成功。受理成功后,支付宝会根据相关的策略重试扣款,提升成功率,直到交易超时关闭。要注意扣款频率后续可能调整和优化。交易扣款失败时,不会发送用户通知。参考文档说明 [https://opendocs.alipay.com/pre-open/20170601105911096277new/bclzss?pathHash=fdcd01e8](https://opendocs.alipay.com/pre-open/20170601105911096277new/bclzss?pathHash=fdcd01e8)
---
## 150. 商户代扣支持沙箱环境调试吗?
目前沙箱环境不支持商户扣款产品调试了,沙箱仅提供有限功能范围的产品支持,沙箱支持的范围参考该文档 :[https://opendocs.alipay.com/open/0c3itf](https://opendocs.alipay.com/open/0c3itf)。
---
## 151. 商家扣款独立签约和解约异步通知发送到哪里?
1,签约异步通知,支付宝会根据原始alipay.user.agreement.page.sign(支付宝个人协议页面签约接口) API 中传入的异步通知地址 notify_url,通过 POST 请求的形式分别将 签约结果 作为参数通知到商户系统。优先推送到 notify_url,若没传则取 应用网关 地址(商家必须在 开放平台应用信息 中配置 应用网关)
2,用户主动在支付宝客户端进行解约(无商家侧接口调用),解约成功后,支付宝将发送解约信息给商户应用在 支付宝开放平台 中配置的应用网关地址
3,商家通过调用 alipay.user.agreement.unsign(支付宝个人代扣协议解约接口)来解除用户的代扣协议,接口解约优先接收接口中传的 notify_url,如果没传则取 应用网关 地址
---
## 152. 商家类型之前是【个体户】,后面升级到【企业】类型。统一社会信用代码 支付宝账号都没有变化,会影响新签商家扣款订单和存量商家扣款订单的扣款吗?
不影响,只要商家账号下开通的代扣产品合约是正常的就行。
---
## 153. 商家扣款支付并签约场景如何在app中拉起
集成方案按照App支付请求支付的模式即可,可查看 [客户端 SDK&DEMO](https://opendocs.alipay.com/open/54/104509) 参考 :[https://opendocs.alipay.com/open/54/104509](https://opendocs.alipay.com/open/54/104509)
客户端可使用该方法拉起
PayTask alipay = new PayTask(activity1); : Map result = alipay.payV2(alipay_order_str, true);
alipay_order_str是服务端接口返回的字符串信息
---
## 154. 商家扣款的alipay.trade.pay接口请求报错了会有异步回调吗
接口报错不会有异步回调,商家扣款的alipay.trade.pay接口,默认 TRADE_SUCCESS(交易成功)触发,其余交易状态均不触发异步通知。
---
## 155. 机上支付场景代扣报错:“参数无效:协议信息不能为空”
接口传参缺少扣款凭证,扣款接口需要加上扣款凭证,auth_code入参飞机上获取的离线支付凭证码值。
---
## 156. 商家扣款,代扣订单有待支付订单消息提醒吗?
代扣的交易,用户那边有不会待支付订单提醒,除非额外集成了模板消息之类的能力。
---
## 157. 商家扣款代扣交易关闭时间默认是多久?
商家扣款未设置超时时间参数,交易创建成功后默认15天交易自动关闭。
---
## 158. 商家扣款已签约的协议,后续需要包月涨价,可以如何实现
已经和用户签约成功的代扣协议,后续扣款的金额不能超过您代扣签约入参的single_amount单次扣款最大金额,如果超过该金额建议重新和用户签约新的代扣合约。
---
## 159. 商家扣款要走直付通模式的代扣需要配置什么信息
直付通模式的代扣属于定向邀约能力,需要联系支付宝业务经理给商家扣款产品 收单模式配置为直付通常见的 “平台商服务” 模式。
---
## 160. 商家扣款小程序场景接入支付并签约需要签约什么产品
商家扣款接入 [支付并签约](https://opendocs.alipay.com/open/08bpuc?pathHash=92c2337c) 小程序业务场景的商家需签约开通 [JSAPI 支付](https://opendocs.alipay.com/mini/repo-01ot91)和商家扣款。可以登录[商家中心后台](https://b.alipay.com/page/portal/home)-》产品中心 签约开通一下。
---
## 161. 商家扣款,扣款失败协议会自动解约吗?
扣款失败,不会自动解约,只有用户侧主动发起解约,或者商家调用 [alipay.user.agreement.unsign(支付宝个人代扣协议解约接口)](https://opendocs.alipay.com/open/b841da1f_alipay.user.agreement.unsign?referPath=08bpuc_74036bac)去解约。参考文档 [https://opendocs.alipay.com/open/08bpuc?pathHash=74036bac](https://opendocs.alipay.com/open/08bpuc?pathHash=74036bac)
---
## 162. 商家扣款解约成功之后还能对用户进行扣款吗
商家扣款协议解约成功后,该协议号就失效了,无法进行扣款。更多产品内容详见[商家扣款](https://opendocs.alipay.com/open/08ayiq?pathHash=a2d4e097)。
---
## 163. 周期扣款还可以签约接入吗?
[商家扣款](https://opendocs.alipay.com/open/repo-0243dw) 是 周期扣款 的升级产品,未接入周期扣款的商家建议使用 商家扣款,已接入周期扣款的商家可以继续使用 周期扣款,查看产品文档 [周期扣款](https://opendocs.alipay.com/open/repo-0038tx?ref=api)。
---
## 164. 商家扣款支付并签约场景支持哪些场景
目前标准的商家扣款支付并签约场景支持app端,小程序端唤起支付并签约。具体接入参考文档:[https://opendocs.alipay.com/open/08bpuc?pathHash=74036bac](https://opendocs.alipay.com/open/08bpuc?pathHash=74036bac)
---
## 165. 商户代扣预通知(支付许可创建接入)需要提前提前多久通知?
这个[alipay.user.agreement.permission.create](https://opendocs.alipay.com/pre-apis/02smnv)(支付宝协议支付许可创建接口)接口建议是在9:00-21:00这个时间段内调,调用后生成的扣款凭证有效期是24-72小时,具体以返回的effective_time_start和effective_time_end为准。建议在扣款前1天调用接口,该通知也会有频次限制,按uid+pid维度每天一次
---
## 166. 商家扣款支付并签约场景3倍金额管控是什么时候开始的?怎么能放这个管控限制呢
该管控在2024年9月就逐步开始了。目前暂不支持开放管控限制,需要严格按照产品要求去对接。参考文档说明:[https://opendocs.alipay.com/open/06de8c?pathHash=bc28a7a2](https://opendocs.alipay.com/open/06de8c?pathHash=bc28a7a2)
---
## 167. 商家扣款支持修改已经签约成功协议的单笔扣款金额吗
签约成功后,只能按照协议去扣款,不支持修改协议中的single_amount:单次扣款最大金额,后续代扣金额只能低于签约时约定的single_amount单笔最大金额,支付并签约场景有产品管控,代扣金额不能超过首次支付金额的3倍。
---
## 168. 商户代扣对接文档
商户代扣对接文档参考 :[https://opendocs.alipay.com/pre-open/20170601105911096277new](https://opendocs.alipay.com/pre-open/20170601105911096277new)
---
## 169. 如何判断周期/商家扣款是否签约成功
商家与用户之间签约周期/商家扣款,商家或者用户如何才可以判断是否签约成功。根据签约的流程以及签约成功后效果,可以通过以下方式进行判断。建议无论是否商家端还是用户端,结合多个方式进行判断。
### 商家端
#### 签约触发异步
可以根据周期/商家扣款设置的签约异步地址进行了解,可查看 [周期/商家扣款如何设置异步通知](https://opendocs.alipay.com/support/01rg2a)。
根据周期/商家扣款接收到的签约触发异步是否含有 status=NORMAL(正常)进行了解。
#### 协议查询接口
可以根据 [alipay.user.agreement.query](https://opendocs.alipay.com/open/02fkao)(支付宝个人代扣协议查询接口)查询了解。根据接口返回的响应参数中 status=NORMAL(正常)进行了解。
**注意:** 签约成功后解约,再调用该接口查询协议会提示 **用户协议不存在(USER_AGREEMENT_NOT_EXIST)** 。
### 用户端
用户判断自己是否签约成功,可以通过接收的通知了解,可查看 [周期/商家扣款签约成功是否通知用户](https://opendocs.alipay.com/support/01rg2r)。
#### 信息通知
用户签约成功后,会收到签约成功的短信,以及支付宝客户端的**服务提醒** 中含有签约成功通知。
#### 服务详情
用户签约成功后,在用户的支付宝客户端 **我的** > **设置** > **支付设置** > **免密支付/自动扣款** 位置中生成该协议的服务详情,可以通过该协议查看具体的每周期的扣款时间和扣款说明。
---
## 170. 商家扣款解约异步通知说明
解约异步通知仅当用户解约成功或商家调解约接口成功时触发。商家以 POST 方式接收异步解约通知,如果是用户解约成功通知地址是 **应用网关** 地址(商家必须在 [开放平台](https://openhome.alipay.com/platform/home.htm) **应用信息** 中配置 **应用网关** )。如果是商家调用 [alipay.user.agreement.unsign(支付宝个人代扣协议解约接口)](https://opendocs.alipay.com/open/b841da1f_alipay.user.agreement.unsign?referPath=08bpuc_74036bac)解约优先接收接口中传的 notify_url,如果没传则取 **应用网关** 地址。
---
## 171. 商家扣款签约拉起报错“ _通失败 抱歉,_服_支援中国大睦身份__名使用者”
这个报错一般可能是,用户账号实名信息不是用的大陆身份证,或者是支付宝钱包用的是港版钱包,需要商家联系用户核实确认。
---
## 172. 商家扣款报错:ACQ.PRODUCT_AMOUNT_LIMIT_ERROR,产品额度超限
产品额度超限可以参考这个文档 [https://opendocs.alipay.com/support/01rg28](https://opendocs.alipay.com/support/01rg28) 去核实标准额度以及参数限制模式下的额度是否超限 。如果是走的支付并签约场景,需要检查报错的这笔扣款金额是不是超过了首次支付金额的3倍,商家扣款支付并签约场景,有产品管控后续代扣金额不能超过首次支付金额的3倍,不然也会报错 ACQ.PRODUCT_AMOUNT_LIMIT_ERROR,产品额度超限。
---
## 173. 商家扣款,不同的商家pid下,签约入参的外部协议号external_agreement_no可以一样吗?
可以的,外部协议号external_agreement_no在商家pid维度下保持唯一即可,不同pid不影响。
---
## 174. 商家扣款支持组合支付吗
不支持,代扣无法进行组合支付。如果一张卡的余额不足,然后其他支付渠道的资金也不够的前提下,则会直接代扣失败。
---
## 175. 商家扣款中的alipay.trade.pay(统一收单交易支付接口) 的交易结果通知接口文档地址
异步通知可以参考下 [https://opendocs.alipay.com/open/0amki1?pathHash=f6ef64bf](https://opendocs.alipay.com/open/0amki1?pathHash=f6ef64bf)
---
## 176. 商家扣款产品的代扣退款,用户可以进行投诉退款吗?
用户是否可以进行投诉退款需要咨询一下95188商服,技术侧商家可以调用alipay.trade.refund接口进行退款,也可以通过商家中心后台交易流水页面,点击退款按钮操作退款。
---
## 177. 商家扣款文档中提供的2种协议查询方式查询的结果是一样的吗?
开发者可调用 [alipay.user.agreement.unsign(支付宝个人代扣协议解约接口)](https://opendocs.alipay.com/open/b841da1f_alipay.user.agreement.unsign?referPath=08bpuc_74036bac)完成协议解约。
- 通过协议号解约,此时请求参数中填入协议号(agreement_no),其它业务参数均可不填。
- 通过`personal_product_code`+`sign_scene+external_agreement_no`+`alipay_logon_id+alipay_user_id(alipay_open_id)`来解约,入参值按照商家调 [alipay.user.agreement.page.sign(支付宝个人协议页面签约接口)](https://opendocs.alipay.com/open/8bccfa0b_alipay.user.agreement.page.sign?referPath=08bpuc_74036bac)中的对应值传入;如果传入 external_agreement_no,则 alipay_logon_id 与 alipay_user_id(alipay_open_id)可不传,否则 alipay_logon_id 与alipay_user_id(alipay_open_id)必须传其中一个。
这两种查询方式查询结果是一样的,可以根据您实际业务场景去选择方式查询。
---
## 178. 商家扣款协议查询接口中 status:STOP 暂停和TEMP暂存,协议未生效过是什么意思?什么场景才会返回
TEMP和STOP 这个两个状态不用关注,特殊场景才会返回这个状态,普通商家扣款场景不返回该状态。商家扣款协议状态只有status是NORMAL代表协议状态正常。
---
## 179. 商家扣款产品,调用alipay.trade.pay接口的异步通知会包含签约信息吗?
不会包含签约信息的,只有代扣支付的异步通知,具体可以参考 [https://opendocs.alipay.com/open/08bpuc?pathHash=74036bac#%E6%89%A3%E6%AC%BE%E6%B5%81%E7%A8%8B%E5%9B%BE](https://opendocs.alipay.com/open/08bpuc?pathHash=74036bac#%E6%89%A3%E6%AC%BE%E6%B5%81%E7%A8%8B%E5%9B%BE)
---
## 180. 商家扣款是否支持批量查询代扣协议信息
目前商家扣款产品里的代扣协议查询接口 [alipay.user.agreement.query(支付宝个人代扣协议查询接口)](https://opendocs.alipay.com/open/3dab71bc_alipay.user.agreement.query)只能单笔去查询代扣协议详情。
- 如果在支付宝个人协议页面签约接口中传递了`sign_scene`+`external_agreement_no` 2 个参数,那在对应的协议查询接口中传递`personal_product_code`+`sign_scene`+`external_agreement_no` 3 个参数即可查询到内容。
- 如果在支付宝个人协议页面签约接口中没有传递`sign_scene`+`external_agreement_no`2 个参数,那在对应的协议查询接口中传递`personal_product_code`+(`alipay_logon_id`和`alipay_user_id(alipay_open_id)`2 个参数中的任何一个参数)即可查询到内容。
---
## 181. 商家扣款可以同时签约周期模式和通用代扣模式吗
签约问题属于业务问题,可拨打电话400-758-5858 或在线商户客服进行咨询:[https://cschannel.alipay.com/newPortal.htm?scene=cpzx-cpdq](https://cschannel.alipay.com/newPortal.htm?scene=cpzx-cpdq)
---
## 182. 支持扫码打开小程序吗?
可以的,商家生成的小程序二维码可以使用支付宝app扫码打开
---
## 183. 商家扣款当期未扣款成功,没有调用延期接口,协议查询返回的是什么状态?
协议查询接口会报错 :扣款时间不在允许时间范围内。
---
## 184. 商家扣款允许提前几天发起扣款呢
允许在**next_deduct_time(** 预计下次扣款时间**)** 的前 5 天发起扣款
---
## 185. 商家扣款后续代扣失败会触发异步通知吗
不会,扣款失败不会触发异步通知。建议调用alipay.trade.quey接口查询代扣交易状态。
---
## 186. 商家扣款是否有配套的短信提醒的API
商家扣款目前暂没有短信提醒api ,支付宝这边会根据周期性进行自动发送,签约连续包月业务且协议在约的用户都会收到预通知,扣款前5-7天通知用户;
注:一个周期内只有一条 疲劳度1天1条 发送不成功才会再次重试发送。不管是哪种签约方式(支付并签约、独立签约后扣款),支付宝都会默认发通知。
---
## 187. 商家扣款小程序场景和app支付场景接入支付并签约需要签约什么产品
商家扣款接入 [支付并签约](https://opendocs.alipay.com/open/08bpuc?pathHash=92c2337c) 小程序业务场景的商家需签约开通 [JSAPI 支付](https://opendocs.alipay.com/mini/repo-01ot91)和商家扣款。接入 [支付并签约](https://opendocs.alipay.com/open/08bpuc?pathHash=92c2337c) APP业务场景的商家需开通 [APP 支付](https://b.alipay.com/signing/productDetailV2.htm?productId=I1011000290000001002)(网页/移动应用,移动应用需要是已上架状态)和商家扣款可以登录[商家中心后台](https://b.alipay.com/page/portal/home)->产品中心 签约开通。
---
## 188. 商家扣款接入诊断提示:应用类型是“商家扣款-商家扣款”产品所支持的类型为不符合条件
这个应用类型不符合的问题,是因为您使用的应用是基础应用,基础应用商家无法主动创建,此应用是开通支付产品后系统默认生成的一个上线的应用,和自己创建的自用型应用是一样的,可以正常调用接口实现功能,没有任何区别;
若不使用这个应用,可以直接使用自己创建的应用,没有任何影响。这个检测您可以忽略,重点关注检测中商家账号是否开通了商家扣款产品等。
---
## 189. 商家扣款产品接入流程是怎样的
商家扣款接入流程参考文档:[https://opendocs.alipay.com/open/08b368?pathHash=077458c0](https://opendocs.alipay.com/open/08b368?pathHash=077458c0) 按照文档流程去操作。
---
## 190. 退款查询接口为什么没有refund_amount
### **退款查询接口响应数据判断**
- 商户退款后或者退款返回 fund_change=N,可使用 [alipay.trade.fastpay.refund.query](https://opendocs.alipay.com/open/02ekfl)(统一收单交易退款查询)查询 alipay.trade.refund 提交的退款请求是否执行退款成功。
- 退款查询接口返回 10000,success,仅代表本次接口请求成功,不代表退款成功。
- 退款查询接口的 trade_no、out_trade_no、out_request_no 必须和退款接口保持一致,否则交易号一致,out_request_no 不同,只会返回 10000,success,但是没有具体的退款信息。
- 退款查询接口**返回refund_status=REFUND_SUCCESS表示退款处理成功,否则表示退款没有执行成功** 。
**说明** :如果退款查询发起时间早于退款时间,或者间隔退款发起时间太短,可能出现退款查询时还没处理成功,后面又处理成功的情况,建议商户在退款发起后间隔10秒以上再发起退款查询请求。
- 如果接口未退款成功且不明确交易情况时,重试请务必保证退款请求号out_request_no以及请求参数一致,避免发生多次退款。
---
## 191. 智能货柜刷脸会员技术集成文档
智能货柜刷脸会员技术集成文档参考 :[https://opendocs.alipay.com/pre-open/07y262](https://opendocs.alipay.com/pre-open/07y262)
---
## 192. 商户代扣,单笔扣款有额度限制吗?
商户代扣能力扣款额度有 单笔、单日累计、单月累计 的额度上限控制,额度按照商户 PID + 用户维度计算。具体得看产品方案配置的额度情况 ,可联系bd同学确认下。若有提额诉求的话也可联系bd反馈
---
## 193. 商家扣款支付并签约alipay.trade.app.pay接口如何指定外部签约用户
可以看下这个接口文档[https://opendocs.alipay.com/open/29ae8cb6_alipay.trade.wap.pay?scene=21&pathHash=1ef587fd](https://opendocs.alipay.com/open/29ae8cb6_alipay.trade.wap.pay?scene=21&pathHash=1ef587fd) 通过ext_user_info去指定支付签约用户,alipay.trade.app.pay接口文档没有说明这个参数但实际是可以使用的
---
## 194. 账单页的联系商家入口可以针对不同产品 配置不同的客服链接吗
不行,联系商家里面展示的在线客服链接或客服号码都是以账号维度去申请配置的。在账单详情页添加联系商家功能推荐您使用“在线客服自助申请”工具提交信息,工具地址:[https://opensupport.alipay.com/support/diagnostic-tools/7057f2e4-4af1-476e-919c-5cd13d03d36d](https://opensupport.alipay.com/support/diagnostic-tools/7057f2e4-4af1-476e-919c-5cd13d03d36d)
---
## 195. 解约异步通知参数有哪些
目前没有单独的解约通知文档,可以参考接入指南的参数描述,文档地址:[https://opendocs.alipay.com/open/0amki1?pathHash=ab0895b0](https://opendocs.alipay.com/open/0amki1?pathHash=ab0895b0)
### 重要参数说明
- status:协议状态,枚举支持。
- NORMAL:正常。
- UNSIGN:解约。
- external_agreement_no:标示用户的唯一签约协议号,商家自定义。仅签约接口传入时返回。
- agreement_no:支付宝系统中用以唯一标识用户签约记录的编号。
- notify_type:异步通知类型,枚举支持。
- dut_user_sign:当 status = NORMAL 表示签约成功。
- dut_user_unsign:当 status = UNSIGN 表示解约成功。
- sign_scene:签约场景码。
- personal_product_code:协议产品码。
- alipay_user_id(alipay_open_id):用户的支付宝账号对应的支付宝唯一用户号。新商户建议使用open_id替代该字段。对于新商户,user_id字段未来计划逐步回收,存量商户可继续使用。如使用open_id,请确认 应用-开发配置-openid配置管理 已启用。无该配置项,可查看 [openid配置申请](https://opendocs.alipay.com/common/0ai9ok?pathHash=a43b913d)
- alipay_logon_id:用户的支付宝登录账号。
- next_deduct_time:周期扣协议,预计下次扣款时间
---
## 196. 从哪设置签约成功后支付宝app弹出的服务提醒消息
这是支付宝app默认的服务消息提醒,没有单独设置的渠道。
---
## 197. 商家扣款h5客户端唤起调用哪个api
独立签约时返回HTTP链接,直接打开即可,不需要api。
小程序唤起时,可以使用 my.paySignCenter。
参考文档:[https://opendocs.alipay.com/open/08ayiq?pathHash=a2d4e097&ref=api](https://opendocs.alipay.com/open/08ayiq?pathHash=a2d4e097&ref=api)。
---
## 198. 商家扣款model.setTotalAmount与periodRuleParams.setTotalAmount有什么区别?
model.setTotalAmoun是支付的订单金额,periodRuleParams.setTotalAmount是周期内允许扣款的总金额。
---
## 199. 没有安装支付宝时,是不支持签约么
是的,用户必须安装支付宝app,否则直接唤起签约页面。
---
## 200. 周期扣款先扣款后签约场景中 扣款金额和签约有关系吗
### **标准模式**
对每个用户的单笔扣款不超过 100 元,当日扣款不超过 1000 元,当月扣款不超过 30000 元。
扣款周期最短为 7 天,最长没有限制。
### **参数限制模式**
在标准模式的前提下,可设置参数对周期扣款额度进行限制。通过 period_rule_params(周期管控规则参数)下的二级参数进行控制。
- single_amount(单次扣款最大金额):每次发起扣款时限制的最大金额。
- total_amount(总金额限制):商户多次扣款的累计金额不允许超过此金额。
- total_payments(总扣款次数):商户成功扣款的次数不能超过此次数限制(扣款失败不计入)。
### **注意事项**
- 在标准模式中,单笔扣款、当日扣款、当月扣款针对的是单协议(同一个商家下同一个用户同场景)。商户如果要提额,需要先突破单笔额度,接下来可能再突破当日额度,再突破当月额度。
- 支付并签约时后续代扣金额不得大于首次支付金额3倍。
---
## 201. 解约接口同步返回10000可以认为解约成功吗
可以。解约接口同步返回10000,success,可以认定为解约成功。
---
## 202. 商家扣款 两次扣款时间间隔不得小于30天,续期包月场景下,2月份不足30天的情况下
独立签约场景下,以月维度(period_type 为 MONTH )去发起代扣时,支付间隔没有30天的限制,正常按照到期时间去发起代扣即可,
---
## 203. 账单详情页中联系商家方式可以针对不同产品 配置不同的客服链接吗
不行,联系商家里面展示的在线客服链接或客服号码都是以账号维度去申请配置的。在账单详情页添加联系商家功能推荐您使用“在线客服自助申请”工具提交信息,工具地址:[https://opensupport.alipay.com/support/diagnostic-tools/7057f2e4-4af1-476e-919c-5cd13d03d36d](https://opensupport.alipay.com/support/diagnostic-tools/7057f2e4-4af1-476e-919c-5cd13d03d36d)
---
## 204. 商家扣款支付并签约场景下异步通知是否有先后次序
支付通知和签约通知是分别发送的,不是同一个通知,发出存在先后顺序,但实际接受到的顺序受具体场景,比如网络限制,建议未及时收到通知时可以主动通过查询接口获取支付或签约状态。
---
## 205. 商家扣款支付并签约支持哪几种客户端唤起方式
[商家扣款支付并签约](https://opendocs.alipay.com/open/08bpuc?pathHash=74036bac) 目前只支持从 APP客户端 和 支付宝小程序 两种方式唤起。
---
## 206. 周期扣款先扣款后签约场景中 首次扣款金额和后续代扣金额有关系吗
### **标准模式**
对每个用户的单笔扣款不超过 100 元,当日扣款不超过 1000 元,当月扣款不超过 30000 元。
扣款周期最短为 7 天,最长没有限制。
### **参数限制模式**
在标准模式的前提下,可设置参数对周期扣款额度进行限制。通过 period_rule_params(周期管控规则参数)下的二级参数进行控制。
- single_amount(单次扣款最大金额):每次发起扣款时限制的最大金额。
- total_amount(总金额限制):商户多次扣款的累计金额不允许超过此金额。
- total_payments(总扣款次数):商户成功扣款的次数不能超过此次数限制(扣款失败不计入)。
### **注意事项**
- 在标准模式中,单笔扣款、当日扣款、当月扣款针对的是单协议(同一个商家下同一个用户同场景)。商户如果要提额,需要先突破单笔额度,接下来可能再突破当日额度,再突破当月额度。
- 支付并签约时后续代扣金额不得大于首次支付金额3倍。
---
## 207. alipay.user.agreement.page.sign(支付宝个人协议页面签约接口) 这个通知内容在哪里看
商户代扣异步通知字段说明参考文档:[https://opendocs.alipay.com/pre-open/20170601105911096277new/gofmhi?pathHash=40432253#4.2%20%E5%BC%82%E6%AD%A5%E9%80%9A%E7%9F%A5%E5%8F%82%E6%95%B0%E8%AF%B4%E6%98%8E](https://opendocs.alipay.com/pre-open/20170601105911096277new/gofmhi?pathHash=40432253#4.2%20%E5%BC%82%E6%AD%A5%E9%80%9A%E7%9F%A5%E5%8F%82%E6%95%B0%E8%AF%B4%E6%98%8E)
---
## 208. 商家扣款为什么还有 WAIT_BUYER_PAY 这个状态呢
因用户余额不足等原因导致的扣款失败,订单就会处于WAIT_BUYER_PAY 的状态,后续可引导用户往账号充值后,再发起扣款。
---
## 209. 商家扣款协议接口查询入参方式
商家可调用 [alipay.user.agreement.query(支付宝个人代扣协议查询接口)](https://opendocs.alipay.com/open/3dab71bc_alipay.user.agreement.query)查询用户是否完成签约操作,用户实际签约结果请以查询接口返回值为准。
- 通过协议号查询协议详情,此时请求参数中填入协议号(agreement_no),其它业务参数均可不填。
- 如果在支付宝个人协议页面签约接口接口中传递了`sign_scene`+`external_agreement_no` 2 个参数,那在对应的协议查询接口中传递`personal_product_code`+`sign_scene`+`external_agreement_no` 3 个参数即可查询到内容。
- 如果在支付宝个人协议页面签约接口中没有传递`sign_scene`+`external_agreement_no`2 个参数,那在对应的协议查询接口中传递`personal_product_code`+(`alipay_logon_id`和`alipay_user_id(alipay_open_id)`2 个参数中的任何一个参数)即可查询到内容。
---
## 210. 商家扣款支付并签约提示:NOT_SUPPORT_SUB_MERCHANT
签约接口默认不支持传sub_merchant,建议注释掉该参数后再进行调试。
---
## 211. 扣款协议什么情况下会失效
1、用户在支付宝APP发起解约
2、商家接口进行解约
3、用户销户解约
4、协议签约接口传入了sign_validity_period参数,将会在对应时间失效
---
## 212. 免密支付如果超过免密支付的额度上限,可以扣款成功吗?
免密支付如果超过免密支付的额度上限时,不会扣款成功。
---
## 213. 单次代扣timeoutExpress 最大可以填多少,填哪个值可以让订单一直不关闭的?
订单相对超时时间。从交易创建时间开始计算。 该笔订单允许的最晚付款时间,逾期将关闭交易。取值范围:1m~15d。暂没有值可以让订单一直不关闭。
---
## 214. 商家扣款如何给用户发送扣款预通知
商家扣款有配套的短信提醒的API,可以参考接口文档 [https://opendocs.alipay.com/apis/02sor3](https://opendocs.alipay.com/apis/02sor3) 。创建许可发通知阶段,调用文档中的alipay.user.agreement.permission.create接口,获取deduct_permission和许可的有效时间,同时给用户发送扣款预通知;无需用户订阅,只要未解约就能发。支付宝这边也会根据周期性进行自动发送,签约连续包月业务且协议在约的用户都会收到预通知,扣款前5-7天通知用户。
注:一个周期内只有一条 疲劳度1天1条 发送不成功才会再次重试发送。不管是哪种签约方式(支付并签约、独立签约后扣款),支付宝都会默认发通知。
---
## 215. 支付并签约的支付、签约的异步通知示例有吗
[https://opendocs.alipay.com/open/08bpuc?pathHash=74036bac#%E6%94%AF%E4%BB%98%E5%BC%82%E6%AD%A5%E9%80%9A%E7%9F%A5%E5%8F%82%E6%95%B0](https://opendocs.alipay.com/open/08bpuc?pathHash=74036bac#%E6%94%AF%E4%BB%98%E5%BC%82%E6%AD%A5%E9%80%9A%E7%9F%A5%E5%8F%82%E6%95%B0)
---
## 216. 商家扣款产品可以阻止用户自主从支付宝里面关闭服务吗
该能力属于定向开放能力,可联系您的支付宝业务经理进行咨询。
---
## 217. 商家扣款解约的异步通知通知地址
解约异步通知仅当用户解约成功或商家调解约接口成功时触发。
1,商家调 [alipay.user.agreement.unsign(支付宝个人代扣协议解约接口)](https://opendocs.alipay.com/open/b841da1f_alipay.user.agreement.unsign?referPath=08ayiq_a2d4e097)接口解约优先接收 解约 接口中传的 notify_url,如果没传则取 appid配置的**应用网关** 地址。
2,销户解约和用户主动解约,解约成功后支付宝将发送解约信息给商家应用在 [支付宝开放平台](https://openhome.alipay.com/platform/home.htm) 中配置的**应用网关** 地址
- 注意:一个应用下只能设置一个应用网关地址,如果存在多个业务都在同一个应用,那只能走同一个地址了,通过参数去判断。
商户如果需要更改,可以视用户解约的方式去调整接收异步的地址。解约异步通知参数可以参考:[https://opendocs.alipay.com/open/08bpuc?pathHash=74036bac#%E8%A7%A3%E7%BA%A6%E5%BC%82%E6%AD%A5%E9%80%9A%E7%9F%A5%E8%AF%B4%E6%98%8E](https://opendocs.alipay.com/open/08bpuc?pathHash=74036bac#%E8%A7%A3%E7%BA%A6%E5%BC%82%E6%AD%A5%E9%80%9A%E7%9F%A5%E8%AF%B4%E6%98%8E)
---
## 218. 商家扣款协议解约后,垫资还款将如何追款
这个追款是用户和支付宝之间的,商户的代扣协议解约,不影响支付宝追款
---
## 219. 签约异步通知说明
【支付并签约场景】签约异步通知仅当用户签约成功时触发。商家以 POST 接收方式接收异步签约通知,优先接收接口 [alipay.trade.app.pay(app支付接口2.0接口)](https://opendocs.alipay.com/open/e65d4f60_alipay.trade.app.pay)中传的 sign_notify_url,若没传则取[alipay.trade.app.pay(app支付接口2.0接口)](https://opendocs.alipay.com/open/e65d4f60_alipay.trade.app.pay)中传的 notify_url,若前两者均没传则取**应用网关** 地址(商家必须在[开放平台](https://openhome.alipay.com/platform/home.htm) **应用信息** 中配置**应用网关** )。
### 商家验签
在通知返回参数列表中除去 sign、sign_type 两个参数外,凡是通知返回回来的参数皆是待验签的参数。
### 异步通知示例
根据 status 触发条件,只有签约成功和解约成功才会返回异步,签约失败和解约失败都不会触发异步。
### 重要参数说明
- status:协议状态,枚举支持。
- NORMAL:正常。
- UNSIGN:解约。
- external_agreement_no:标示用户的唯一签约协议号,商家自定义。仅签约接口传入时返回。
- agreement_no:支付宝系统中用以唯一标识用户签约记录的编号。
- notify_type:异步通知类型,枚举支持。
- dut_user_sign:当 status = NORMAL 表示签约成功。
- dut_user_unsign:当 status = UNSIGN 表示解约成功。
- sign_scene:签约场景码。
- personal_product_code:协议产品码。
- alipay_user_id:用户的支付宝账号对应的支付宝唯一用户号。新商户建议使用open_id替代该字段。对于新商户,user_id字段未来计划逐步回收,存量商户可继续使用。如使用open_id,请确认 应用-开发配置-openid配置管理 已启用。无该配置项,可查看 [openid配置申请](https://opendocs.alipay.com/common/0ai9ok?pathHash=a43b913d)。
- alipay_logon_id:用户的支付宝登录账号。
- next_deduct_time:周期扣协议,预计下次扣款时间。
详见接入指南文档: [https://opendocs.alipay.com/open/08bpuc?pathHash=74036bac#%E7%AD%BE%E7%BA%A6%E5%BC%82%E6%AD%A5%E9%80%9A%E7%9F%A5%E8%AF%B4%E6%98%8E](https://opendocs.alipay.com/open/08bpuc?pathHash=74036bac#%E7%AD%BE%E7%BA%A6%E5%BC%82%E6%AD%A5%E9%80%9A%E7%9F%A5%E8%AF%B4%E6%98%8E)
---
## 220. 商家扣款协议迁移接口,qps有限制吗
商家扣款协议迁移接口,接口限制5QPS,每秒并发不能超过5次。
---
## 221. 商家扣款服务详情文案说明
商家扣款客户端内扣款后的账单说明与支付接口显示方式一致,可查看支付接口账单详情说明。
商家扣款成功后,在用户的支付宝客户端内会生成一个服务详情。
### 服务详情显示
查看 服务详情:在支付宝客户端 > 我的 > 设置 > 支付设置 > 免密支付/自动扣款。
### 参数字段说明
| 页面信息 | 说明 |
| --- | --- |
| logo | 周期/商家扣款产品签约页面的 logo 取自商家资料。 |
| 商家可登录 [商家平台](https://b.alipay.com/page/store-management/infomanage) 进入 账号中心 > 商户信息 处进行修改。 | |
| 名称 | 目前不支持修改。 |
| 服务详情 | 该数据为固定模板,周期时间和金额根据签约接口的 period_rule_params(周期管控规则参数)信息进行获取自动生成。 |
| 除了该参数信息可修改外,其它数据无法修改。 | |
| 下次扣款 | 签约页面显示的扣款时间为 period_rule_params(周期管控规则参数)的 execute_time(首次扣款时间),若是扣款成功会自动修改为下次扣款时间。 |
| 注意:会根据扣款信息自动更新下次扣款时间。 | |
| 开通时间 | 协议签约开通时间。 |
| 服务协议号 | agreement_no(支付宝签约协议号),协议签约成功后返回。 |
| 查看消费记录 | 可查看根据 agreement_no 进行扣款的交易信息。 |
| 关闭服务 | 用户可通过该按钮取消周期/商家扣款协议。 |
---
## 222. 商家扣款支付并签约支持identity_params参数校验买家信息吗
独立签约接口支持通过identity_params参数校验交易买家;
如果想要支付并签约校验买家信息可以通过ext_user_info 参数传入买家信息,正常传 cert_no身份证号 need_check_info=T可以校验支付人的信息,也就一并校验了签约人的信息。
---
## 223. 怎样能取消签约关系,可重复签约流程
alipay.user.agreement.unsign(支付宝个人代扣协议解约接口) 商家可以调用 该接口去解约哈 传入签约协议号 agreement_no 去解约 参考文档接入 [https://opendocs.alipay.com/open/b841da1f_alipay.user.agreement.unsign?scene=common&pathHash=6d2d4910](https://opendocs.alipay.com/open/b841da1f_alipay.user.agreement.unsign?scene=common&pathHash=6d2d4910)
---
## 224. 签约异步通知和扣费异步通知的接口回调地址,我们能不能在测试阶段提供测试环境的地址进行配置,上生产后再修改为生产环境的回调地址?
可以,订单回调地址的设置取决于商家设置情况,商户自行设定地址即可
---
## 225. 商家扣款用户在签约时可以选择多个产品吗?
在协议签约前产品的选择是商户侧自行设计的,可以让用户选择多个产品后再去进行签约;支付宝的代扣签约,一次只能签约给一个商户,对应一个协议
---
## 226. 如何修改商家扣款签约页面文案
签约页面不同的信息有不同的修改方式,商家扣款签约分为 **先签约,后代扣** 和 **支付后签约** 2个场景:
- 左侧为 **先签约,后代扣** 场景,使用 alipay.user.agreement.page.sign(支付宝个人协议页面签约接口)
- 右侧为 **支付后签约** 场景,使用 alipay.trade.app.pay (app支付接口)
| 序号 | 信息 | 说明 |
| --- | --- | --- |
| 1 | logo | 商家可登录 [商家平台](https://business.alipay.com/user/home) 进入 账号中心 > 商户信息 处进行修改。 |
| 2 | 服务名称 | 目前不支持修改。 |
| 先签约,后代扣 的签约界面为【支付宝账户名称】 自动续费,支付后签约 的签约界面为 开通【支付宝账户名称】自动续费。 | | |
| 3 | 商户名称 | 该信息为商家别名,若未设置则显示账户实名认证名称。 |
| 4 | 服务详情 | 该数据为固定模板,周期时间和金额根据签约接口的 period_rule_params(周期管控规则参数)信息进行获取自动生成。 |
| 除了该参数信息可修改外,其它数据无法修改。 | | |
| 5 | 下次扣款 | 签约页面显示的扣款时间为 period_rule_params(周期管控规则参数)的 execute_time(首次扣款时间)。 |
| 6 | 支付宝账户 | 用户签约周期/商家扣款的支付宝账户信息。 |
| 7 | 订单详情 | 通过 alipay.trade.app.pay(app支付接口2.0)接口中的 subject 字段控制。 |
| 8 | 免密支付签约按钮 | 很抱歉,目前无法修改 |
| 9 | 支付金额 | 在接口中设置的 total_amont(订单金额)参数控制。 |
| 注意事项: | | |
- 如果签约页面显示商家端账号,该信息由 external_logon_id 字段控制,如果不传入则不展示。
- **新签约商家扣款的商户** 也可在商家扣款签约方案下配置对外展示的模板信息,**模板中可配置 logo 和 商户名称 两个信息** 。接口入参 sign_scene(模板中设置的签约场景码)后,页面会根据配置的模板展示这两个信息;如果模板未配置,则根据上述规则展示。
---
## 227. 商家扣款额度限制是什么?
对每个用户的单笔扣款不超过 100 元,当日扣款不超过 1000 元,当月扣款不超过 30000 元;扣款周期最短为 7 天,最长没有限制。
注意:一个协议内每次商家扣款只能扣一次,不可多次扣款。如果商家扣款额度大于100元,建议核实 支付宝预授权 是否可使用且满足业务需求,周期时间为商家自己设置扣款,在自己商家扣款时间内,调用授权转支付接口进行扣款。
---
## 228. alipay.trade.pay(统一收单交易支付接口)是实时扣款接口吗?
alipay.trade.pay是同步接口,接口实时返回10000、success,可以说明扣款成功。
---
## 229. 商家扣款如何给用户发送扣款预通知
支付宝这边会根据周期性进行自动发送,签约连续包月业务且协议在约的用户都会收到预通知,扣款前5-7天通知用户;
注:一个周期内只有一条 疲劳度1天1条 发送不成功才会再次重试发送。
---
## 230. 商家扣款如何给用户发送扣款预通知
商家扣款有配套的短信提醒的API,可以参考接口文档 [https://opendocs.alipay.com/apis/02sor3](https://opendocs.alipay.com/apis/02sor3) 。创建许可发通知阶段,调用文档中的alipay.user.agreement.permission.create接口,获取deduct_permission和许可的有效时间,同时给用户发送扣款预通知;无需用户订阅,只要未解约就能发。
支付宝这边也会根据周期性进行自动发送,签约连续包月业务且协议在约的用户都会收到预通知,扣款前5-7天通知用户;
注:一个周期内只有一条 疲劳度1天1条 发送不成功才会再次重试发送。不管是哪种签约方式(支付并签约、独立签约后扣款),支付宝都会默认发通知。
---
## 231. 商家扣款如何唤起app进行签约
服务端通过alipayClient.pageExecute(alipayRequest, "get")方法获取到请求的字符串后,通过接入指南文档中的方式来在商家APP去唤起代扣签约界面:[https://opendocs.alipay.com/open/08ayiq?pathHash=a2d4e097#App%E5%86%85%E5%94%A4%E8%B5%B7%E7%AD%BE%E7%BA%A6%E9%A1%B5](https://opendocs.alipay.com/open/08ayiq?pathHash=a2d4e097#App%E5%86%85%E5%94%A4%E8%B5%B7%E7%AD%BE%E7%BA%A6%E9%A1%B5)
---
## 232. 商家扣款支付并签约小程序方法接入流程
1、在服务端调用 [alipay.trade.create](https://opendocs.alipay.com/mini/05x9kv?scene=de4d6a1e0c6e423b9eefa7c3a6dcb7a5&pathHash=779dc517)(统一收单交易创建接口),入参周期规则等参数并获得支付宝交易号 tradeNO
2、在小程序端使用 tradeNO,调用 [my.tradePay](https://opendocs.alipay.com/mini/05xhsr?pathHash=d4709298) 接口唤起支付宝收银台,引导用户完成支付并签约流程
支付并签约接入指南文档:[https://opendocs.alipay.com/open/08bpuc?pathHash=74036bac](https://opendocs.alipay.com/open/08bpuc?pathHash=74036bac)
注意:a账号开通了商家扣款,但是b账号没有开通,b账号有小程序,可以使用b账号的小程序发起a账号的签约并支付功能。具体方法为:
- 1、a账号既要开通商家扣款也要开通jsapi支付,公共参数里的app_id使用a账号的小程序appid
- 2、op_app_id传b小程序应用appid,需要关联绑定签约jsapi支付的主体账号a。参考这个文档 [https://opendocs.alipay.com/mini/05x9ku?pathHash=a7b61cca](https://opendocs.alipay.com/mini/05x9ku?pathHash=a7b61cca)
- 3、前端调用 [my.tradePay](https://opendocs.alipay.com/mini/05xhsr?pathHash=d4709298) 接口唤起支付宝收银台,引导用户完成支付并签约流程
---
## 233. 商家扣款支持沙箱环境接入吗?
目前沙箱环境不支持商家扣款产品调试了,商家需在正式环境测试验证商家扣款功能;
沙箱仅提供有限功能范围的产品支持,沙箱支持的范围参考该文档 :[https://opendocs.alipay.com/open/0c3itf](https://opendocs.alipay.com/open/0c3itf) 。
---
## 234. 商家扣款签约异步返回的status字段有几种枚举类型?
只有这两种:NORMAL:正常;UNSIGN:解约。
---
## 235. 商家扣款自动续费按钮可以设置默认是关闭状态吗
商家扣款自动续费按钮无法设置为默认关闭,默认是自动打开的,但是针对不同的用户人群(同一个人测试了多次,或者针对特定的人群(老年人等)则会是关闭的)。
---
## 236. 商家扣款是否支持h5支付并签约模式
商家扣款不支持h5支付并签约,目前商家扣款支付并签约模式只支持使用APP以及小程序唤起模式。
参考文档:[https://opendocs.alipay.com/open/08bpuc?pathHash=74036bac](https://opendocs.alipay.com/open/08bpuc?pathHash=74036bac)
---
## 237. 智能货柜单次代扣协议用户可以取消吗?
智能货柜单次代扣协议用户无法取消协议,单次代扣产品:一个用户默认只能签约一个协议,签约成功,扣款成功之后,协议自动解约,用户无法主动解约,用户在手机端看不到协议。
---
## 238. 商家扣款生成的签约字符串过长转二维码很密集, 小尺寸的图片扫描不出来怎么处理
针对您反馈的“商家扣款生成的签约字符串太长,导致二维码密集无法扫描”的问题,建议采用以下解决方案:
1. **使用短链转换** :
- 先将生成的签约长链接转换为短链(可借助第三方短链服务),再基于短链生成二维码。这能显著减少二维码数据密度,提高小尺寸图片下的扫描成功率。
2. **检查编码与参数优化** :
- 确认所有字符串处理均使用UTF-8编码,避免乱码增加额外长度。
- 审查请求参数,剔除非必要参数或空值,减少签约字符串长度(。
3. **二维码生成调整** :
- 确保使用可靠的二维码生成库,并测试不同尺寸下的可扫描性。
- 如可能,增大二维码物理尺寸或调整纠错等级(如改用更高容错的QR码版本)。
---
## 239. 商家扣款扣款签约有效期是多久
商家扣款签约时支持设置 sign_validity_period参考,用于控制协议的有效期(用户签约请求的协议有效周期)
- 商家若签约设置 sign_validity_period 参数,签约时间以设置时间为准。
- 商家若签约未设置 sign_validity_period 参数,默认签约时间为长期有效
注意:商家可以调用协议查询接口查询协议失效时间。
---
## 240. 是否有配置链接点击预扣款push消息详情跳转到服务的详情页面
开放场景暂没有提供此能力。
---
## 241. 商家扣款可以扣除用户余额宝里的资金吗?
正常情况下是可以的,具体的要看实际的支付链路,余额宝是否可用。可用并且有钱正常是可以扣的。
---
## 242. 用户主动解约异步通知
用户在支付宝APP解约代扣或者周期扣款协议的异步通知是发送到应用网关的,这里的应用是签约接口使用的应用
用户在支付宝APP中发起解约后,没有收到消息通知的话,需要按照以下思路排查
1、核实应用网关是否设置
2、核实应用网关接收信息是否异常,可借助异步通知工具排查:[https://opensupport.alipay.com/support/diagnostic-tools/329cfb48-dbc6-4d9a-a528-d348b9618b5e](https://opensupport.alipay.com/support/diagnostic-tools/329cfb48-dbc6-4d9a-a528-d348b9618b5e)
---
## 243. 商家扣款首次扣款和下次扣款使用的是同一个接口吗
不同应用场景使用的扣款接口是不一样的:
1.“先签约,后代扣”场景:首次扣款和下次扣款使用的都是统一收单交易支付接口[alipay.trade.pay](https://docs.open.alipay.com/api_1/alipay.trade.pay)接口;
2.“支付后签约”场景:首次扣款和首次签约使用的是APP支付[alipay.trade.app.pay](https://docs.open.alipay.com/api_1/alipay.trade.app.pay)接口或者JSAPI支付[https://opendocs.alipay.com/mini/6039ed0c_alipay.trade.create?scene=de4d6a1e0c6e423b9eefa7c3a6dcb7a5&pathHash=779dc517](https://opendocs.alipay.com/mini/6039ed0c_alipay.trade.create?scene=de4d6a1e0c6e423b9eefa7c3a6dcb7a5&pathHash=779dc517)接口,下次扣款使用的是统一收单交易支付接口[alipay.trade.pay](https://docs.open.alipay.com/api_1/alipay.trade.pay)接口。
---
## 244. 商家扣款如何给用户发送扣款预通知
商家扣款有配套的短信提醒的API,可以参考接口文档 [https://opendocs.alipay.com/apis/02sor3](https://opendocs.alipay.com/apis/02sor3) 。创建许可发通知阶段,调用文档中的alipay.user.agreement.permission.create接口,获取deduct_permission和许可的有效时间,同时给用户发送扣款预通知;无需用户订阅,只要未解约就能发。支付宝这边也会根据周期性进行自动发送,签约连续包月业务且协议在约的用户都会收到预通知,扣款前5-7天通知用户;
注:一个周期内只有一条 疲劳度1天1条 发送不成功才会再次重试发送。不管是哪种签约方式(支付并签约、独立签约后扣款),支付宝都会默认发通知。
---
## 245. 商家扣款如何给用户发送扣款预通知
周期扣款没有配套的短信提醒的API,支付宝这边会根据周期性进行自动发送,签约连续包月业务且协议在约的用户都会收到预通知,扣款前5-7天通知用户。
注:一个周期内只有一条 疲劳度1天1条 发送不成功才会再次重试发送。不管是哪种签约方式(支付并签约、独立签约后扣款),支付宝都会默认发通知。
---
## 246. 单次代扣签约之后,支付完成需要调用解约吗?
单次代扣场景,签约后,若扣款成功是不需要调用协议解约接口的,单次代扣扣款成功后协议会自动解约。
单次代扣场景,签约后,若扣款失败,此时协议不会自动解约,需要商户主动调用解约接口去取消签约,以免后续用户再次尝试签约时会报错【无法重复签约】。
---
## 247. 商家扣款支付并签约支持沙箱环境吗
商家扣款「独立签约、支付并签约」目前不支持在沙箱环境进行测试,商户需要在正式环境进行测试,最短周期为七天。
---
## 248. 商家扣款为什么同个用户同个场景值在同个商家下能签约多次
一个用户在同一个商户下的签约次数是通过创建的模板数量来限制的,目前:
- 一个用户一个模板下只能签约一次
- 目前每个账号下只支持创建 20 个模板
- 创建不同模板后,通过接口入参 sign_scene(签约场景码)来控制用户签约哪一个模板
模板配置流程:登录 [商家平台](https://b.alipay.com/page/product-workspace/all-product)[https://auth.alipay.com/login/index.htm?goto=https%3A%2F%2Fb.alipay.com%2Fpage%2Fproduct-workspace%2Fall-product](https://auth.alipay.com/login/index.htm?goto=https%3A%2F%2Fb.alipay.com%2Fpage%2Fproduct-workspace%2Fall-product) 产品中心 > 产品 > 商家扣款 > 功能管理 > 设置模版 > 保存 > 提交。
具体是要根据商户合约来看,以合约配置的最大签约次数为准。
---
## 249. 商家扣款如何给用户发送扣款预通知
周期扣款没有配套的短信提醒的API,支付宝这边会根据周期性进行自动发送,签约连续包月业务且协议在约的用户都会收到预通知,扣款前5-7天通知用户。
注:一个周期内只有一条 疲劳度1天1条 发送不成功才会再次重试发送。不管是哪种签约方式(支付并签约、独立签约后扣款),支付宝都会默认发通知。
---
## 250. 商家扣款不同期数,需要在支付宝商户后台做特别申请吗?还是通过接口传参就可以了?
商家扣款不同期数直接在签约接口中传入不同的周期规则参数值即可。
---
## 251. 如果我们有多个商户号,这些商户号能不能共用一个sign_scene?
可以的,这个sign_scene是商家设置的模板的,商家登录商家后台>产品中心,选择商家扣款>功能管理中查看,默认的第一个模板都是INDUSTRY|DEFAULT_SCENE,如需新增其它场景值模板,请点击修改按钮去操作即可。(自定义规则:INDUSTRY(固定值)| 场景英文(大写))
---
## 252. 商家扣款签约后扣款的金额可以修改吗?
签约后每次扣款的金额可以变化,只要不超过签约时设置的单笔最高金额即可。
---
## 253. 商家扣款的自动续费服务提醒可以关闭吗
自动续费服务提醒是支付宝正常的业务策略,无法关闭,不会影响商户正常业务,故商户无需关注;
如果协议已经关闭,那么没有办法再使用协议去扣款,要用户支付的话 需要商户和用户去协商,让用户主动去支付。
---
## 254. 如何取消周期/商家扣款的【开通支付宝自动续费】按钮
### 背景
在周期/商家扣款 **支付后签约** 场景中,用户唤起支付并签约页面,可以通过 **开通支付宝自动续费** 按钮选择是否在支付时,同意签约周期/商家扣款协议。但商户由于自身需求原因,需要用户在支付并签约的页面,取消 **开通支付宝自动续费** 按钮,实现用户在支付的同时就默认同意签约周期/商家扣款协议。
### 解决方案
正常状态下,【开通支付宝自动续费】 按钮打开表示支付并签约,关闭表示只支付不签约。
目前接口代码中**不支持参数设置控制,无法取消 【开通支付宝自动续费】 按钮**。
**注意:** 如果用户在页面取消 【开通支付宝自动续费】,表示只支付不签约,商家是无法感知的,只能收到支付成功的通知。
如有其他问题建议到 [商家服务中心 ](https://b.alipay.com/index2.htm)咨询在线客服或拨打商家服务热线 400*****58(服务时间为:8:00-24:00)咨询。
---
## 255. 商家扣款准入条件
目前 **商家扣款** 对满足以下要求的商家开放:
- **商家扣款** 仅支持 [支付宝企业账号](https://opendocs.alipay.com/common/02kkum) 接入;**商家分账** 支持 [支付宝企业账号](https://opendocs.alipay.com/common/02kkum) 及 [个体工商户](https://opendocs.alipay.com/common/02kkul) 接入。
- 接入 [支付并签约](https://opendocs.alipay.com/open/08bpuc?pathHash=92c2337c) APP业务场景的商家需开通 [APP 支付](https://b.alipay.com/signing/productDetailV2.htm?productId=I1011000290000001002)(网页/移动应用,移动应用需要是已上架状态)。
- 接入 [支付并签约](https://opendocs.alipay.com/open/08bpuc?pathHash=92c2337c) 小程序业务场景的商家需开通 [JSAPI 支付](https://opendocs.alipay.com/mini/repo-01ot91)。
- 企业注册资本≥2000万元人民币。
- 已开通支付宝收单产品且近半年每月主动支付用户数≥300人(同个工商主体下任一支付宝账号,不含收钱码交易)。
- 企业无经营风险,包含但不限于工商信息可查询到的风险信息:行政处罚、股权冻结、股权质押、动产抵押、动产抵押物等。
---
## 256. 商家扣款如何给用户发送扣款预通知
支付宝这边会根据周期性进行自动发送,签约连续包月业务且协议在约的用户都会收到预通知,扣款前5-7天通知用户;
注:一个周期内只有一条 疲劳度1天1条 发送不成功才会再次重试发送。
---
## 257. 异步通知接收失败,没有返回success给支付宝,支付宝还会重推异步通知吗?
在进行异步通知交互时,如果支付宝收到的应答不是 success ,支付宝会认为通知失败,会通过一定的策略定期重新发起通知。重试逻辑为:当未收到success 时立即尝试重发 3 次通知,若 3 次仍不成功,则后续通知的间隔频率为:4m、10m、10m、1h、2h、6h、15h。
如何想要参考:[https://opendocs.alipay.com/support/01raw4](https://opendocs.alipay.com/support/01raw4)
---
## 258. 商家扣款签约有效期是多久?
商家扣款签约支持设置 sign_validity_period(用户签约请求的协议有效周期)。
1、商家若签约设置 sign_validity_period 参数,签约时间以设置时间为准。
2、商家若签约未设置 sign_validity_period 参数,默认签约时间为长期有效
---
## 259. 商家扣款的模板sign_scene定义是什么
一个用户在同一个商户下的签约次数是通过创建的模板数量来限制的。
目前一个用户在一个商户签约模板下只能签约一次,每个商户账号下只支持创建 20个模板「目前暂不支持新增」,商户创建不同模板后,可以通过接口入参 sign_scene(签约场景码)来控制用户签约哪一个模板。
模板配置流程:登录 商家平台 [https://auth.alipay.com/login/index.htm?goto=https%3A%2F%2Fb.alipay.com%2Fpage%2Fproduct-workspace%2Fall-product](https://auth.alipay.com/login/index.htm?goto=https%3A%2F%2Fb.alipay.com%2Fpage%2Fproduct-workspace%2Fall-product) 产品中心 > 产品 > 商家扣款 > 功能管理 > 设置模版 > 保存 > 提交。
---
## 260. 如何查询代扣协议的解约时间
目前没有接口查询,商户侧发起解约可以自行记录,用户自行解约会有异步通知,也可以本地记录。
如果忘记记录,可通过支付宝代扣协议信息查询工具查询解约时间,工具地址:[https://opensupport.alipay.com/support/diagnostic-tools/09bd7c2e-a331-47f1-8072-32ed506142a8](https://opensupport.alipay.com/support/diagnostic-tools/09bd7c2e-a331-47f1-8072-32ed506142a8)
---
## 261. 商家扣款后商家多久能收到款
商家扣款之后,资金是实时到商户收款账号下的。
---
## 262. 商家扣款签约功能有客户端SDK吗?
商家扣款接入指南里面有客户端 Android&iOS 集成流程:[https://opendocs.alipay.com/pre-open/20170601105911096277new/gofmhi?pathHash=40432253](https://opendocs.alipay.com/pre-open/20170601105911096277new/gofmhi?pathHash=40432253);如果是PC端,转二维码自行集成。
---
## 263. 支付并签约没有签约页面是什么情况?
1、账户存在风险,不会展示签约页面,无法签约,可以咨询95188-1安全部门同学;
2、签约参数有误,可以对比文档检查参数;
3、反复测试触发疲劳度限制,可以换账号测试
以及其他原因,多次失败可以联系支付宝技术支持咨询解决。
---
## 264. 商家扣款支付并签约是否存在支付成功签约不成功,或者签约成功支付不成功的情况
- **支付成功但签约不成功的情况是可能的** :
- 原因:支付并签约场景中,支付和签约是分步执行的。支付成功后,系统会尝试签约,但如果签约业务参数(如 agreement_sign_params)配置错误,会导致签约失败。常见错误包括:
- product_code 未设置为 GENERAL_WITHHOLDING。
- 缺少必传签约参数(如 personal_product_code、access_params、period_rule_params)。
- period_rule_params 规则配置不当(例如,period_type=MONTH 时 execute_time 设置在 29-31 日)。
- 一对多模式下,external_agreement_no 和 sign_scene 未正确配对(如设置了 external_agreement_no 但未传 sign_scene)。
- 用户未在支付页面点击“开通周期/商家扣款协议”按钮。
- 回调机制:支付回调(如 notify_url)会触发支付成功通知,但签约回调(如 sign_notify_url)可能返回失败或错误状态,需在服务端日志中检查签约结果。
- **签约成功但支付不成功的情况不会发生** :
- 原因:支付是签约的前提条件。调用 alipay.trade.app.pay 接口时,支付失败(如用户取消支付、账户余额不足或支付参数错误)会直接导致支付回调返回失败状态,此时签约流程不会启动。因此,签约成功必须以支付成功为基础。
### 建议优化措施
- **参数检查** :在开发阶段,严格按文档验证所有参数:
- 确保 agreement_sign_params 包含完整必传字段,参考代码示例:
- **文档参考** :详细参数规则见 [商家扣款文档](https://opendocs.alipay.com/open/06de8c?pathHash=654eb816) 和 [sign_scene场景值](https://opensupport.alipay.com/support/FAQ/719dff5c-3e72-4473-8726-cb6de6d3a6ff)。
---
## 265. 商家扣款产品介绍文档
商家扣款产品介绍文档 :[https://opendocs.alipay.com/open/06de8c?pathHash=bc28a7a2](https://opendocs.alipay.com/open/06de8c?pathHash=bc28a7a2)
---
## 266. 代扣协议解约后,调用协议查询接口为什么返回:协议信息不存在
解约后,代扣协议查询返回的就是协议信息不存在,是正常产品逻辑。
---
## 267. 商家扣款产品时,支付失败(如用户余额不足等原因)是否会在支付宝端内发push提醒用户?
不会,商家扣款是商户侧主动调用服务端接口根据协议号进行扣款,用户无感知。
---
## 268. 签约的异步通知中都会有next_deduct_time吗?
是的,不轮是独立签约还是支付并签约,签约的异步通知中都会有next_deduct_time。等到第二周期,因为不会再发送签约的异步,商户可以调用查询接口查询next_deduct_time。
---
## 269. 签约业务的确认继续按钮能都去掉
签约页面的确认继续倒计时按钮是支付宝风控策略,属于正常现象,无需处理,也无法去掉。
---
## 270. 商家扣款如何给用户发送扣款预通知
支付宝这边会根据周期性进行自动发送,签约连续包月业务且协议在约的用户都会收到预通知,扣款前5-7天通知用户;
注:一个周期内只有一条 疲劳度1天1条 发送不成功才会再次重试发送。不管是哪种签约方式(支付并签约、独立签约后扣款),支付宝都会默认发通知。
---
## 271. 商家扣款周期的时间是统一按照北京时间扣除的吗?
商家扣款的周期时间是以北京时间为准的,具体扣款时间由商家在约定日期之前5天开始,即可以选择在约定日期的前一天开始扣款;这个提前五天扣款,不包含扣款日当天,即提前 5 天+扣款日当天。
---
## 272. 商家扣款同一个用户在同一个商家下同一个场景值能签约几次?
如果商家业务上允许同一个用户在商家下签约多笔协议,那么独立签约与支付并签约需要区分场景值,因为这个签约次数校验是场景值+pid 限制的
一个用户在同一个商户下的签约次数是通过创建的模板数量来限制的,目前:
- 一个用户一个模板下只能签约一次
- 目前每个账号下只支持创建 20 个模板
- 创建不同模板后,通过接口入参 sign_scene(签约场景码)来控制用户签约哪一个模板
模板配置流程:登录 [商家平台](https://b.alipay.com/page/product-workspace/all-product)[https://auth.alipay.com/login/index.htm?goto=https%3A%2F%2Fb.alipay.com%2Fpage%2Fproduct-workspace%2Fall-product](https://auth.alipay.com/login/index.htm?goto=https%3A%2F%2Fb.alipay.com%2Fpage%2Fproduct-workspace%2Fall-product) 产品中心 > 产品 > 商家扣款 > 功能管理 > 设置模版 > 保存 > 提交。
具体是要根据商户合约来看,以合约配置的最大签约次数为准
---
## 273. 使用商家扣款能力,需要开通哪些产品能力?
目前商家扣款仅支持支付并签约,如果是APP支付并签约,需要签约商家扣款、APP支付;如果是小程序支付并签约,需要签约商家扣款、JSAPI支付。
---
## 274. 商家扣款疲劳度需要多长时间解除? 才能再签约
商家扣款疲劳度一般第二天可以恢复,可以次日测试或者换账号测试。
---
## 275. 智能货柜单次代扣用户授权后能自己在支付宝app取消授权么
不可以的,单次代扣一个用户默认只能签约一个协议,签约成功,扣款成功之后,协议自动解约,用户无法主动解约,用户在手机端看不到协议。
---
## 276. 签约业务的确认继续按钮能否去掉
签约页面的确认继续倒计时按钮是支付宝风控策略,属于正常现象,无需处理,也无法去掉。
---
## 277. 商家扣款销售产品码、签约产品码是什么?
product_code:商家扣款产品码固定为 GENERAL_WITHHOLDING。
personal_product_code:商家扣款个人签约产品码固定为 CYCLE_PAY_AUTH_P。
可以参考文档接入指南设置:[https://opendocs.alipay.com/open/08bpuc?pathHash=74036bac#%E7%AD%BE%E7%BA%A6%E9%87%8D%E8%A6%81%E5%8F%82%E6%95%B0%EF%BC%88agreement_sign_params%EF%BC%89%E8%AF%B4%E6%98%8E](https://opendocs.alipay.com/open/08bpuc?pathHash=74036bac#%E7%AD%BE%E7%BA%A6%E9%87%8D%E8%A6%81%E5%8F%82%E6%95%B0%EF%BC%88agreement_sign_params%EF%BC%89%E8%AF%B4%E6%98%8E)
---
## 278. 商家扣款的扣款时间规则
目前允许商户在约定日期之前5天(不含约定日当天)开始扣款,即比起严格限制到某一天稍微留有余地。例:约定扣款日为 20 号,支持商家从 15 至 20 号发起扣款。
---
## 279. 异步通知接收失败,没有返回success给支付宝,支付宝还会重推异步通知吗?
在进行异步通知交互时,如果支付宝收到的应答不是 success ,支付宝会认为通知失败,会通过一定的策略定期重新发起通知。重试逻辑为:当未收到success 时立即尝试重发 3 次通知,若 3 次仍不成功,则后续通知的间隔频率为:4m、10m、10m、1h、2h、6h、15h。
---
## 280. 收款账号存在风控,还可以代扣收款吗?
如果收款账号限制收款,则无法进行代扣收款。
---
## 281. 商家如何根据不同的产品配置不同的签约服务详情和名称
商家在配置不同的产品时,可以根据业务场景和用户购买的商品差异性,通过支付宝商家平台设置不同的签约服务详情和名称。具体操作如下:
1. 登录 **支付宝商家平台** > [产品大全](https://b.alipay.com/page/product-mall/all-product) > **商家扣款** > **功能管理** > **修改** > **设置模版** 。
2. 在此界面可以**新增模板及场景码** ,根据不同的产品或服务类型,设置对应的签约服务名称和详情。
3. 商家在签约接入时,需要传入模版中实际填写的**场景码** ,以区分不同的签约协议。
4. 场景码的详细值可参考 [常见场景码值](https://opendocs.alipay.com/open/08bg92)。
通过以上方式,商家可以为不同产品配置不同的签约服务详情和名称,
---
## 282. 商家扣款如何沙箱测试
商家扣款产品不支持沙箱环境测试,沙箱支持产品列表参考:[https://opendocs.alipay.com/common/097jyi?pathHash=9fcbe0d0](https://opendocs.alipay.com/common/097jyi?pathHash=9fcbe0d0)
---
## 283. 商家如何避免支付并签约过程中余额不足首次支付失败后续从账单中支付成功,但无法签约的情况?
您好,这种情况是无法避免的,因为的确会有支付成功但签约失败的可能(例如还有用户侧账号问题导致的签约失败等)。如果您没收到签约成功的异步通知,或者调用协议查询没有查询到协议号,那只能麻烦您按照支付成功,但签约失败的结果去处理自己的业务了。
---
## 284. 商家扣款如何给用户发送扣款预通知
支付宝这边会根据周期性进行自动发送,签约连续包月业务且协议在约的用户都会收到预通知,扣款前5-7天通知用户;
注:一个周期内只有一条 疲劳度1天1条 发送不成功才会再次重试发送。不管是哪种签约方式(支付并签约、独立签约后扣款),支付宝都会默认发通知。
---
## 285. 开通支付并签约时点击返回按钮时「跳过开通,仅付款」是否可以去掉?
开通支付并签约时点击返回按钮时「跳过开通,仅付款」无法去除,风控检测到用户当下不适合做代扣签约,就会出弹窗提醒,系统默认无法隐藏的。
---
## 286. 通用代扣模式与周期扣款模式有什么区别?
**扣款方式差异** :
- **CYCLE_PAY_AUTH(周期扣款)** :在扣款时,支付宝会校验扣款时间是否符合预设的周期规则(例如按月、按天等),以确保扣款发生在约定的时间范围内(如每月1日)。这有助于避免非计划内的扣款。
- **GENERAL_WITHHOLDING(通用代扣)** :通常由系统根据协议自动执行一次性或非周期性扣款(例如水电费代扣)。它不涉及周期规则设置,因此支付宝不会校验扣款时间,扣款可随时触发,只要协议有效即可。
**签约方式差异** :
- **CYCLE_PAY_AUTH** :必须通过`alipay.user.agreement.page.sign`接口完成签约,支持设置详细的周期规则(如扣款频率和期限),这直接关联到时间校验逻辑。
- **GENERAL_WITHHOLDING** :过`alipay.user.agreement.page.sign`接口完成签约,无需设置周期规则,因此无时间校验要求。
**额度限制差异** :
- **CYCLE_PAY_AUTH** :有严格的额度控制(例如单笔不超过100元),这些限制与周期规则结合,进一步强化了时间校验的约束。
- **GENERAL_WITHHOLDING** :通常无固定周期额度限制,扣款金额基于实际交易需求,不涉及时间相关的校验。
**适用场景差异** :
- **CYCLE_PAY_AUTH** :适用于需要定期扣款的场景(如订阅服务、会员费),其时间校验机制确保扣款按计划执行,避免用户纠纷。
- **GENERAL_WITHHOLDING** :适用于一次性或即时扣款场景(如购物支付、账单代扣),无时间校验,灵活性更高。
---
## 287. 没有支付宝app可以进行支付宝并签约吗
没有支付宝app不可以进行支付并签约,签约是在手机端完成的,支付宝并签约用户需要有支付宝app。
支付并签约接入文档:[https://opendocs.alipay.com/open/08bpuc?pathHash=74036bac](https://opendocs.alipay.com/open/08bpuc?pathHash=74036bac)
---
## 288. 商家扣款交易订单默认支付超时时间是多久
商家扣款支付环节调用的是alipay.trade.pay接口,该产品默认支付超时时间为15天(最大为15天),可以传入**time_expire** 绝对超时时间来进行限制,格式为yyyy-MM-dd HH:mm:ss
---
## 289. 支付并签约的链接能使用长链接转短链接的api转成短链接吗
目前无此类api接口,并**不支持**使用长链接转短链接的API将支付并签约的链接转成短链接。支付并签约的链接需要保持原样,以确保安全性和功能性
---
## 290. 商家扣款两次扣款时间间隔
支付并签约场景周期类型使用DAY的时候,周期数 period不允许小于 7(包含7);
独立签约后扣款才是要求周期类型使用 DAY 的时候,周期数 period 不允许小于 30(可以等于 30)
---
## 291. 如何修改签约页面logo
签约页面的logo取自商户资料,商户可登录蚂蚁开放平台b.alipay.com进入到账户管理页面,商户基本信息->企业基本信息->信息管理->商家资料进行修改。
注:目前logo存在问题,读取的是历史的logo信息,新修改目前暂时调整不了。
---
## 292. 商家扣款如何给用户发送扣款预通知
周期扣款没有配套的短信提醒的API,支付宝这边会根据周期性进行自动发送,签约连续包月业务且协议在约的用户都会收到预通知,扣款前5-7天通知用户;
注:一个周期内只有一条 疲劳度1天1条 发送不成功才会再次重试发送。不管是哪种签约方式(支付并签约、独立签约后扣款),支付宝都会默认发通知。
---
## 293. 商家扣款自动续费按钮可以隐藏吗?
目前自动续费按钮不支持隐藏,有特殊需求可以联系您的业务经理找代扣产品同学评估是否能隐藏。
---
## 294. 退款查询接口为什么没有refund_amount
### **退款查询接口响应数据判断**
- 商户退款后或者退款返回 fund_change=N,可使用 [alipay.trade.fastpay.refund.query](https://opendocs.alipay.com/open/02ekfl)(统一收单交易退款查询)查询 alipay.trade.refund 提交的退款请求是否执行退款成功。
- 退款查询接口返回 10000,success,仅代表本次接口请求成功,不代表退款成功。
- 退款查询接口的 trade_no、out_trade_no、out_request_no 必须和退款接口保持一致,否则交易号一致,out_request_no 不同,只会返回 10000,success,但是没有具体的退款信息。
- 退款查询接口**返回refund_status=REFUND_SUCCESS表示退款处理成功,否则表示退款没有执行成功** 。
**说明** :如果退款查询发起时间早于退款时间,或者间隔退款发起时间太短,可能出现退款查询时还没处理成功,后面又处理成功的情况,建议商户在退款发起后间隔10秒以上再发起退款查询请求。
- 如果接口未退款成功且不明确交易情况时,重试请务必保证退款请求号out_request_no以及请求参数一致,避免发生多次退款。
---
## 295. 异步通知接收失败,没有返回success给支付宝,支付宝还会重推异步通知吗?
在进行异步通知交互时,如果支付宝收到的应答不是 success ,支付宝会认为通知失败,会通过一定的策略定期重新发起通知。重试逻辑为:当未收到success 时立即尝试重发 3 次通知,若 3 次仍不成功,则后续通知的间隔频率为:4m、10m、10m、1h、2h、6h、15h。
---
## 296. 商家扣款如何设置sign_scene(签约协议场景)
商户签约[商家扣款](https://opendocs.alipay.com/open/06de8c?pathHash=654eb816)(product_code=GENERAL_WITHHOLDING),sign_scene需商家在商家平台配置后获取:
- sign_scene默认值为:INDUSTRY|DEFAULT_SCENE,(可固定传参,无需商家平台配置)。
- sign_scene修改方式:商家登录商家后台>[产品中心](https://b.alipay.com/page/product-workspace/all-product),选择商家扣款>功能管理中查看,默认的第一个模板都是INDUSTRY|DEFAULT_SCENE,如需新增其它场景值模板,请点击修改按钮去操作即可。(自定义规则:**INDUSTRY** (固定值)**| 场景英文** (大写))
---
## 297. 如何解决用户开通免密支付失败的问题,特别是当用户信息不匹配时
1. 请确认传参和用户信息是否一致。
2. 如果其他用户正常,只有特定用户出现问题,可能是传的用户信息不匹配。
3. 检查外部协议号是否重复使用,确保没有重复签约。
---
## 298. 云售卖单次代扣能否限制签约用户的年龄范围
设备端发起的签约过程中没有直接传入年龄范围的字段。建议按照云售卖的文档说明标准流程进行对接。
---
## 299. H5页面如何实现小程序周期扣款API my.paySignCenter的功能
没有专门针对H5的API,可以直接将服务端接口返回的签约链接在H5页面中打开即可实现周期扣款的功能。参考文档:[https://opendocs.alipay.com/support/01rg24](https://opendocs.alipay.com/support/01rg24)。
---
## 300. alipay.user.agreement.permission.create接口返回的许可凭证在扣款时有什么限制
alipay.user.agreement.permission.create接口返回的许可凭证在扣款时有以下限制:
1. 扣款时间必须在许可有效期内,否则扣款会失败。
2. 许可有效时间开始时间:effective_time_start,许可有效时间截止时间:effective_time_end,默认发起请求后24小时到72小时内。
3. 每天每个用户只会发送一次通知,重复调用会有频率限制,不会覆盖前面的许可。
4. 扣款金额和时间需要符合许可凭证中的入参要求。
---
## 301. 如何判断支付宝沙箱环境下的支付是否在维护期间
1. 沙箱目前已经取消了周常维护(历史:每周日中午至周一中午维护)。
2. 检查支付失败的具体情况:如果支付失败是在沙箱环境中出现的,可以怀疑是沙箱本身的问题。
3. 使用正式环境测试:若怀疑是沙箱问题,建议先使用正式环境进行测试,以排除沙箱环境的问题。
4. 如果问题依然存在,可联系支付宝技术支持确认是否有维护或其他问题。
---
## 302. 如果用户在29号签约连续包月的商品,那么29号能代扣成功吗
如果用户在29号签约连续包月的商品,不能在29号代扣成功。建议将execute_time设置在下个月1号,这样提前5天就能在29号代扣成功。同时,execute_time不能设置为29、30、31号,但29、30、31这三天是可以提前扣款的。
---