arthurnassar / laravel-stripe-connect
v0.4.6
2024-08-01 16:51 UTC
Requires
- illuminate/database: ^10.0|^11.0
- illuminate/support: ^10.0|^11.0
- stripe/stripe-php: ^10.0
Requires (Dev)
- phpunit/phpunit: ^10.0
README
这是由Simon Hamp(@simonhamp)创建的simonhamp/laravel-stripe-connect的分支。
此分支仅供个人使用
提示
此包假定您的User模型将代表您平台上的转账接收者,但这可以进行更改。
安装
通过Composer安装
composer require simonhamp/laravel-stripe-connect
在.env中添加您的Stripe凭据
STRIPE_KEY=pk_test_XxxXXxXXX
STRIPE_SECRET=sk_test_XxxXXxXXX
运行迁移
php artisan migrate
重要
如果您打算使用除了您的users表之外的其他表来记录接收者的Stripe账户详情,请运行php artisan vendor:publish来发布迁移并选择适当的选项。然后您可以在应用的database/migrations文件夹中编辑已发布的迁移。
使用方法
将Payable特性添加到任何您认为代表接收者的模型中。
use SimonHamp\LaravelStripeConnect\Traits\Payable; class User extends Model { use Payable;
然后您可以使用方便的方法让接收者设置或连接他们的Stripe账户到您的平台。
以下是一个示例路由,可以让用户通过Stripe Connect的注册流程
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']);
一旦用户的Stripe账户全部连接并激活,您就可以开始创建转账
auth()->user()->transfer(10000, 'usd');
注意
Stripe期望金额以货币的最小单位(在这种情况下为分)表示,所以上面的转账是向登录用户转账100美元。