测试 Stripe 的 trial_will_end webhook

Posted

技术标签:

【中文标题】测试 Stripe 的 trial_will_end webhook【英文标题】:Testing Stripe's trial_will_end webhook 【发布时间】:2021-10-24 01:02:18 【问题描述】:

我有点吃不消

我想为 Stripe 的 customer.subscription.trial_will_end 事件创建一个 webhook 侦听器,以向客户发送一封电子邮件,让他们知道计费将开始并向他们提供取消信息,但我不知道如何在不等待一天的情况下测试它的工作原理在每次测试之间,即将试用期设置为 4 天,并在剩余 3 天时触发事件。

Stripe 文档give a method for testing trials,但这不适合我的用例,因为使用该方法唯一不起作用的是trial_will_end 事件。 CLI 可以发送 webhook 事件,但同样没有实现 trial_will_end 事件。

如何在测试之间不必等待一整天来测试此功能?

【问题讨论】:

【参考方案1】:

目前没有很好的方法来管理像这样的时间相关事件。您将需要播种一些测试数据来生成此类事件。对于给定的一天测试,您可以使用 CLI resend 函数 (doc) 重新使用最近的 trial_will_end 事件(例如 evt_123):

stripe events resend evt_123 --webhook-endpoint we_321

这将让您重新测试端点以处理事件并多次发送电子邮件,摄取相同的事件。

【讨论】:

Genius - webhook 事件是否会过期,或者我可以无限期地重新发送它们吗? 您可以通过 API 访问最长 30 天的事件,这也是在此处使用它们的限制。

以上是关于测试 Stripe 的 trial_will_end webhook的主要内容,如果未能解决你的问题,请参考以下文章

在 Stripe 上测试订阅续订

Stripe:“您的请求处于测试模式,但使用了非测试卡”

Stripe 测试订阅 Lumen 5.1

使用 Stripe 测试订阅试用期

如何通过 API 清除 Stripe 中的测试数据?

如何使用 ngrok 测试接收 Stripe webhook