Table des matières
Installer le caissier de Laravel
Configurez votre modèle
Configurez les touches Stripe,
Créez une intention de paiement ou un abonnement
Gire webhooks
Maison cadre php Laravel Comment intégrer les paiements Stripe avec Laravel Cashier?

Comment intégrer les paiements Stripe avec Laravel Cashier?

Oct 07, 2025 am 03:19 AM

Installez le caissier Laravel via le compositeur et exécutez des migrations. 2. Ajouter un trait facturable au modèle d'utilisateur. 3. Définissez les touches Stripe dans .env et config / services.php. 4. Créez des abonnements ou des frais uniques à l'aide d'ID de prix de la bande. 5. Gérer les événements avec des webhooks à / stripe / webhook sécurisés par vérification de signature.

Comment intégrer les paiements Stripe avec Laravel Cashier?

L'intégration des paiements de rayures avec le caissier Laravel simplifie la gestion des abonnements et les paiements ponctuels dans votre application Laravel. Voici comment le configurer correctement.

Installer le caissier de Laravel

Laravel Casting fonctionne comme un emballage autour de l'API de Stripe, ce qui facilite la gestion de la logique de facturation. Commencez par l'installer via Composer:

  • Run Composer Exigez Laravel / Caissier dans la racine de votre projet.
  • Publiez la migration avec PHP Artisan Cashier: Installer .
  • Exécutez PHP Artisan Migrate pour créer les tables de base de données nécessaires pour les abonnements, les factures, etc.

Configurez votre modèle

par défaut, le caissier fonctionne avec le modèle d'utilisateur, mais vous pouvez utiliser n'importe quel modèle qui implémente facturable.

  • Ajoutez le trait facturable à votre modèle d'utilisateur (ou à tout autre modèle facturable):
Utiliser Laravel \ Caissier \ Billable;

L'utilisateur de classe s'étend authentitable
{
    utiliser facturable;
}
  • Assurez-vous que la table de base de données de votre modèle a un champ Stripe_id (généralement ajouté via la migration de la caissière).

Configurez les touches Stripe,

vous aurez besoin de touches API Stripe valides à partir de votre tableau de bord Stripe.

  • Ajoutez vos clés au fichier .env :
Stripe_key = your_stripe_publishable_key
Stripe_secret = your_stripe_secret_key
  • Assurez-vous que ceux-ci sont également définis dans config / services.php :
'Stripe' => [
    'key' => env ('stripe_key'),
    'Secret' => Env ('Stripe_secret'),
],

Créez une intention de paiement ou un abonnement

pour les paiements ponctuels, utilisez des intentions de paiement. Pour les plans récurrents, utilisez des abonnements.

  • Pour créer un abonnement:
$ user = auth () -> user ();
$ user-> NewsubScription ('Default', 'Price_monthly') -> Créer ($ PaymentMethod);
  • Pour facturer un paiement unique:
$ PAYSMetHod = $ request-> entrée ('PAYS_METHOD');
$ user-> createOrGetStrupiSustomer ();
$ user-> Charge (1000, $ PaymentMethod); // Montant en cents

Remplacez PRICE_MONSHIELLEMENT par votre ID de prix à rayures réel.

Gire webhooks

Stripe envoie des webhooks pour des événements tels que les paiements défaillants ou les abonnements réussis.

  • Définissez un itinéraire pour la manipulation de webhook:
Route :: Post ('/ stripe / webhook', '\ laravel \ caissier \ http \ contrôlers \ webhookController @ handlewebhook');
  • Sécurochez-le à l'aide de la vérification de la signature de Stripe (le caissier le gère automatiquement s'il est configuré).
  • Mettez à jour votre CLI ou tableau de bord Stripe pour envoyer des webhooks à https://yoursite.com/stripe/webhook .

Fondamentalement, suivez simplement les étapes - installez, configurez, définissez les clés, codez vos frais et sécurissez les webhooks. C'est simple une fois que vous avez votre compte Stripe prêt.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Stock Market GPT

Stock Market GPT

Recherche d'investissement basée sur l'IA pour des décisions plus intelligentes

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment enregistrer les messages dans un fichier dans Laravel? Comment enregistrer les messages dans un fichier dans Laravel? Sep 21, 2025 am 06:04 AM

LaravelsesMonologTologMessagesViathelogFacade, avec DefaultLogsStoredInstorage / Logs / Laravel.log.ConfigureChannelsInConfig / Logging.PhptoControloutput

Comment authentifier une API à Laravel Comment authentifier une API à Laravel Sep 18, 2025 am 12:26 AM

InstallerLaravelsanctumviacomposerAndPublishitsFiles, theNrunmigrations.2.AddthehasapitokenstraitTotheUserModel.3.Definelogin, Logout, andUserRoutesInapi.php, usingsanctum’sauth: SancTumdleware...protectapiroutesby

Comment rédiger un test de fonctionnalité dans Laravel avec Pest? Comment rédiger un test de fonctionnalité dans Laravel avec Pest? Sep 16, 2025 am 06:12 AM

InstallerPestViacomposerAndInitializeiTinLaravelToSetuptTesting.2.CreAveAvereTUreSTESTSTESTS / FeaturetovateDidingUser Faced Interactions comme HttprequestsSandDatabaseChangeSusingPest's 简洁 Syntax.

Comment créer une recherche en texte intégral dans Laravel? Comment créer une recherche en texte intégral dans Laravel? Sep 16, 2025 am 03:42 AM

ToImplementfull-textSearchInLaravel, FirstAddafull-TextIndexinthemigration Using $ Table-> fullText (['Title', 'Content']); puis utilisez Where

Comment utiliser les contrôleurs de ressources d'itinéraire à Laravel? Comment utiliser les contrôleurs de ressources d'itinéraire à Laravel? Sep 24, 2025 am 05:05 AM

Laravel Resource Controller traite rapidement les opérations CRUD via Resful Routing, utilise la commande Artisan pour générer des contrôleurs et enregistrer des itinéraires de ressources, et peut créer tous les itinéraires standard dans une seule ligne de code, qui prend en charge la restriction des actions, l'ajout de middleware et le nom de la structure du code.

Comment utiliser la relation HasManythrough à Laravel? Comment utiliser la relation HasManythrough à Laravel? Sep 17, 2025 am 06:38 AM

AcountrycanaccessalPostStwroughusersusinghasManythrough.forexample, withcountries, utilisateurs, andpostStableSinkedByforeignkeys, theCountryModeldefinesahasManythroughrelationTopostViauser, permettant de permettre de permettre à la netteté de manière

Comment rediriger un utilisateur dans un contrôleur Laravel? Comment rediriger un utilisateur dans un contrôleur Laravel? Sep 21, 2025 am 05:26 AM

Utilisez la fonction d'assistance Redirect () pour réaliser la redirection dans le contrôleur Laravel, tel que redirect () -> Route ('Home') pour passer à l'itinéraire nommé, Redirection ('/ Dashboard') vers l'URL spécifiée, Redirect () -> Back () revient à la page précédente, et utilisez Interput () pour conserver les données de la forme et avec () pour passer les messages de session. Il est recommandé d'utiliser des itinéraires nommés pour améliorer la maintenabilité.

Comment implémenter l'authentification de l'API avec Laravel Sanctum? Comment implémenter l'authentification de l'API avec Laravel Sanctum? Sep 19, 2025 am 04:08 AM

TOIMPlementAPIAuthentification avec un authentification basée sur les jeunes, l'authentification basée sur la base de YouneedToSetToken sur les aallowsspas, les mobileapps et le premier-partisservicestoseCurelyAccessyourapi.Sanctumprovidealight ApproachbyissUingApitokenShatCan

See all articles