Hire Laravel developers with AI expertise at $20/hr. Get started in 48 hours.

Laravel Stripe Connect

simonhamp/laravel-stripe-connect image

Laravel Stripe Connect stats

Downloads
18
Stars
38
Open Issues
0
Forks
5

View on GitHub →

Laravel Stripe Connect

This is a maintained fork of rap2hpoutre/laravel-stripe-connect by Raphaël Huchet (@rap2hpoutre).

With Laravel Stripe Connect, you can start your own marketplace platform using Stripe Connect which allows you to make transfers to your recipients directly from your Stripe account to theirs.

Laravel Stripe Connect provides a starting point to help you get your users set up and connected to your Stripe account and start making payouts in no time.

[!TIP] This package assumes that your User model is what will represent recipients of transfers from your platform, however this can be changed.

Sponsorship

Laravel Stripe Connect is completely free to use for personal or commercial use. If it's making your job easier or you just want to make sure it keeps being supported and improved, I'd really appreciate your donations!

Donate now via GitHub Sponsors

Thank you 🙏

Sponsors

Laradir - Connecting the best Laravel Developers with the best Laravel Teams

Installation

Install via Composer:

composer require simonhamp/laravel-stripe-connect

Add your Stripe credentials in .env:

STRIPE_KEY=pk_test_XxxXXxXXX
STRIPE_SECRET=sk_test_XxxXXxXXX

Run migrations:

php artisan migrate

[!IMPORTANT] If you intend to use a table other than your users table to record your recipients' Stripe account details, publish the migration by running php artisan vendor:publish and select the appropriate options. You can then edit the published migration in your app's database/migrations folder.

Usage

Add the Payable trait to any model that you consider to represent your recipient.

use SimonHamp\LaravelStripeConnect\Traits\Payable;
 
class User extends Model
{
use Payable;

Then you can use the convenient methods available to get your recipients to set up or connect their Stripe account to your platform.

Here's an example route that will get your user to go through the Stripe Connect onboarding flow:

Route::get('/connect', function () {
if (! auth()->user()->getStripeAccountId()) {
auth()->user()->createStripeAccount(['type' => 'express']);
}
 
if (! auth()->user()->isStripeAccountActive()) {
return redirect(auth()->user()->getStripeAccountLink());
}
 
return redirect('dashboard');
})->middleware(['auth']);

Once a user's Stripe account is all connected and active, you can start sending them payments:

auth()->user()->pay(10000, 'usd');

[!NOTE] Stripe expects amounts in the smallest denomination for the currency (in this case, cents), so the above is a transfer of US$100 to the logged in user.

Cube

Laravel Newsletter

Join 40k+ other developers and never miss out on new tips, tutorials, and more.


Simonhamp Laravel Stripe Connect Related Articles

Fuse for Laravel: A Circuit Breaker Package for Queue Jobs image

Fuse for Laravel: A Circuit Breaker Package for Queue Jobs

Read article
Laravel Configuration Arrays Made Simpler with Config::collection() image

Laravel Configuration Arrays Made Simpler with Config::collection()

Read article
Integrate Laravel with Stripe Connect Using This Package image

Integrate Laravel with Stripe Connect Using This Package

Read article
Creating Your Own Configuration in Laravel image

Creating Your Own Configuration in Laravel

Read article
LoadForge logo

LoadForge

Scalable load testing for web apps & APIs. Simulate real-world traffic and identify breaking points and performance limits with powerful, scalable load tests designed for Laravel.

LoadForge
SaaSykit: Laravel SaaS Starter Kit logo

SaaSykit: Laravel SaaS Starter Kit

SaaSykit is a Multi-tenant Laravel SaaS Starter Kit that comes with all features required to run a modern SaaS. Payments, Beautiful Checkout, Admin Panel, User dashboard, Auth, Ready Components, Stats, Blog, Docs and more.

SaaSykit: Laravel SaaS Starter Kit
Tinkerwell logo

Tinkerwell

The must-have code runner for Laravel developers. Tinker with AI, autocompletion and instant feedback on local and production environments.

Tinkerwell
DreamzTech logo

DreamzTech

Hire 6-10+ Yrs. experienced skilled Laravel Developers from DreamzTech. We ensure NDA protected, 100% quality delivery. Contact Us & Discuss Your Need.

DreamzTech
PhpStorm logo

PhpStorm

The go-to PHP IDE with extensive out-of-the-box support for Laravel and its ecosystem.

PhpStorm
Celebian logo

Celebian

Celebian is a social media marketing agency specializing in helping their clients go viral on TikTok. Whether you're looking to reach a bigger audience or gain more Tiktok followers, likes, and views, they've got you covered.

Celebian