jeanfprado/cashier

Cashier 提供订阅计费服务。

0.1.6 2023-04-09 01:08 UTC

This package is auto-updated.

Last update: 2024-09-09 04:34:32 UTC


README

Cashier 提供订阅计费服务。它处理了您害怕编写的几乎所有订阅计费代码模板。除了基本的订阅管理外,Cashier 还可以处理计划。

文档

安装

您可以通过 composer 拉取此包

composer require jeanfprado/cashier

该包将自动注册自身。

配置

没有自动发现的 Laravel

如果您不使用自动发现,请将 CashierServiceProvider 添加到 config/app.php 中的 providers 数组

Jeanfprado\Cashier\CashierServiceProvider::class,

如果您想使用外观来记录消息,请将以下内容添加到您的外观配置 app.php

'Cashier' => Jeanfprado\Cashier\Support\Facade\Cashier::class,

使用发布命令将包配置复制到本地配置

php artisan vendor:publish --provider="Jeanfprado\Cashier\CashierServiceProvider"

计划

通过 artisan 创建 config/cashier.php 中的所有计划

php artisan cashier:seed-plans

订阅

在创建订阅之前,您需要准备一个 subscribable 的类

config/cashier.php 中,将 model 键更改为将成为 subscribable 的模型。

现在在这个模型中,您需要实现一个合同。请参阅示例

<?php

namespace App;

use Jeanfprado\Cashier\Subscribable;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Notifications\Notifiable;
use Jeanfprado\Cashier\Contracts\Subscribable as SubscribableContract;


class User extends Model implements SubscribableContract
{
    use Notifiable,
        Subscribable;
    ...
}

现在您可以创建订阅了。

 $user->subscribe($plan);

计费

创建计费非常简单,您只需运行一个命令。

    php artisan cashier:subscription-check

然后如果有计费要生成,当计费支付时,您需要将其标记为已支付。

    $billing->markToPaid();

贡献

感谢您考虑为 Cashier 贡献!

许可证

Cashier 是开源软件,根据 MIT 许可证 许可。