如何设计一个省心的订阅 webhook 处理?

任何支付网关的 webhook 事件都是异步发送的,发出有先后,但是我们的服务收到的事件顺序是不确定的。

要想设计出健壮订阅处理,首先忘掉那些事件的顺序,设计一个通用的 subscriptions 表,并且改成主动获取订阅信息,而不是被动处理 webhook 携带的信息。
订阅和续订的权益分发,应该在 paid 事件处理,而不是 created/updated 事件。因为 paid 事件才表明已经收到钱,收钱了再办事。

以上处理方式都应用于 https://nexty.dev/ 的支付功能,模板用户开箱即用;Nexty 还是唯一一个设计了可视化管理定价卡片的 Next.js SaaS 模板,更新定价不用修改代码,能够自动进行 Stripe 产品信息校验,而且支持实时预览,每一个实现都是给支付安全加一道锁。
 
 
Back to Top