支付回调
一句话:支付平台在付款、退款、续费、取消等事件发生后主动通知你服务器的机制。
它是什么
支付回调通常叫Webhook,是支付平台告诉你"这笔钱发生了什么"的后端通知。比如付款成功、订阅续费成功、付款失败、退款、争议、取消订阅。系统收到回调后,才应该更新订单、会员、额度和发货状态。
适合干什么
- 做会员系统
- 做SaaS订阅
- 做数字产品自动发货
- 接入Stripe、PayPal、微信支付、支付宝的人
- 需要支付后自动开通权限的AI工具站
不适合干什么
- 只做线下人工收款
- 完全没有服务器后端
- 不愿意处理签名校验和幂等逻辑
普通人怎么用
- 在支付平台配置Webhook URL
- 后端提供接收POST请求的接口
- 校验回调签名
- 根据事件类型更新订单状态
- 返回成功响应,避免平台不断重试
进阶用户怎么用
- 保存每个回调event_id防重复处理
- 把高风险事件写入日志
- 付款成功和退款取消分别处理权限
- 失败事件触发邮件或站内通知
- 使用队列异步处理复杂业务
常见误区
- 没有校验签名,任何人都能伪造支付成功
- 一个回调重复执行多次,导致重复发货
- 接口返回太慢,支付平台不断重试
- 只处理付款成功,不处理退款和取消
和相似工具的区别
- 支付回调 vs 支付成功页:
- 支付回调 vs 普通API请求:
入门步骤
- 配置回调地址
- 接收原始请求体
- 校验签名
- 识别事件类型
- 幂等更新数据库
- 记录日志并返回成功
推荐工具(第三方)
Stripe、PayPal、Next.js、Express、Supabase