Webhooks 📡
Webhooks是tcpay用于向您的服务器发送实时状态更新的基于HTTP的推送通知。Webhooks在支付中非常重要,原因如下:
-
防止由于状态更新延迟而导致商家损失业务(例如航班或电影预订等需要即时支付确认的场景)。 💸
-
防止由“失败”变为“成功”的支付造成的对账问题。 📉
-
通过即时发送支付状态,为终端用户提供最佳的支付体验并完成购买流程。 😊
配置Webhooks
- 在您的服务器上创建一个端点 💻
您需要在服务器上设置一个专用的HTTPS或HTTP端点,该端点具有URL作为Webhook监听器,用于接收来自tcpay服务器的POST请求及JSON有效负载形式的推送通知。
- 在tcpay控制台上更新您的Webhook端点 ⚙️
在设置-> Webhooks下的tcpay控制台中更新上述端点。
- 在您的连接器控制台上更新tcpay的Webhook端点 🔌
为了使tcpay可以接收您选择的连接器的更新,您需要在各自的连接器控制台上更新tcpay对应的端点,而不是您自己的Webhook端点。
tcpay Webhook端点格式如下:
处理Webhooks
- 选择Webhook事件: 🗓 在控制台的同一页面上,选择您希望接收通知的事件。目前,tcpay支持以下事件的Webhooks:
- payment_succeeded 支付成功 🎉
- payment_failed 支付失败 🚫
- payment_processing 支付处理中 🔄
- action_required 需要操作 ✋
- refund_succeeded 退款成功 💵
- refund_failed 退款失败 🙅♂️
- dispute_opened 争议打开 😮
- dispute_expired 争议过期 ⏳
- dispute_accepted 争议受理 🆗
- dispute_cancelled 争议取消 🗑️
- dispute_challenged 争议质疑 🤔
- dispute_won 争议赢 🎊
- dispute_lost 争议输 😢
点击这里可查看您的端点需要解析的每个事件的Webhook负载。🔧
-
返回2xx响应: 📤 您的服务器必须在成功接收Webhook时返回成功的2xx响应。
-
重试: 如果您的端点对Webhook的响应为3xx、4xx或5xx,或完全没有响应,tcpay将重试最多3次发送Webhook,之后将事件标记为失败。🔁