支付中心避坑指南

一、前言

支付作为大多数应用的核心模块,除了需要具备高可用性以外,安全性也是重中之重。下文主要为大家介绍我在搭建支付中心时积累的一些经验,希望可以给大家提供一些帮助。

二、支付流程

时序图

上图展现了支付流程,需要注意的地方:

  • 当客户端支付成功后,需要主动向支付中心查询,这样支付中心可以尽快的变更订单状态,处理支付成功的后续流程;
  • 对于第三方平台向支付中心发起的通知,支付中心也需要再次主动向第三方查询订单状态,避免通知是伪造的。

三、支付宝支付

对于支付宝h5支付,在第三方平台下单成功后会跳转至支付宝的H5页面,唤醒支付宝支付。
问题就出现在此H5链接通过分享,可以在其他设备上打开,顺利完成支付流程。一些不法分子通过这一漏洞,将生成的待支付订单发给他人,引诱他人支付,诈骗后在通过平台成功套现,完成洗钱流程。
image
为了避免此情况出现,平台需要具备一定的风控能力:

  • 限制登陆ip、下单ip、支付ip一致
  • 支付宝提供了风险联防策略,具体参考文档https://opendocs.alipay.com/pre-open/01ddil?pathHash=34ad8ffe
  • 限制同一个账号,多个不同ip的充值行为。

四、微信支付

1、商户频繁封禁

a、封禁原因

  • 商户投诉率过高;
  • 投诉订单长时间未处理;
  • 投诉类型包含"骗钱"、“色情”、“黄色”、“污秽”、“黄片”、"大尺度"等关键词。

b、封禁现象

商户封禁后的表现主要分为三种:

  • 商户管理员收到微信通知;
  • 平台向微信下单失败,提示商户违规;
  • 用户唤醒微信支付后,微信提示商户风险,无法完成支付;

c、处理措施

  • 接入微信消费者投诉2.0产品,及时处理用户投诉订单;
  • 对于包含某些关键词订单及时退款处理;
  • 添加支付订单成功率监控告警,出现长时间出现只有下单操作,无支付操作的情况人工介入校验;
  • 提前准备备用商户,内部进行充值增加商户流水,降低商户投诉率。

2、每日限额

微信商户对用户每日充值存在限额,针对此情况,需对用户每日充值金额进行分级,不同级别使用不同商户,这样可以有效提高用户每日可充值上限。

五、苹果支付

苹果支付在流程上不同于其它支付平台。
image

注意事项:

  • 苹果支付订单没有提供与内部订单关联的信息,所以依赖客户端上报关联关系;
  • 支付成功后Apple不会对服务器端发送主动的回调通知,所以客户端需要具有缓存和重试机制,保证支付成功的票据成功的上报给了支付中心;
  • 服务端需要对已处理的票据进行记录,防止票据被多个订单重复使用;
  • Apple票据存在伪造情况,所以对于票据信息需要严格的验证,大体包含(包名、应用版本、支付时间间隔、商品id)
  • Apple服务器在境外,所以对于票据的验证很容易超时,支付中心需要具有重试机制防止漏单,除此之外,使用香港服务器做为代理服务器,可明显提高访问速度。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值