zoukankan      html  css  js  c++  java
  • 支付网关思考

     支付网关思考

     

    • 目的

               支付网关是为了屏蔽各种 支付工具之间的差异,对订单系统行程一个统一的,标准的接口。如下图所示

               

    • 思路

     

    1.  订单系统的生成订单号,订单状态为待支付
    2.  用户发起支付请求,支付网关负责交易支付请求, 生成 支付流水号。
    3.  支付网关在完成支付请求后 ,负责更新订单状态。
    4.  支付失败,订单状态不更新
    5. 支付网关在像第三方支付时出现错误时重试三次
    • 事物补偿机制
    1.   支付状态 定时更新机制(每10分钟一次)

    • 对账     
    1.  每晚 从第三方支付公司取出的对账文件,从订单统获取使用该公司的支付文件.
    2. 分别比对总金额, 发现平与不平,多交款,少缴款。
    3. 相关异常订单存入异常订单表中,第二天人工处理
    • 接口设计     

                 1. 订单状态同步

                          bool  UpdateOrderPaySatus(string orderId, int paySatas)

                 2. 预支付请求签名设计(订单号,金额,Key ,Signature)

                      

    1. 把请求中的参数 除了Signature 外 按照参数名称进行正向排序
    2. 把所有参数名和参数值串在一起(不能有空格)
    3. 把后台设置的key值串接到“第二步”得到的字符串尾部(不能有空格)
    4. 采用MD5算法对“第三步”得到的字符串进行加密,生成Signature的值
  • 相关阅读:
    JavaScript prototype应用
    HTML表格
    ramnit病毒
    HTML简历表格
    Oracle、SQL Server、MySQL数据类型对比
    Oracle、SQL Server、MySQL分页方法
    java操作数据库出错
    SQL基本CRUD
    Oracle基础函数
    SQL多表查询
  • 原文地址:https://www.cnblogs.com/crystal189/p/7054683.html
Copyright © 2011-2022 走看看