Enregistrer les informations de paiement après le paiement
Acceptez un paiement en personne et enregistrez les informations de paiement pour les utiliser plus tard, en l'absence du client.
Vous pouvez utiliser Stripe Terminal pour enregistrer les informations de paiement d’un achat en magasin. Un paiement card_
réussi renvoie un PaymentMethod card
réutilisable dans l’attribut generated_
. Il existe plusieurs cas d’usage :
- Un client d’une salle de sport paie par TPE une première séance et un abonnement. La transaction crée une
generated_
qui sera utilisée pour les futurs renouvellements automatiques de l’abonnement.card - Un client d’une boutique de vêtements fournit son adresse e-mail au moment d’effectuer un achat à la caisse. La transaction crée un dossier client et enregistre la
generated_
associée. Cela permet au client de se connecter ultérieurement au site Web de la boutique et de passer une commande en utilisant la même carte.card
Le paiement initial par TPE bénéficie du transfert de responsabilité, et, sur certains marchés, d’une tarification plus basse accordée aux paiements standard sur Terminal. Toutefois, les paiements ultérieurs effectués à l’aide de la generated_
sont des transactions en ligne sans présentation de carte, sans le transfert de responsabilité.
Remarque
Nous avons modifié le modèle de consentement du client pour cette fonctionnalité afin d’exiger le paramètre allow_
. Vous devez mettre à jour votre intégration pour utiliser allow_
. Cette mise à jour est devenue obligatoire le 31 mars 2025 pour les utilisateurs non-React Native, et le sera pour les utilisateurs React Native le 30 septembre 2025. Pour plus d’informations, consultez l’entrée du journal des modifications.
Créer un objet Customer
Pour configurer une carte bancaire en vue de paiements futurs, vous devez l’associer à un client. Lorsque votre client ouvre un compte chez vous, créez un objet Customer, qui permet de réutiliser des moyens de paiement et d’assurer le suivi de plusieurs paiements.
Lorsque la création aboutit, l’objet Customer est renvoyé. Vous pouvez l’examiner pour identifier l’id
du client et stocker cette valeur dans votre base de données pour la récupérer ultérieurement.
Vous pouvez trouver ces clients sur la page Clients du Dashboard.
Créer un PaymentIntent
Lors de la création d’un PaymentIntent, demandez une generated_
en spécifiant une valeur pour setup_future_usage. Si vous comptez uniquement réutiliser le moyen de paiement lorsque le client est dans votre tunnel de paiement, utilisez on_
. Sinon, utilisez off_
.
Remarque
Les cartes Visa, Mastercard, American Express, Discover, comarquées eftpos, Interac et girocard sont prises en charge en tant que moyens de paiement card_
qui peuvent être enregistrés en tant que type card
.
Collecter et traiter un moyen de paiement
Lorsque le client est prêt à payer et a consenti à ce que les informations de son moyen de paiement soient enregistrées, transmettez allow_redisplay défini sur always
ou limited
dans l’appel collectPaymentMethod
. La valeur indique le degré d’affichage d’un moyen de paiement dans le tunnel de paiement d’un client.
const { paymentIntent, error } = await collectPaymentMethod({ paymentIntentId: paymentIntentId, allow_redisplay: "always", }); if (error) { // Placeholder for handling exception return; } // Placeholder for confirming paymentIntent
Accéder à la generated_card
Un paiement réussi avec un moyen de paiement qui prend en charge une utilisation ultérieure renvoie un PaymentIntent à l’état requires_
ou succeeded
. Vous pouvez récupérer le moyen de paiement generated_card en développant la propriété latest_charge du PaymentIntent et en affichant payment_method_details.card_present. Si vous avez transmis l’ID du client dans l’appel de création du PaymentIntent, le PaymentMethod réutilisable est automatiquement associé à l’objet Customer. Sinon, vous pouvez l’associer manuellement dans un appel distinct.
Vérifiez toujours que le fichier PaymentIntent.latest_charge contient une valeur generated_
. Certains paiements, tels que les paiements par portefeuille électronique et les paiements par carte Interac, eftpos ou girocard d’une seule marque, peuvent ne pas créer de carte générée. Si c’est le cas, et que vous avez besoin d’un moyen de paiement réutilisable, deux options s’offrent à vous :
- Invitez le client à enregistrer un autre moyen de paiement à l’aide du tunnel pour enregistrer un moyen de paiement sans effectuer de paiement.
- Remboursez le paiement par TPE, indiquez que la transaction a échoué et demandez au client d’utiliser un autre moyen de paiement.
Considérations relatives aux wallets mobiles
Les portefeuilles mobiles enregistrés sont réservés aux paiements off_session tels que les abonnements futurs ou les autres paiements que vous initiez au nom de votre client. Lorsque vous enregistrez un moyen de paiement par portefeuille électronique, la generated_
présente allow_
, pour indiquer ses considérations d’utilisation spécifiques.
Lorsque vous tentez de débiter un portefeuille mobile, veillez à transmettre off_
lors de la confirmation PaymentIntent. Si le client est présent dans votre tunnel de paiement, vous devrez plutôt utiliser les intégrations Apple Pay et Google Pay pour demander à nouveau la présentation du moyen de paiement.
Conformité
Lorsque vous enregistrez les informations de paiement d’un client, vous êtes responsable du respect de l’ensemble des lois, réglementations et règles du réseau en vigueur. Par exemple, le Conseil européen de la protection des données a émis des recommandations concernant l’enregistrement des données de paiement. Ces exigences s’appliquent généralement si vous souhaitez enregistrer le moyen de paiement de votre client pour une utilisation ultérieure, par exemple en lui présentant le moyen de paiement dans le tunnel de paiement pour un achat futur ou en le facturant lorsqu’il n’utilise pas activement votre site web ou votre application.
Ajoutez des conditions d’utilisation à votre site Web ou à votre application pour indiquer comment vous prévoyez d’enregistrer des informations relatives aux moyens de paiement et qui permettent aux clients d’y adhérer. Si vous prévoyez de facturer le client lorsqu’il est hors ligne, assurez-vous que vos conditions d’utilisation couvrent également ce qui suit :
- Le consentement du client vous autorisant à déclencher un paiement ou une série de paiements en son nom pour les transactions spécifiées
- Le calendrier et la fréquence prévus des paiements (par exemple, si les paiements concernent des versements échelonnés ou d’abonnement planifiés, ou des recharges non planifiées).
- La façon dont vous déterminez le montant du paiement.
- Votre politique d’annulation, si vous configurez le moyen de paiement dans le cadre d’un abonnement
Veillez à conserver une trace écrite de l’acceptation de ces conditions par votre client.
Lorsque vous enregistrez un moyen de paiement, il ne peut être utilisé que pour l’utilisation spécifique prévue dans vos conditions d’utilisation. Si vous souhaitez facturer un client lorsqu’il est hors ligne et enregistrer son moyen de paiement pour lui présenter comme moyen de paiement enregistré lors d’achats ultérieurs, vous devez recueillir explicitement son consentement. Pour ce faire, vous pouvez notamment proposer une case « Enregistrer mon moyen de paiement pour une utilisation ultérieure ».