Create plan on stripe through laravel

6.4k views Asked by At

I want to create a plan from my application on stripe. The scenario is that users are charged with different prices as recurring payments. So, that is why I want to create plan for each user.

I am using laravel 5 and using "laravel/cashier": "~5.0"

2

There are 2 answers

1
Goddard On BEST ANSWER

laravel/cashier just doesn't have this functionality baked in. You aren't out of luck though as it is easy to just use Stripe's API which should be downloaded as a dependency in your vendor folder. If not you can just download it with composer.

composer require stripe/stripe-php 2.*

You can use it with

use \Stripe\Plan;

Plan::create(array(
  "amount" => 2000,
  "interval" => "month",
  "name" => "Amazing Gold Plan",
  "currency" => "usd",
  "id" => "gold")
);

You can read more here - https://stripe.com/docs/api#create_plan

0
vimuth On

For latest cashier and stripe-php versions few thing need to be changed.

My cashier version is 7.0 ("laravel/cashier": "~7.0") and it automatically installs stripe-php 5. But some parameters has changed from stripe api. So this code will be working,

\Stripe\Stripe::setApiKey("sk_test_your_key");

\Stripe\Plan::create(array(
  "amount" => 5000,
  "interval" => "month",
  "product" => array(
    "name" => "Bronze standard"
  ),
  "currency" => "eur",
  "id" => "bronze-standard"
));

And you can read more in PHP section of stripe api docs... (https://stripe.com/docs/api/php#create_plan)