线上支付的对接流程

内容纲要

支付流程

不同收单机构、支付方式接口都不一样,但是一般流程差别不大,拿微信举例主要接口如下:

统一下单、支付接口、支付结果通知、查询订单、申请退款、查询退款及下载对账单。

具体开发流程各收单机构文档都会写的非常详细,就不再赘述了,主要说几个我认为需要注意的点:

1. 支付成功以后台通知为准

这点我是确实吃亏了的,当时接手产品的时候大部分支付通道都已经完成了对接且线上跑了很久,所以并没有要求技术重新梳理流程。后来某天财务找我来说支付宝短款了,找技术查询才发现技术对支付宝订单的处理是前台回调成功,订单就更改为支付成功。

一般情况下前台通知和后台通知确实状态是一致的,但是当不一致的时候后台通知才是准确的。这次问题造成了我司短款,印象深刻。

不过以后台通知为准,如果通知晚了会稍影响用户体验,建议如下处理:当前台回调之后查询后台交易状态是否已经收到通知并更改为支付成功,若还是支付中,则主动发起订单查询接口,查询订单支付状态。

2. 增加支付掉单处理

设计产品除了要考虑正常流程外,也需增加异常处理,特别是涉及真金白银的支付交易,更为敏感一些。

一般认为网络异常等原因造成的交易状态不明是小概率事件,但就实际处理中确实时有发生,所以建议增加支付掉单处理,即当未收到明确应答时,反查交易状态,为节省系统资源可设置合理的查询次数,且查询时间间隔递增。

偶尔也会有个别交易掉单确实超过了系统自动处理的次数或时效,可以根据对账流程来进行差错处理。

3. 重复支付处理

重复支付大部分时候是因为支付掉单引起的,用户看到自己扣款成功,订单依然还是待付款会产生疑问,一般不会继续付款,但如果是一些限量、限时活动或用户未注意到扣款成功等情况,就有可能产生重复支付。

可以做的处理是,在订单已完成支付的情况下再次收到另一笔支付完成的通知则进行退款,若考虑资金安全认为系统自动退款有风险,可以在第二日对账出现差异后再做处理。

4. 增加退款重试机制

如果结算时间是T+1且金额自动提现结算实体户,隔日退款容易碰到当日头寸或账户余额不足造成的退款失败。

一种避免方式是推迟退款时间,如凌晨退款交易统一推迟至早9点后发起,但依然很难完全避免失败。二是系统增加退款重试,若退款碰到该类报错,则推迟到下午或晚上再次重试退款。

对账流程

正常情况下收单机构提供的对账文件与收到的结算款总是对的上的,系统主要关心对账文件是否与订单匹配。一般至少勾兑流水号、交易时间、交易类型及交易金额,而手续费以收单机构提供的为准。

差异部分,主要有如下几种情况:

1. 对账文件多

用户重复支付,超额支付部分需进行退款;

支付掉单,若订单未取消则更改订单状态为支付完成,若订单已取消则需进行退款。

2. 对账文件少

可能为日切造成的差异,支付记录参与后续勾兑,连续2天未勾兑成功,记录勾兑失败人工参与处理。

3. 金额差异

金额差异很少会出现,如出现差异需要人工参与看是否系统出现了问题。

以上就是我的一点看法,比较浅显,有不足之处欢迎与我交流,

来源:http://www.woshipm.com/pd/3236089.html

支付功能测试

和钱有关的,都要打起十二分精神,支付功能的测试环节是非常非常非常重要(重要的事说三遍)。

测试点如:

1)正确流程是否实现

2)取消订单时的处理是否正确

3)弱网等网络情况下的处理是否正确

4)支付过程中交叉干扰时的处理是否正确。例如支付过程中出现电话、短信等干扰

5)支付安全的保护处理是否完善。例如假单,拦截请求,修改订单等

6)多用户并发时的处理是否完善

7)设备上无支付宝、微信第三方支付软件时的处理是否正确

8)支付宝、微信等第三方支付软件为登录时的处理是否正确

9)订单金额校验的处理是否完善。例如用户购买100元虚拟币时,进行第三方支付时金额被篡改成0.1元,就造成用户用0.1元得到了100元的虚拟币

10)连续点击支付按钮时的处理是否正确 …… 等等测试点都需要产品经理和测试工程师一同进行、多次测试,确保准确无误了才可进行上线。

以上通过对模块的接入时机、支付流程、充值流程、测试环节四个方面的思考和分析,再结合产品的时间、成本、业务等实际情况,设计出符合自身产品的 安全 稳定 易用 的支付模块

 

来自 <http://www.woshipm.com/pd/4067350.html>

其他文章:

202076

15:58

http://www.woshipm.com/pd/3020548.html

http://www.woshipm.com/pd/2947657.html

http://www.woshipm.com/pd/3902517.html

http://www.woshipm.com/pd/2725585.html

http://www.woshipm.com/pd/4067350.html