#Paiements instantanés avec Stripe

#Stripe, c'est quoi ?

Stripe est un prestataire de services de paiement qui accepte les cartes de crédit, les portefeuilles numériques et de nombreux autres modes de paiement.
À travers ce guide, nous verrons comment intégrer facilement leur SDK javascript avec Access et accepter facilement des paiements à l'unité.

Ce guide nécessite à la fois un environnement côté navigateur et un côté serveur. Pour mieux comprendre tout ce dont nous allons parler, nous vous recommandons de commencer par lire notre guide concernant les formulaires dans Access et comment les intégrer et les valider.

#Configuration

La première étape consiste à ajouter la clé API Stripe au sein de votre intégration d'Access (voir la section Configuration d'Access si vous rencontrez des difficultés).
Vous devrez également avoir créé un formulaire dans votre dashboard avec un champ "Carte de crédit".

#Gérer l'événement onFormSubmit

Comme nous avons pu le voir précédemment dans notre guide d'intégration de formulaires, il n'y a pas de véritable difficulté dans la vérification des champs d'un formulaire Access, donc le champ "Carte de crédit" ne devrait pas être plus difficile à intégrer/vérifier.

#Créer un intent de paiement

Depuis que la SCA & la réglementation PSD-2 sont entrées en vigueur en 2019, Stripe vous oblige désormais à mettre en œuvre une logique d'intention ou intent de paiement, avant de pouvoir facturer un client. Pour éviter d'avoir à créer plusieurs produits et divers types de prix dans notre dashboard, nous avons choisi de n'implémenter que Stripe Elements et de vous laisser implémenter la logique ci-dessus sur votre propre architecture serveur.
La première étape pour réussir un paiement consiste à créer un client et à lui associer un intent de paiement :

#Confirmer le paiement

Une fois que vous avez créé votre client et récupéré votre intent secret, vous pouvez maintenant confirmer le paiement à l'aide du SDK javascript de Stripe, dans votre callback pour l'événement onFormSubmit :

Oui, c'était aussi simple !

N.B.: Les informations à l'intérieur de event.fields.cardField sont les données brutes renvoyées par Stripe Elements lors de la validation du CardElement. Si vous souhaitez confirmer le paiement sur votre serveur plutôt que d'utiliser stripe.confirmCardPayment, vous êtes libre de le faire comme vous le feriez avec une simple intégration Stripe côté serveur.

Et ceci conclut notre merveilleux guide sur l'art et la manière de créer un paiement avec Stripe à l'intérieur de votre paywall en 5 minutes maximum ✨