# 《小型支付商城系统》第3-5节:对接支付

作者:小傅哥
博客:https://bugstack.cn (opens new window)

沉淀、分享、成长,让自己和他人都能有所收获!😄

# 一、本章诉求

通过引入支付宝支付 sdk,实例化支付对象,完成支付对接。并提供商品交易下单和回调接口。

这里要记住一点,所有不是数据库一次事务提交的操作,都没法保证事务一致性。包括;http接口、rpc接口、mq消息等。这些调用过程,都需要有任务作为补偿处理,保证最终一致性。

他们的失败可能是网络超时,导致在调用过程中发生,也可能是消费时发生进行重试。所以这类接口调用除了有任务保持一致性,还有就是要有唯一幂等字段。确保在重复消费的过程中,也只是有一条记录产生或者发生变更。

# 二、业务流程

如图,本节我们来完成支付宝沙箱对接的流程;

  • 创建完成本地订单后,调用支付宝沙箱创建支付订单。
  • 在这个过程,如果发生 http 超时失败,那么会有二次用户请求时,检查到掉单重新发起创建动作。