zoukankan      html  css  js  c++  java
  • 公共支付平台设计思路

    公共支付平台:XX

    1.支付宝+微信+银联,通过银联支付,实际也是走的支付宝提供的接口,并未和银行直接做交互。支付平台包含两方面配置(XX各系统配置+各支付系统配置)
    2.首先XX:包含多个提供支付的系统(i聘+b端+校园+评测系统(内网+公网)),支付平台会配置各系统交互的xml信息(主要配置:系统的标识id,名称,订单号,md5校验码),
    当系统请求平台支付接口时,根据系统id,读取xml配置,并获取信息,根据订单号查询对应的系统的订单信息,获取订单金额等信息;(从订单中提取key,根据md5加密规则对比md5校验);
    3.校验成功跳转,系统内支付页面,这时,还是要重新走校验和订单信息查询流程(可能会发生篡改)。用户这时会选择支付方式,支付宝、支付宝接口各银行、微信。当用户荀泽支付方式点击
    确定后,在重新走校验+根据订单查询订单信息(已经第三次校验)。根据支付方式读取对应支付xml配置,组装body itle支付成功回调url,(支付宝接口:回调数据格式:json,支付宝包含两个回调,实时回调+轮询回调(支付宝自己的机制,可能一天回调一次,
    如果回调成功,返回回调成功码,通知中断通知))(微信:回调格式为格式xml,实时回调一次,所以需要自己写服务,根据订单号轮询微信公开的订单记录,判断是否支付成功),微信和支付宝都支持回调校验,因为回调
    暴露在公网,可能会被扫到,所以平台接到回调需建立回调校验(请求回调校验接口),根据校验规则判断是否是支付平台回调的。
    4.注意,校验时间戳,将请求时间写入加密cookie,再次操作时,对比时间。
    5.注意,支付平台传递的订单号,一定是公共支付平台定义的订单号,因为那个XX系统提供的订单号都不一致,可能不符合第三方支付平台接口。

  • 相关阅读:
    Python中如何调用Linux命令
    python入门小记
    DNS域名解析的过程
    阿里云Aliyun_server
    ipython及Python初体验
    js 的数值限制可能引起的问题
    页面图片中间有条线----解决
    ie6幽灵文字及解决办法
    解除工商银行15分钟限制
    ie6 无法显示网页 已终止操作
  • 原文地址:https://www.cnblogs.com/guozefeng/p/5272484.html
Copyright © 2011-2022 走看看