支付网关是为了屏蔽各种 支付工具之间的差异,对订单系统行程一个统一的,标准的接口。如下图所示
思路
订单系统的生成订单号,订单状态为待支付
用户发起支付请求,支付网关负责交易支付请求, 生成 支付流水号。
支付网关在完成支付请求后 ,负责更新订单状态。
支付失败,订单状态不更新
支付网关在像第三方支付时出现错误时重试三次
事物补偿机制
支付状态 定时更新机制(每10分钟一次)
对账
每晚 从第三方支付公司取出的对账文件,从订单统获取使用该公司的支付文件.
分别比对总金额, 发现平与不平,多交款,少缴款。
相关异常订单存入异常订单表中,第二天人工处理
接口设计
1. 订单状态同步
bool UpdateOrderPaySatus(string orderId, int pay