条纹:n次付款后过期/取消订阅

时间:2017-09-05 09:23:46

标签: laravel stripe-payments payment-gateway

在我们的应用程序中,我们为用户提供了良好的订阅,订阅可能因计划类型而异。但是,在用户完全付款后,我无法弄清楚如何取消订阅。

是否有任何参数我们可以在创建订阅时告诉条带,告诉它何时取消订阅或告诉它在n次付款后取消它?

所以基本上如果客户购买的产品价格为1000,我们会每月向他收取100美元,但一旦他全额付款就会自动取消订阅。

感谢您的帮助

2 个答案:

答案 0 :(得分:1)

在Stripe中创建订阅时,无法告诉Stripe在N个月后或达到给定金额时停止订阅。

来自documentation

  

默认情况下,订阅会继续,客户将继续   收费,直到它被取消

所以你可以做的是在满足给定条件后取消订阅。

您可以使用 webhooks 在每次结算周期结束时,使用invoice.payment_succeeded事件(文档here)向客户收取通知。< / p>

不知何故,您可以跟踪客户在您的数据库中支付的总金额,以及在您销售的商品“全额付款”之前剩余的金额。

每当您获得webhook时,您都会增加总额,如果达到所需金额,则取消订阅,以便下个月不会向客户收费。

答案 1 :(得分:1)

我在这里回答了这个问题:Stripe cancel subscription at specific date

  

Stripe刚刚将其添加到他们的API中,而我偶然发现了它。他们有一个名为“ cancel_at”的字段,可以将其设置为将来的日期。由于该属性太新,因此他们没有在文档中列出该属性。您可以在以下响应对象中看到该值:

     

https://stripe.com/docs/api/subscriptions/create?lang=php

     

我已经使用.NET进行了测试,可以确认它会将订阅设置为按您提供的值过期。