关于微信和支付宝的支付,什么情况下需要用到支付单号?
关于微信和支付宝的支付单号,一直有点疑问,首先支付单号的获取只能是通过支付后的回调接口获得,这样的话查询的接口根本用不到这个支付单号啊(既然已经回调了,我就知道了成功还是失败了,还去查询什么?)然后所有的申请和查询,都是商户订单号和支付单号二选一,所以这个支付单号到底有什么用呢,难道说一个订单号可以对应多个支付单号么?具体就不太清楚了。。
假如,服务器节点出现故障,出现延时亦或者服务器短时间内无法访问 等各种原因可能导致无法回调,那么用途来了。
支付单号是支付系统内的单号(微信的),商户单号是开发者传的单号(商户的)。大概就是支付系统那边需要生成一个id来标记这笔订单,同时也允许商户给一个id来标记这笔订单。
返回的支付单号,当你需要退款的时候,必须要的!
回调未成功的情况下一样拿不到支付单号吧 所以我感觉应该是这样的 支付单号对于微信或者支付宝的支付系统来说 才是唯一的标识 我们的订单号并不是 就像订单号在我们的系统是唯一的一样 所以再有商户id及商户其它信息情况下 我们可以用订单号或者支付单号来做查询或者退款
只要关于到钱的业务,我们都要做的谨慎谨慎在谨慎,在理论上来说,只要有商户的订单号就可以保证业务流正常。但是多保存一支付端的编号也没有任何问题,你可以把它想成冗余的数据即可,无需纠结为什么这么设计。
当然,不存支付订单也是没问题的。我们在实际系统开发中,这些数据都保存了,安心一些。
异步回调
除了下单必须使用我们生成的订单号我一切关于接口的对接都不使用、因为我也信不过我自己生成的订单号、他们的安全吧!而且用户获取到的凭证也是这个支付单号、毕竟我们生成的是可以修改的 支付生成的确实修改不了的