业务订单
1.概述
业务订单定义了所有业务都需要支持的订单业务接口
接口规定了在整个业务从下单到完成支付的整个业务流程。
其中具体每个业务的特性,都由具体每个业务进制定,本接口只规定了整体的接口参数,不包含具体的商品特性
所有订单交易流程
1.选择商品,请求下单
2.生成订单,请求支付网关
3.在请求的支付网关的页面上面完成支付
4.收到支付网关的回调后,请求业务方进行发货
5.收到请求方的发货消息,完成交易
支付与订单系统之间的逻辑流程如下:
流程一: 1.业务模块接收用户下订单,根据用户选择的商品、支付路由,生成订单记录,同时根据选择的支付路由,向支付模块发起支付请求。
2.支付模块返回支付链接,用户在H5上面打开链接,进行支付操作。
3.这时所有的订单状态为正在处理中。
4.用户在支付页面上面完成操作,支付模块接收支付网关的回调,支付模块会回调给业务的订单模块。
5.业务订单模块接收到回调信息后,更新订单状态,发送通知给前端。
流程二: 1.业务模块接收用户下订单,根据用户选择的商品、支付路由,生成订单记录,同时根据选择的支付路由,向支付模块发起支付请求。
2.支付模块返回支付链接,用户在H5上面打开链接,进行支付操作。
3.这时所有的订单状态为正在处理中。
4.用户关闭支付页面,或者不进行支付。
5.用户再次发起订单支付
6.用户选择同一个支付渠道。
7.订单模块判断订单状态,只有订单状态是等待支付,同时订单没有过有效期,才下发请求给支付模块。
8.支付模块根据订单号判断原记录是否有过支付记录,如果有,同时状态还在等待回调的。则向支付网关查询该笔记录的状态。
9.如果记录已经是成功的,直接返回成功信息给订单模块。订单模块更新订单状态,同时发送通知。
10.如果记录已经是最终状态,并且不是成功的,再次向支付网关发起支付请求,同时返回支付链接给订单系统。
流程三: 1.业务模块接收用户下订单,根据用户选择的商品、支付路由,生成订单记录,同时根据选择的支付路由,向支付模块发起支付请求。
2.支付模块返回支付链接,用户在H5上面打开链接,进行支付操作。
3.这时所有的订单状态为正在处理中。
4.用户关闭支付页面,或者不进行支付。
5.用户再次发起订单支付
6.用户选择不同支付渠道。
7.订单模块判断订单状态,只有订单状态是等待支付,同时订单没有过有效期,才下发请求给支付模块。
8.支付模块根据订单号判断原记录是否有过支付记录,如果有,同时状态还在等待回调的。则向支付网关查询该笔记录的状态。
9.如果记录已经是成功的,直接返回成功信息给订单模块。订单模块更新订单状态,同时发送通知。
10.如果记录已经是最终状态,并且不是成功的,再次向支付网关发起支付请求,同时返回支付链接给订单系统。
补充: 上面的概念来自于我们老大多年来经验的精华总结,记录下来学习学习~要想学习好支付知识,必须要对整个概念有个熟悉理解哦!加油!