Stripe-使用Laravel收银台管理数量众多的免费计划

时间:2019-05-11 14:53:56

标签: stripe-payments laravel-cashier

让我们说我有年度订阅计划,该计划提供10个免费的广告发布积分。

我会创建一个产品,例如

$product = \Stripe\Product::create([
  'name' => 'Advert',
  'type' => 'service',
]);

我会制定一个计划,例如

$plan = \Stripe\Plan::create([
   'currency' => 'usd',
   'interval' => 'year',
   'product' => 'prod_CHxGUqw1dyKsDM',
   'nickname' => 'Free Plan',
   'amount' => 0,
   'usage_type' => 'licensed',
]);

在我的laravel应用中,我将按以下方式订阅用户:

$user = User::find(1);

$user->newSubscription('Free Ad Posting', 'Free Plan')->create($token);

现在,由于这是一项免费计划,因此不会使用任何信用卡详细信息,因此我应将$ token参数传递给我-该参数是否可以为空,即可以忽略?

第二,如何设置数量-上面的方法无法添加数量-我假设创建订阅后必须使用以下方法?

$user->subscription('Free Ad Posting')->noProrate()->updateQuantity(10);

当用户使用每笔信用额时,我将使用以下方法来检查和减少可用数量:

$user->subscription('Free Ad Posting')->decrementQuantity(1);

但是,一旦用户用完了所有信用额度,并且订阅在第二年续订,我将如何更新数量以为用户提供新的信用额度。 这是我需要通过代码管理自己的事情吗,还是条带跟踪和更新数量?

很遗憾,我看不到laravel收银机中的任何选项可以管理每个订阅的多个计划。例如。如果我有一个提供10个标准广告和10个高级添加内容的订阅包,该怎么办?收银员无法将数量添加到不同的计划中?

很抱歉,以上问题看起来很愚蠢,但我对条纹不太熟悉,所以请多多包涵。

基本上,如果有人可以指导我实现上述目标的正确工作流程并协助解决所提出的问题,将不胜感激?

0 个答案:

没有答案