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
Utiliser une page de paiement préconfiguré
Créer une intégration personnalisée avec Elements
Développer une intégration dans l'application
Utiliser Managed PaymentsPaiements récurrents
Paiements par TPE
Terminal
Moyens de paiement
Ajouter des moyens de paiement
    Présentation
    Options d'intégration des moyens de paiement
    Gérer les moyens de paiement par défaut dans le Dashboard
    Types de moyens de paiement
    Cartes bancaires
    Payer avec le solde Stripe
    Paiements en stablecoins
    Prélèvements bancaires
    Virements avec redirection bancaire
    Virements bancaires
    Virements (Sources)
    Achetez maintenant, payez plus tard
    Paiements en temps réel
    Coupons
    Portefeuilles
      Alipay
      Amazon Pay
        Accepter un paiement
        Configurer des paiements futurs
      Apple Pay
      Cash App Pay
      Google Pay
      GrabPay
      Link
      MB WAY
      MobilePay
      PayPal
      PayPay
      Revolut Pay
      Satispay
      Secure Remote Commerce
      Vipps
      WeChat Pay
    Activer des moyens de paiement locaux par pays
    Moyens de paiement personnalisés
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
Prévention de la fraude
Radar pour la protection contre la fraude
Virements
ReçusRemboursements et annulations
Intégrations avancées
Tunnels de paiement personnalisés
Acquisition flexible
Orchestration multiprestataire
Au-delà des paiements
Constituez votre entreprise
Cryptomonnaies
Commerce agentique
Financial Connections
Climate
Vérifier l'identité
États-Unis
Français (France)
AccueilPaiementsAdd payment methodsWalletsAmazon Pay

Configurer de futurs paiements Amazon Pay

Découvrez comment enregistrer des informations Amazon Pay pour débiter vos clients ultérieurement.

Vous pouvez utiliser l’API Setup Intents pour recueillir à l’avance les informations du moyen de paiement, en vue d’un paiement dont la date et le montant seront déterminés ultérieurement. Ceci est utile pour :

  • Enregistrer des moyens de paiement dans un portefeuille pour faciliter les futurs achats
  • Encaisser des frais supplémentaires après avoir fourni un service
  • Démarrer une période d’essai gratuit dans le cadre d’un abonnement

Pour recueillir les informations du moyen de paiement et débiter immédiatement le moyen de paiement enregistré, utilisez l’API Payment Intents.

Découvrez comment configurer un abonnement avec Amazon Pay pour créer des paiements récurrents après avoir enregistré un moyen de paiement dans Checkout.

Configurer Stripe
Côté serveur

Dans un premier temps, vous devez créer un compte Stripe. S’inscrire maintenant.

Utilisez nos bibliothèques officielles pour accéder à l’API Stripe depuis votre application :

Command Line
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
# Available as a gem sudo gem install stripe
Gemfile
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
# If you use bundler, you can add this line to your Gemfile gem 'stripe'

Obtenir l'autorisation d'enregistrer un moyen de paiement
Côté serveur

Pour enregistrer le moyen de paiement de votre client en vue de futurs paiements, vous devez obtenir son autorisation. En établissant au préalable un contrat (parfois nommé mandat), vous pouvez enregistrer les informations de paiement de votre client et le débiter lorsqu’il n’utilise pas votre site Web ou votre application de façon active.

Sur votre application ou votre site Web, indiquez la façon dont vous comptez enregistrer les informations du moyen de paiement de votre client, puis invitez le client à accepter ces dispositions. Si vous prévoyez de le débiter alors qu’il est hors ligne, veillez à ce que vos conditions couvrent également les éléments suivants :

  • 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
  • Fréquence prévue des paiements (à savoir, paiement ponctuel ou paiements récurrents) et calendrier de paiements
  • 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.

Créer ou récupérer un objet Customer
Côté serveur

Pour enregistrer un moyen de paiement Amazon Pay en vue de paiements ultérieurs, vous devez l’associer à un objet Customer.

Créez un objet Customer une fois que votre client a créé un compte auprès de votre entreprise. En associant l’ID de l’objet Customer à votre propre représentation interne du client, vous pourrez par la suite récupérer et les informations du moyen de paiement, et les conserver en vue d’une utilisation ultérieure. Si votre client n’a pas créé de compte, vous pouvez toujours créer un objet Customer et l’associer à votre représentation interne de ce compte client plus tard.

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl https://api.stripe.com/v1/customers \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ --data-urlencode description="My First Test Customer (created for API docs)"

Présenter les conditions d'autorisation sur votre formulaire de paiement
Côté client

Enregistrez les identifiants Amazon Pay de votre client pour débiter son compte lors de futurs paiements hors session. Votre formulaire de paiement personnalisé doit présenter un avis d’autorisation écrit avant la confirmation du PaymentIntent ou du SetupIntent.

Il vous suffit d’afficher l’autorisation la première fois que vous enregistrez les identifiants Amazon Pay de votre client.

Nous vous recommandons d’utiliser le texte suivant pour votre formulaire de paiement personnalisé :

En continuant, vous autorisez Rocket Rides à débiter votre compte Amazon Pay pour ce paiement et les paiements futurs, conformément aux conditions de Rocket Rides, jusqu’à la révocation de cette autorisation.

Utilisez l’API Setup Intents pour recueillir à l’avance les informations du moyen de paiement, en vue d’un paiement dont la date et le montant seront déterminés ultérieurement. Ceci est utile pour :

  • Enregistrer les moyens de paiement de vos clients afin que leurs achats ultérieurs ne nécessitent pas d’authentification
  • Démarer une période d’essai gratuite dans le cadre d’un abonnement

Créer un SetupIntent et enregistrer un moyen de paiement
Côté serveur

Un SetupIntent est un objet qui représente votre intention de configurer le moyen de paiement d’un client en vue de futurs paiements. Le SetupIntent suit les étapes de ce processus de configuration. Créez un SetupIntent sur votre serveur avec payment_method_types défini sur amazon_pay, indiquez l’ID du client et configurez usage=off_session ou usage=on_session.

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl https://api.stripe.com/v1/setup_intents \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d "payment_method_types[]"=amazon_pay \ -d "payment_method_data[type]"=amazon_pay \ -d usage=off_session \ -d customer={{CUSTOMER_ID}}

Récupérer la clé secrète du client

Le SetupIntent contient une clé secrète à utiliser côté client pour finaliser le processus de paiement en toute sécurité. Vous pouvez adopter différentes approches pour transmettre cette clé secrète côté client.

Récupérez la clé secrète du client à partir d’un endpoint sur votre serveur, à l’aide de la fonction fetch du navigateur. Cette approche est recommandée si votre côté client est une application d’une seule page, en particulier si elle repose sur un framework front-end moderne tel que React. Créez l’endpoint de serveur qui gère la clé secrète du client :

main.rb
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
get '/secret' do intent = # ... Create or retrieve the SetupIntent {client_secret: intent.client_secret}.to_json end

Récupérez ensuite la clé secrète du client à l’aide JavaScript côté client :

(async () => { const response = await fetch('/secret'); const {client_secret: clientSecret} = await response.json(); // Render the form using the clientSecret })();

Ensuite, enregistrez Amazon Pay côté client en utilisant Stripe.js.

Intégrez le script Stripe.js à votre page de paiement en l’ajoutant entre les balises head de votre fichier HTML.

checkout.html
<head> <title>Checkout</title> <script src="https://js.stripe.com/clover/stripe.js"></script> </head>

Lorsqu’un client clique pour payer avec Amazon Pay, utilisez Stripe.js pour soumettre le paiement à Stripe. Stripe.js est la bibliothèque JavaScript de base pour créer les tunnels de paiement : elle gère automatiquement les opérations complexes telles que la redirection décrite ci-dessous, et facilite l’extension de votre intégration à d’autres moyens de paiement. Incluez le script Stripe.js sur votre page de paiement en l’ajoutant à la section head de votre fichier HTML.

checkout.html
<head> <title>Checkout</title> <script src="https://js.stripe.com/clover/stripe.js"></script> </head>

Créez une instance de Stripe.js avec le code JavaScript suivant sur votre page de paiement.

client.js
// Set your publishable key. Remember to change this to your live publishable key in production! // See your keys here: https://dashboard.stripe.com/apikeys const stripe = Stripe(
'pk_test_TYooMQauvdEDq54NiTphI7jx'
);

Utilisez stripe.confirmAmazonPaySetup pour confirmer le SetupIntent côté client, avec un return_url et un mandate_data. Utilisez le return_url pour rediriger les clients vers une page spécifique une fois le SetupIntent réussi.

client.js
// Redirects away from the client const {error} = await stripe.confirmAmazonPaySetup( '{{SETUP_INTENT_CLIENT_SECRET}}', { return_url: 'https://example.com/setup/complete', mandate_data: { customer_acceptance: { type: 'online', online: { infer_from_client: true } } }, } ); if (error) { // Inform the customer that there was an error. }

FacultatifGérer la redirection Amazon Pay manuellement

Stripe.js vous aide à ajouter d’autres moyens de paiement à votre intégration. Cependant, vous pouvez rediriger vos clients manuellement vers votre serveur.

  1. Créez et confirmez un PaymentIntent de type amazon_pay. En spécifiant payment_method_data, vous créez un PaymentMethod qui est utilisé immédiatement avec le PaymentIntent.

Vous devez également fournir dans le champ return_url l’URL vers laquelle le client est redirigé une fois qu’il a finalisé son paiement. Vous pouvez fournir vos propres paramètres de requête dans cette URL. Ces paramètres seront inclus dans l’URL finale à l’issue du flux de redirection.

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl https://api.stripe.com/v1/payment_intents \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d amount=1000 \ -d currency=usd \ -d "payment_method_types[]"=amazon_pay \ -d "payment_method_data[type]"=amazon_pay \ --data-urlencode return_url="https://example.com/checkout/complete" \ -d confirm=true
  1. Vérifiez que le PaymentIntent a l’état requires_action et que le type de next_action est redirect_to_url.
Response
{ "status": "requires_action", "next_action": { "type": "redirect_to_url", "redirect_to_url": { "url": "https://hooks.stripe.com/...", "return_url": "https://example.com/checkout/complete" } }, "id": "pi_1G1sgdKi6xqXeNtkldRRE6HT", "object": "payment_intent", ... }
  1. Redirigez le client vers l’URL fournie dans la propriété next_action.redirect_to_url.url. Cet exemple de code fourni ici n’a qu’une valeur illustrative : la méthode de redirection peut différer sur votre framework Web.
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
if payment_intent.status == 'requires_action' && payment_intent.next_action.type == 'redirect_to_url' url = payment_intent.next_action.redirect_to_url.url redirect(url) end

Le client est redirigé vers l’URL return_url une fois qu’il a effectué le paiement. Les paramètres de la requête d’URL payment_intent et payment_intent_client_secret sont inclus avec tous vos propres paramètres. Stripe recommande de configurer un endpoint de webhook pour configurer l’état d’un paiement par voie programmatique.

Créer un PaymentIntent à l'aide d'un moyen de paiement enregistré
Côté serveur

Après avoir créé un PaymentMethod, vous pouvez accepter les futurs paiements Amazon Pay en créant et en confirmant un PaymentIntent. Lors de la confirmation d’un PaymentIntent, utilisez le même ID de moyen de paiement que celui de l’objet SetupIntent ou PaymentIntent précédent. La valeur off_session doit également être définie sur true si le client ne se trouve pas dans un flux de paiement pour ce PaymentIntent.

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl https://api.stripe.com/v1/payment_intents \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d "payment_method_types[]"=amazon_pay \ -d payment_method={{PAYMENT_METHOD_ID}} \ -d amount=1000 \ -d currency=usd \ -d customer={{CUSTOMER_ID}} \ -d statement_descriptor=test_statement \ -d capture_method=automatic \ -d confirm=true \ -d off_session=true

FacultatifDissocier le moyen de paiement réutilisable

Pour désactiver un moyen de paiement réutilisable, votre serveur peut appeler l’API detach PaymentMethod. Stripe envoie à la fois un événement mandate.updated et un événement payment_method.detached. Vous pouvez vous abonner à des événements de webhook pour recevoir des notifications.

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