Enregistrer directement les informations sans débiter le client
Utilisez des SetupIntents pour enregistrer des informations de carte sans débiter la carte. L’enregistrement de cartes bancaires avec Stripe Terminal à l’aide de SetupIntents impose de suivre la procédure ci-dessous :
- Créez ou récupérez un objet Customer.
- Créez un objet SetupIntent pour suivre le processus.
- Collectez un moyen de paiement après avoir obtenu le consentement du client.
- Envoyez les informations du moyen de paiement à Stripe.
Disponibilité
Vous pouvez utiliser les SetupIntents pour collecter les données des cartes Visa, Mastercard, American Express, Discover et des cartes eftpos co-marquées. Les cartes Interac, les cartes eftpos et les portefeuilles mobiles (Apple Pay ou Google Pay, par exemple) ne sont pas pris en charge.
Note
L’API SetupIntents sur serveur est compatible avec le BBPOS WisePOS E et le Lecteur Stripe S700.
Créer ou récupérer un objet Customer
Pour débiter une carte bancaire enregistrée auprès de Stripe, elle doit être associée à un objet Customer.
Lorsque vous incluez un objet Customer dans votre SetupIntent avant de confirmer, Stripe associe automatiquement le moyen de paiement par carte bancaire généré à l’objet Customer fourni.
Ajoutez le code suivant sur votre serveur pour créer un nouvel objet Customer
.
Créer un SetupIntent
Note
Nous vous recommandons de fournir un ID client lorsque vous créez un SetupIntent. Ceci permet d’associer le moyen de paiement par carte à l’objet Customer
une fois la configuration opérationnelle. Si vous ne fournissez pas d’ID client, vous devez associer manuellement le moyen de paiement dans un appel distinct.
Un SetupIntent est un objet qui représente votre intention de configurer le moyen de paiement d’un client afin de l’utiliser pour des paiements ultérieurs. Le SetupIntent suit les étapes de ce processus de configuration. Dans le cas de Terminal, cet objet prévoit l’obtention et l’enregistrement du consentement du titulaire de carte.
Vous devez créer le SetupIntent sur votre serveur et inclure card_present
dans le paramètre payment_method_types
.
Le SetupIntent contient une clé secrète du client, qui est une clé unique propre à ce SetupIntent. Vous devez récupérer cette clé secrète du client dans le SetupIntent sur votre serveur et la transmettre côté client.
Collecter un moyen de paiement pour l'enregistrement des cartes
Après avoir créé un SetupIntent, vous devez ensuite collecter un moyen de paiement avec le SDK et obtenir le consentement du client. Si celui-ci fournit le formulaire d’accord ou de consentement requis, définissez la valeur booléenne customer_consent_collected
sur true
.
Note
Obtenez le consentement du client oralement ou avec une case à cocher dans votre application. Vous devez respecter toutes les lois, règles et réglementations en vigueur dans votre région.
Vous devez appeler l’endpoint process_setup_intent, qui se charge de collecter et de confirmer le SetupIntent. Si le client donne son consentement, définissez le paramètre booléen customer_consent_collected
sur true
.
Cette méthode recueille les données chiffrées du moyen de paiement à l’aide du lecteur de carte connecté, et les associe au SetupIntent.
Cancel collection
Programmatic cancellation
Vous pouvez annuler la collecte d’un moyen en appelant cancel_action.
Mise en garde
La collecte du moyen de paiement a lieu en local et n’exige ni autorisation, ni mise à jour de l’objet SetupIntent avant l’étape suivante.
Envoyer les informations du moyen de paiement à Stripe
Votre appel précédent à process_setup_intent se charge de la confirmation, et aucune autre action n’est requise de votre part.
Une fois opérationnelle, la configuration renvoie la valeur succeeded
pour la propriété status du SetupIntent, ainsi qu’un moyen de paiement card
réutilisable generated_card que vous pouvez utiliser pour les paiements en ligne.
Note
Le setup_intent.payment_method est un PaymentMethod de type card_present
représentant la tokenisation de la carte en magasin, et n’est pas débitable en ligne.
Le moyen de paiement generated_card
est automatiquement associé à l’ID client que vous avez fourni lors de la création du SetupIntent. Vous pouvez récupérer le moyen de paiement generated_card
en développant la propriété latest_attempt
du Setupintent.
Vous pouvez également récupérer le moyen de paiement associé en récupérant la liste des moyens de paiement associés au client.
Si vous n’avez pas fourni de client lors de la création du SetupIntent, vous pouvez associer le moyen de paiement generated_card
à un objet Customer dans un appel distinct.
Si la configuration n’aboutit pas, examinez l’erreur renvoyée pour en déterminer la cause. Par exemple, omettre de recueillir le consentement du client et d’en informer Stripe entraîne une erreur.
Compliance
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 ».