周期代扣调用支付并签约(alipay.trade.app.pay)接口之后,用户已经支付成功了,但是没有收到签约的异步通知信息。
无法收到原因
1、签约异步接收地址未设置
2、用户签约未成功
3、设置接收地址有问题
解决方案 1、用户签约未成功
签约参数有问题以及用户未选择签约都有可能导致用户签约未成功,先核实用户是否签约成功
(1)在用户支付宝钱包中找到 我的-->设置-->支付设置-->免密支付/自动扣款 查看是否有对应的代扣服务协议
(2)调用查询接口确认协议是否签约成功,详见协议查询。
2、签约异步接收地址未设置
(1)用户支付并签约成功之后,支付宝会向用户发送两条异步通知信息。其中支付异步通知是发送到notify_url设置的地址中,签约异步通知是发送到sign_notify_url设置的地址中。
(2)由于文档中未标注sign_notify_url参数,因此如果没有入参sign_notify_url的情况下,接口默认将支付和签约的异步通知信息都发送到notify_url设置的地址中。
(3)需要注意sign_notify_url需要入参到agreement_sign_params中,入参格式如下:
{ "out_trade_no": "APP2020306QY00014", "product_code": "CYCLE_PAY_AUTH", "total_amount": "0.01", "subject": "Iphone6 16G", "agreement_sign_params": { "personal_product_code": "CYCLE_PAY_AUTH_P", "sign_scene": "INDUSTRY|TICKET", "access_params": { "channel": "ALIPAYAPP" }, "sign_notify_url": "http://xxxx.xx.xxx", "period_rule_params": {
"period_type":"DAY", "period":"7", "execute_time": "2019-10-17", "single_amount":"1.00", "total_amount":"5.00", "total_payments":"10" }
}
3、设置接收地址有问题
notify_url和sign_notify_url入参的地址存在问题,导致无法接收到支付宝发送的异步通知。
异步地址是必须外网post访问,可参考云排查的异步通知排查流程,检查异步情况。
详见收不到异步通知
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。