Laravel Cashier (Paddle)
Introduction
This documentation is for Cashier Paddle 2.x's integration with Paddle Billing. If you're still using Paddle Classic, you should use Cashier Paddle 1.x.
Laravel Cashier Paddle provides an expressive, fluent interface to Paddle's subscription billing services. It handles almost all of the boilerplate subscription billing code you are dreading. In addition to basic subscription management, Cashier can handle: swapping subscriptions, subscription "quantities", subscription pausing, cancelation grace periods, and more.
Before digging into Cashier Paddle, we recommend you also review Paddle's concept guides and API documentation.
Upgrading Cashier
When upgrading to a new version of Cashier, it's important that you carefully review the upgrade guide.
Installation
First, install the Cashier package for Paddle using the Composer package manager:
composer require laravel/cashier-paddle
Next, you should publish the Cashier migration files using the vendor:publish
Artisan command:
php artisan vendor:publish --tag="cashier-migrations"
Then, you should run your application's database migrations. The Cashier migrations will create a new customers
table. In addition, new subscriptions
and subscription_items
tables will be created to store all of your customer's subscriptions. Lastly, a new transactions
table will be created to store all of the Paddle transactions associated with your customers:
php artisan migrate
To ensure Cashier properly handles all Paddle events, remember to set up Cashier's webhook handling.