Accéder directement au contenu
Créez un compte ou connecter-vous
Logo de la documentation Stripe
/
Demander à l'assistant IA
Créez un compteConnectez-vous
Démarrer
Paiements
Revenus
Plateformes et marketplaces
Gestion de fonds
Ressources pour les développeurs
API et SDKAide
AperçuAccepter un paiementMettre votre intégration à niveau
Paiements en ligne
PrésentationTrouver votre cas d'usage
Utiliser Payment Links
Créer une page de paiement
Créer une intégration personnalisée avec Elements
Développer une intégration dans l'application
Utiliser Managed Payments
Utiliser Checkout Studio
Paiements récurrents
Paiements par TPE
Aperçu de Terminal
Disponibilité
Lecteurs
No-code
Intégration personnalisée
Moyens de paiement
Ajouter des moyens de paiement
Gérer les moyens de paiement
Paiement accéléré avec Link
Opérations de paiement
Analyses
Soldes et délai de règlement
Conformité et sécurité
Devises
Refus de paiement
Litiges
Radar pour la protection contre la fraude
Virements
ReçusRemboursements et annulations
Intégrations avancées
Tunnels de paiement personnalisés
    Présentation
    Paiements pour les clients existants
    Créer un tunnel de paiement en deux étapes
    Encaisser des majorations
    Collecter les informations de paiement avant de créer un Intent
    Finaliser les paiements sur le serveur
    Accepter des commandes par courrier et par téléphone (MOTO)
    Cartes bancaires américaines et canadiennes
    Transférer des informations de carte bancaires vers des endpoints d'API tiers
    Postes de paiement
    Métadonnées du secteur
Acquisition flexible
Paiements hors session
Orchestration multiprestataire
Au-delà des paiements
Constituez votre entreprise
Cryptomonnaies
Commerce agentique
Financial Connections
Climate
Vérifier l'identité
France
Français (France)
  1. Accueil/
  2. Paiements/
  3. Custom payment flows

Paiements pour les clients existants

Découvrez comment débiter un moyen de paiement existant pendant une session.

Une session Checkout permet à vos clients de saisir leurs informations de paiement. S’il s’agit d’un client existant, vous pouvez configurer la session pour que ses informations soient préremplies avec l’une de ses cartes bancaires enregistrées. La session Checkout affiche jusqu’à 50 cartes bancaires enregistrées avec lesquelles un client peut choisir de payer.

Checkout avec une carte enregistrée

Créer une session Checkout
Côté clientCôté serveur

Ajoutez à votre site Web un bouton de paiement qui appelle un endpoint côté serveur afin de créer une session Checkout.

index.html
<html> <head> <title>Checkout</title> </head> <body> <form action="/create-checkout-session" method="POST"> <button type="submit">Checkout</button> </form> </body> </html>

Checkout prend en charge la réutilisation d’objets Account existants configurés par le client avec le paramètre customer_account, ou d’objets Customer avec le paramètre customer. Lors de la réutilisation de clients existants, tous les objets créés par Checkout, tels que les PaymentIntents et les Subscriptions, sont associés à l’objet qui représente ce client.

Utiliser l’API Accounts v2 pour représenter les clients

L’API Accounts v2 est généralement disponible pour les utilisateurs de Connect et en aperçu public pour les autres utilisateurs de Stripe. Si vous avez accès à l’aperçu Accounts v2, vous devez spécifier une version d’aperçu dans votre code.

Pour accéder à l’aperçu Accounts v2, rendez-vous sur aperçus et fonctionnalités de Account dans votre Dashboard et activez Moyens de paiement réutilisables pour les virements internationaux.

Dans la plupart des cas d’usage, nous vous recommandons de modéliser vos clients en tant qu’objets Account configurés par le client, plutôt que d’utiliser des objets Customer.

Associez la variable de modèle {CHECKOUT_SESSION_ID} à l’URL success_url pour accéder à l’ID de session une fois que votre client termine sa session Checkout. Après avoir créé la session Checkout, redirigez votre client vers l’URL renvoyée dans la réponse.

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl https://api.stripe.com/v1/checkout/sessions \ -u "
sk_test_VePHdqKTYQjKNInc7u56JBrQ
:"
\ -d mode=payment \ -d "line_items[0][price]=
{{PRICE_ID}}
" \ -d "line_items[0][quantity]=1" \ -d "customer_account=
{{CUSTOMER_ACCOUNT_ID}}
" \ --data-urlencode "success_url=https://example.com/success?session_id={CHECKOUT_SESSION_ID}"

FacultatifAfficher les moyens de paiement enregistrés supplémentaires
Côté serveur

Préremplir les champs sur la page de paiement

Si toutes les conditions suivantes sont remplies, Checkout remplit les champs e-mail, nom, carte bancaire et adresse de facturation de la page de paiement en utilisant les données de la carte bancaire enregistrée par le client :

  • Checkout est en mode payment ou subscription. Le mode setup ne prend pas en charge le remplissage automatique des champs.
  • Le client dispose d’une carte enregistrée. Checkout prend uniquement en charge le préremplissage des moyens de paiement par carte.
  • La carte enregistrée a allow_redisplay défini sur always ou vous avez ajusté le paramètre d’affichage par défaut.
  • Le moyen de paiement comprend l’attribut billing_details requis par la valeur billing_address_collection de la session Checkout :
    • auto requiert des valeurs pour email, name et address[country]. Les adresses de facturation aux États-Unis, au Canada et au Royaume-Uni nécessitent également l’attribut address[postal_code].
    • required requiert des valeurs pour email, name et tous les champs address.

Si votre client a enregistré plusieurs cartes bancaires, Checkout préremplit les informations de la carte bancaire correspondant à l’ordre de priorité suivant :

  • En mode payment, Stripe préremplit les champs en utilisant la dernière carte bancaire enregistrée du client.
  • En mode subscription, Stripe préremplit le moyen de paiement par défaut du client s’il s’agit d’une carte bancaire. Sinon, la carte bancaire enregistrée la plus récente est préremplie.

Lorsque Checkout collecte une adresse de livraison, les champs de cette dernière sont préremplis si l’adresse de livraison du client figure dans l’un des pays pris en charge par la Checkout Session.

Pour permettre à vos clients de supprimer les cartes bancaires enregistrées pendant une session Checkout, définissez save_payment_method_options[payment_method_remove] sur enabmed.

Expiration du préremplissage

Le moyen de paiement prérempli s’affiche pendant 30 minutes après la création de la session Checkout. Après son expiration, le chargement de la même session Checkout ne préremplit plus le moyen de paiement pour des raisons de sécurité.

Gérer les événements post-paiement
Côté serveur

Stripe envoie un événement checkout.session.completed lorsqu’un client effectue un paiement par session Checkout. Utilisez l’outil de webhook Dashboard ou suivez le guide consacré aux webhooks pour recevoir et gérer ces événements. Ceux-ci peuvent vous conduire à :

  • Envoyez un e-mail de confirmation de commande à votre client.
  • Enregistrez la vente dans une base de données.
  • Démarrez un flux de travail d’expédition.

Écoutez les événements plutôt que d’attendre que votre client soit redirigé vers votre site. Déclencher l’exécution uniquement depuis votre page de confirmation des paiements n’est pas fiable.

Pour en savoir plus, consultez notre guide de traitement des commandes avec Checkout.

Cette page vous a-t-elle été utile ?
OuiNon
  • Besoin d'aide ? Contactez le service Support.
  • Discutez par chat sur Discord avec les développeurs de Stripe.
  • Consultez notre log des modifications.
  • Des questions ? Contactez l'équipe commerciale.
  • LLM ? Lire llms.txt.
  • Propulsé par Markdoc