支付宝回调的一个诡异问题

2015-10-29 23:05:30 +08:00
 blues9

支付宝支付成功后会回调 notify_url 作异步通知处理。
最近发现支付宝 server 回调的请求订单是 90 天之前支付成功的订单,虽然对业务没有什么影响,但是感觉很怪异。
按支付宝文档的说法,这个回调在不成功的情况下最多也只会尝试一天左右的时间,这些请求也确实是从支付宝的 server 发出。这会是什么问题?

4230 次点击
所在节点    问与答
6 条回复
takatost
2015-10-30 09:09:15 +08:00
退款吧
blues9
2015-10-30 10:49:09 +08:00
@takatost 肯定不是,退款操作都是由操作人员在工作时间统一提交的,而这些回调的请求数是很多的,大大多于退款次数,而且发生的时间很分散,半夜都有,基本上和 90 天之前的支付时间是吻合的。
morphinewan
2015-10-30 11:09:49 +08:00
我碰到过类似的问题,我们用的是即时到账支付接口。在用户支付后,会发生一个回调,这只是一个已经支付完成的通知回调,在支付宝上,这个交易其实还没有结束。支付宝会给用户 90 天的退款期限,这个时间内用户可以提出退款,进入退款流程。当 90 天过后,用户并没有反悔,发起退款。那么就会再次调用你提供的回调 URL 。告诉你,交易已经结束。两次调用的回调 URL 是一样的,但是传递给你的参数有略微的不同,具体你可以参看支付宝 SDK 文档或者直接问支付宝的技术客服,他们很专业,会帮助你的。
blues9
2015-10-30 11:48:22 +08:00
@morphinewan 多谢解答。这样就能解释 90 天这个时间点了,我们现有的处理逻辑也是会返回 success 的。不过支付宝的文档里没有找到 90 天回调这个内容,最接近的是这个 http://doc.open.alipay.com/doc2/detail?spm=0.0.0.0.o7dU5n&treeId=62&articleId=103743&docType=1#s1 , 也只说明了首次支付的时候的情况(25 小时以内完成 8 次通知),请问哪里能找到这个 90 天的相关内容?
morphinewan
2015-10-30 11:59:39 +08:00
@yangshengwu 我之前开发支付宝接口已经是 1 年前的事情,没有在线版的文档,有个 word 文档,不过里面也没说到过这个期限。我猜应该是跟你和支付宝签订的商业合同里面带有类似的约定,我们之前也不明白为什么过了 90 天后会再次发生回调。后来在线咨询了支付宝的技术支持,才知道有这么个“约定俗成”的机制。感觉支付宝的接口也会不停迭代更改的,接口定义什么的偶有变化。他们大部分时候会通过商务部门通知签约客户的。到时候需要你们商务负责需要及时通知技术部门及时跟进才行。
blues9
2015-10-30 12:23:18 +08:00
@morphinewan 跟业务部门沟通了一下,支付宝那边没有提供特殊的文档,回头我去联系技术客服确认吧。多谢!

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/232141

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX