I have figured out that it has to be done using Cashier method like this:
$user->newSubscription('default', 'premium')->trialDays(30)->create($paymentMethod);
Be part of JetBrains PHPverse 2026 on June 9 – a free online event bringing PHP devs worldwide together.
Hi there,
First time user of Laravel Cashier (version 11 with Laravel v6.x).
I have a subscription plan of $10/month with a 14-day free trial. When I executed the $user->newSubscription('default', 'premium')->create($paymentMethod); method, as shown in the docs here https://laravel.com/docs/6.x/billing#creating-subscriptions, the subscription gets captured properly in Stripe and a new record is created in the Cashier database tables; subscriptions and subscription_items. However in the subscriptions table there is a column called trial_ends_at and ends_at that did not get populated. Are the trial_ends_atand ends_at fields meant to be calculated and populated manually by our app?
Thank you.
I have figured out that it has to be done using Cashier method like this:
$user->newSubscription('default', 'premium')->trialDays(30)->create($paymentMethod);
Please or to participate in this conversation.