Recherche…


Remarques

Laravel Cashier peut être utilisé pour la facturation par abonnement en fournissant une interface aux services d’abonnement de Braintree et de Stripe. En plus de la gestion de base des abonnements, il peut être utilisé pour gérer des coupons, échanger des abonnements, des quantités, des délais de grâce et la génération de factures PDF.

Configuration de la bande

La configuration initiale

Pour utiliser Stripe pour gérer les paiements, nous devons ajouter ce qui suit au composer.json puis lancer la composer update :

"laravel/cashier": "~6.0"

La ligne suivante doit ensuite être ajoutée à config/app.php , le fournisseur de services:

Laravel\Cashier\CashierServiceProvider

Configuration de la base de données

Pour utiliser la caisse, nous devons configurer les bases de données, si une table d'utilisateurs n'existe pas, nous devons en créer une et créer une table d'abonnements. L'exemple suivant modifie une table d' users existante. Voir Modèles éloquents pour plus d'informations sur les modèles.

Pour utiliser le caissier, créez une nouvelle migration et ajoutez ce qui suit:

// Adjust users table

Schema::table('users', function ($table) {
    $table->string('stripe_id')->nullable();
    $table->string('card_brand')->nullable();
    $table->string('card_last_four')->nullable();
    $table->timestamp('trial_ends_at')->nullable();
});

//Create subscriptions table

Schema::create('subscriptions', function ($table) {
    $table->increments('id');
    $table->integer('user_id');
    $table->string('name');
    $table->string('stripe_id');
    $table->string('stripe_plan');
    $table->integer('quantity');
    $table->timestamp('trial_ends_at')->nullable();
    $table->timestamp('ends_at')->nullable();
    $table->timestamps();
});

Nous devons ensuite exécuter php artisan migrate pour mettre à jour notre base de données.


Configuration du modèle

Nous devons ensuite ajouter le trait facturable au modèle d'utilisateur trouvé dans app/User.php et le modifier comme suit:

use Laravel\Cashier\Billable;

class User extends Authenticatable
{
    use Billable;
}

Clés à rayures

Afin de garantir que nous finissons l'argent sur notre propre compte Stripe, nous devons le config/services.php dans le fichier config/services.php en ajoutant la ligne suivante:

'stripe' => [
    'model'  => App\User::class,
    'secret' => env('STRIPE_SECRET'),
],

Remplacer le STRIPE_SECRET par votre propre clé secrète.


Une fois cette opération effectuée, vous pourrez continuer à configurer les abonnements.



Modified text is an extract of the original Stack Overflow Documentation
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow