Suche…
Bemerkungen
Laravel Cashier kann für die Abonnementabrechnung verwendet werden, indem eine Schnittstelle zu den Abonnementdiensten von Braintree und Stripe bereitgestellt wird. Neben dem grundlegenden Abonnement-Management können Sie damit Gutscheine abwickeln, Abonnements, Mengen austauschen, Widerrufsfristen und PDF-Rechnungserstellung erstellen.
Streifen-Setup
Ersteinrichtung
Um Stripe für die Abwicklung von Zahlungen verwenden zu können, müssen Sie Folgendes zum composer.json
hinzufügen und dann das composer update
ausführen:
"laravel/cashier": "~6.0"
Die folgende Zeile muss dann zu config/app.php
, dem Dienstanbieter, hinzugefügt werden:
Laravel\Cashier\CashierServiceProvider
Datenbank-Setup
Um Kassierer verwenden zu können, müssen wir die Datenbanken konfigurieren. Wenn noch keine Benutzertabelle vorhanden ist, müssen Sie eine erstellen. Außerdem müssen Sie eine Abonnementtabelle erstellen. Im folgenden Beispiel wird eine vorhandene users
geändert. Weitere Informationen zu Modellen finden Sie unter Eloquent Models .
Um den Kassierer zu verwenden, erstellen Sie eine neue Migration und fügen Sie Folgendes hinzu, um die oben genannten Punkte zu erreichen:
// 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();
});
Wir müssen dann php artisan migrate
ausführen, um unsere Datenbank zu aktualisieren.
Modell einrichten
Das abrechnungsfähige Merkmal muss dann dem in app/User.php
gefundenen Benutzermodell app/User.php
und in Folgendes geändert werden:
use Laravel\Cashier\Billable;
class User extends Authenticatable
{
use Billable;
}
Stripe Keys
Damit das Geld auf unserem eigenen Stripe-Konto endet, müssen Sie es in der Datei config/services.php
einrichten, indem Sie die folgende Zeile hinzufügen:
'stripe' => [
'model' => App\User::class,
'secret' => env('STRIPE_SECRET'),
],
Ersetzen des STRIPE_SECRET
durch Ihren eigenen geheimen Stripe-Schlüssel.
Nach Abschluss dieses Vorgangs ist Cashier and Strip so eingerichtet, dass Sie mit der Einrichtung von Abonnements fortfahren können.