Laravel收银员不设置审判和结束日期

时间:2016-01-24 08:54:59

标签: stripe-payments laravel-5.2 laravel-cashier

我只是将我的项目更新为Laravel 5.2和Cashier 6.0 我已经按照文档添加了新的subscriptions表,但是当我测试它时,Cashier不设置试用结束列。

在我的条纹计划中,我有14天的试用期,在我的条带帐户中,我可以看到,如果我今天添加新的客户,则第一个帐单将在14天后设置。

这是我的订阅代码:

// Create the user
$user = $this->create( $request->all() );

// Find the plan in the DB
$plan = Plan::find( $request->get( 'plan' ) );

// Charge the user ( 14 days trial )
$user->newSubscription( $plan->slug , $plan->stripe_id )->create( $request->get( 'stripeToken' ), 
[
     'email'       => $request->get( 'email' ),
     'description' => ''
] );

$plan->slug是我与我的计划关联的名称,例如annual,而$plan->stripe_id与我在Stripe信息中心设置的名称相同。

如果我注册了新客户,则trials_ends_atands_at都已设置。

我做错了什么?

1 个答案:

答案 0 :(得分:3)

我自己想通了。
新的Casher代码需要手动设置试用期:

trialDays($trialDays)

所以我的代码应该是:

$user->newSubscription( $plan->slug , $plan->stripe_id )->trialDays(14)->create( $request->get( 'stripeToken' ), 
[
     'email'       => $request->get( 'email' ),
     'description' => ''
] );