通知页面notify_url、返回页面return_url是怎么工作的?
返回页面(return_url文件)工作原理
1、构造请求数据
商户通过提供的接口代码示例,通过代码示例的规则,程序构造与运算得到sign加密结果以及构造后的请求给智付的数据集合。必须是POST方式。
2、发送请求数据
把构造完成的数据集合,通过页面链接跳转或表单提交的方式传递给智付。
3、请求的交易
智付得到这些集合后,会先做安全校验等验证,一系列验证通过后便会处理完成这次发送过来的数据请求。
4、返回相应数据
智付对处理完成的交易,程序上自动进行重新构造成URL地址链接,以自动跳转的方式跳回商家在请求时设定好的页面路径地址(参数return_url,商家没设定,则不会跳回)。
5、对相应的数据进行处理
商家的返回页面(参数return_url指定页面文件)得到智付返回的数据,把这些数据结合自身网站情况,进行数据处理(如:订单更新)。
返回页面(notify_url文件)工作原理
前提:若要智付能主动通知,需商户在请求时设定好通知的页面路径(参数notify_url),且该页面文件完全空白,无任何字符。
1、发起通知
一旦交易状态发生变更(如:支付成功),智付便会根据自动进行数据处理,并主动调用商户在请求时设定好通知的页面路径(参数notify_url)
2、对通知数据进行处理
商户网站收到智付发送过来的通知数据,把这些数据结合自身网站情况,进行数据处理,如:处理返回页(参数return_url)漏掉的订单,做订单更新,即补单措施。
3、在页面上输出SUCCESS
商户网站处理完成所有的数据处理以后,即程序运行最后,返回写页面“SUCCESS”这7个字符(页面上只允许输出SUCCESS),以表示自己已经成功处理完成自己的业务。
4、完成处理该次通知,不再发送通知
智付得到商户反馈回来的“SUCCESS”7个字符信息,进行核对与验证,结束此次通知流程。
注意:
如果商户反馈给智付的字符不是SUCCESS这7个字符,智付服务器会不断重发通知,在2小时内完成1~6次通知(通知频率:5m,10m,20m,30m)