项目描述:
通过第三方对接微信和支付宝/pos
前端主动发起支付并发起定时结果查询
遇到问题:
1.第三方支付拿到状态后不回调
2.第三方有订单,但是我们拿不到订单状态–导致两边不统一
(有时候订单支付失败被取消了,我们拿不到取消状态,一直处于查询请求中;
有时候拿到支付失败状态了,但是第三方订单未取消可以继续支付)
3.涉及免密支付(微信和支付宝)和密码支付
4.支付与退款请求的重复发送
5.接口的并发请求
6.组合场景支付(微信+支付宝+POS)
处理方式:
1.我们这边主动查询
2.要求第三方处理订单状态并及时回调,临时方案是业务规避
3.前端限制请求中预约重复请求,后端也做相应处理
4.后台为每一次请求定义唯一的一个识别号
经验教训:
1.产品明确所有的支付状态
2.完善的业务流程图
3.完善的接口文档