Accéder directement au contenu
Créez un compte
ou
connecter-vous
Logo de la documentation Stripe
/
Demander à l'assistant IA
Créez un compte
Connectez-vous
Démarrer
Paiements
Automatisation des opérations financières
Plateformes et places de marché
Gestion de fonds
Outils de développement
Démarrer
Paiements
Automatisation des opérations financières
Démarrer
Paiements
Automatisation des opérations financières
Plateformes et places de marché
Gestion de fonds
AperçuDécouvrir tous les produits
Commencer à développer
Commencer le développement
Exemples de projets
À propos des API
    Visite guidée de l'API
    API Payment Intents
    API Setup Intents
    Moyens de paiement
    Produits et tarifs
    API plus anciennes
      Paiements
      Sources
        Migrer vers les nouvelles API
        Sources des cartes bancaires
        Sources et clients
        Prélèvement automatique ACH
        Plateformes Connect
        Bonnes pratiques
        iOS
        Android
    Phases de publication
Build with LLMs
Utiliser Stripe sans coder
Configurer Stripe
Créer un compte
Dashboard Web
Dashboard mobile
Migrer vers Stripe
Gérer le risque de fraude
Comprendre la fraude
Radar pour la protection contre la fraude
Gestion des litiges
Vérifier l'identité
AccueilDémarrerAbout the APIsOlder APIsSources

Passer aux API Payment Intents et Payment Methods

Découvrez comment passer des API Sources et Tokens à l'API Payment Methods.

Copier la page

L’API Payment Methods doit désormais être privilégiée aux API Tokens et Sources pour permettre aux intégrations de collecter et de stocker des informations de paiement. Elle interagit avec l’API Payment Intents afin de créer des paiements pour une vaste palette de moyens de paiement.

Nous prévoyons de désactiver la prise en charge de l’API Sources pour les moyens de paiement locaux. Si vous gérez actuellement des moyens de paiement locaux à l’aide de l’API Sources, vous devez les migrer vers l’API Payment Methods. Nous vous enverrons de plus amples informations par e-mail concernant la fin de la prise en charge des API Sources et Tokens.

Si nous ne prévoyons pas de mettre fin à la prise en charge des moyens de paiement par carte, nous vous recommandons tout de même de passer aux API Payment Methods et Payment Intents. Pour en savoir plus sur la migration des méthodes de paiement par carte, consultez la page Migration vers l’API Payment Intents.

Migrer les moyens de paiement locaux de l’API Sources vers l’API Payment Intents

Pour migrer votre intégration pour les moyens de paiement locaux, mettez à jour votre serveur et votre front-end afin d’utiliser l’API Payment Intents. Voici les trois options d’intégration classiques :

  • Rediriger les clients vers Stripe Checkout pour votre tunnel de paiement.
  • Utilisez le Payment Element de Stripe sur votre propre page de paiement.
  • Créer votre propre formulaire et utilisez le SDK Stripe JS pour effectuer le paiement.

Si vous utilisez Stripe Checkout ou le Payment Element, vous pouvez ajouter et gérer la plupart des moyens de paiement depuis le Dashboard Stripe sans toucher à votre code.

Pour obtenir des informations spécifiques sur l’intégration d’un moyen de paiement local à l’aide de l’API Payment Methods, consultez les instructions relatives à ce moyen de paiement dans la documentation sur les moyens de paiement. Le tableau suivant fournit une comparaison des différents types de paiement.

Intégration ancienneStripe CheckoutPayment ElementVotre propre formulaire

Faible complexité

Complexité moyenne

Complexité élevée

Créer un objet Source sur le front-end ou sur le serveurCréer une session Checkout sur le serveurCréer un PaymentIntent sur le serveurCréer un PaymentIntent sur le serveur
Autorisez un paiement en chargeant un widget ou en redirigeant vers un tiersJe n’en ai pas besoinTransmettre la clé secrète du client au front-end et utiliser le SDK Stripe JS pour afficher un Payment Element afin de mener à bien le paiementTransmettre la clé secrète du client au front-end, utiliser votre propre formulaire pour recueillir les informations auprès de votre client et effectuer le paiement en fonction du moyen de paiement
Confirmer que la source peut être débitée et débiter la sourceJe n’en ai pas besoinJe n’en ai pas besoinJe n’en ai pas besoin
Confirmer que le paiement a abouti de manière asynchrone à l’aide du webhook charge.succeededConfirmer que la session Checkout a abouti avec le webhook payment_intent.succeededConfirmer que le PaymentIntent a abouti avec le webhook payment_intent.succeededConfirmer que le PaymentIntent a abouti avec le webhook payment_intent.succeeded

Mise en garde

Un objet PaymentIntent représente un paiement dans la nouvelle intégration. Il crée un objet Charge lorsque vous confirmez le paiement sur le front-end. Si vous avez précédemment enregistré des références au paiement, vous pouvez continuer à le faire en récupérant l’ID du PaymentIntent une fois que le client a effectué le paiement. Cependant, nous vous recommandons également d’enregistrer l’ID du PaymentIntent.

Vérification de l’état du paiement

Auparavant, votre intégration aurait dû vérifier à la fois l’état des objets Source et Charge après chaque appel à l’API. Ce n’est plus nécessaire désormais ; il suffit de vérifier l’état du PaymentIntent ou de la session Checkout après confirmation sur le front-end.

payment_intent.statusSignificationInstructions spéciales
succeededLe paiement a abouti.Non applicable
requires_payment_methodLe paiement a échoué.Non applicable
requires_actionLe client n’a pas mené à bien l’autorisation de paiement.Si le client ne finalise pas le paiement dans les 48 heures, le PaymentIntent passe à requires_payment_method et vous pouvez retenter la confirmation.

Confirmez toujours l’état du PaymentIntent en le récupérant ou en écoutant les webhooks sur votre serveur. Ne comptez pas uniquement sur le retour de l’utilisateur à la return_url fournie lorsque vous confirmez le PaymentIntent.

Remboursements

Vous pouvez continuer à appeler l’API Refunds avec l’objet Charge créé par le PaymentIntent. L’ID du paiement est accessible dans le paramètre latest_charge.

Vous pouvez également fournir l’ID du PaymentIntent à l’API Refunds à la place de l’objet Charge.

Gestion des erreurs

Auparavant, vous deviez gérer les erreurs sur les Sources. Avec les PaymentIntents, au lieu de vérifier les erreurs sur un objet Source, vous vérifiez les erreurs au niveau du PaymentIntent quand il est créé et après que le client a autorisé le paiement. La plupart des erreurs sur un PaymentIntent sont de type invalid_request_error. Elles sont renvoyées dans une requête non valide.

Lorsque vous migrez votre intégration, gardez à l’esprit que les codes d’erreur liés au PaymentIntent peuvent différer des codes d’erreur correspondants pour les sources.

Webhooks

Si vous écoutiez précédemment des événements sources, vous devrez peut-être mettre à jour votre intégration pour écouter de nouveaux types d’événements. Le tableau suivant contient quelques exemples.

Ancien webhookNouveau webhook sur CheckoutNouveau webhook sur Payment IntentsInstructions spéciales
source.chargeableNon applicableNon applicable
source.failedNon applicableNon applicable
source.canceledNon applicableNon applicable
charge.succeededcheckout.session.completedpayment_intent.succeededLe webhook charge.succeeded est également envoyé, vous n’avez donc pas besoin de mettre à jour votre intégration pour écouter le nouveau webhook.
charge.failedNon applicable : le client peut retenter le paiement au cours de la même session Checkout jusqu’à son expiration, auquel cas vous recevez un événement checkout.session.expired.payment_intent.payment_failedLe webhook charge.failed est également envoyé, vous n’avez donc pas besoin de mettre à jour votre intégration pour écouter le nouveau webhook.
charge.dispute.createdcharge.dispute.createdcharge.dispute.created

Migration vers l’API Payment Methods

La principale différence entre les API Payment Methods et Sources réside dans le fait que l’API Sources décrit l’état de la transaction par l’intermédiaire de la propriété status. Par conséquent, chaque objet Source doit basculer sur un état acceptant les paiements pour pouvoir être utilisé lors d’un paiement. A contrario, un objet PaymentMethod n’a pas d’état et repose sur l’objet PaymentIntent pour représenter l’état du paiement.

Remarque

Le tableau suivant ne constitue pas une liste exhaustive des moyens de paiement. Si vous intégrez d’autres moyens de paiement à l’aide de l’API Sources, migrez-les également vers l’API Payment Methods.

FluxIntégration de Payment Method avec l’API Payment IntentsAPI Tokens ou Sources avec API Charges
Cartes bancairesPaiements par cartePris en charge avec Tokens ; non recommandé avec Sources
Prélèvement automatique ACHPrélèvements automatiques de comptes bancaires aux États-UnisPris en charge avec Tokens ; non pris en charge avec Sources
Virement ACHVirements bancaires en USDObsolète
AlipayPaiements AlipayObsolète
BancontactPaiements BancontactObsolète
EPSPaiements EPSObsolète
giropayPaiements giropayObsolète
iDEALPaiements iDEALObsolète
KlarnaPaiements KlarnaObsolète
MultibancoPaiements MultibancoBêta obsolète
Przelewy24Paiements Przelewy24Obsolète
Virement SEPAVirements bancaires en EURObsolète
Prélèvement SEPAPrélèvements automatiques de l’espace unique de paiements en euros (SEPA)Obsolète
SofortPaiements SofortObsolète
WeChat PayPaiements WeChat PayObsolète

Après avoir choisi l’API à intégrer, utilisez le guide des moyens de paiement pour déterminer les types de moyens de paiement à prendre en charge.

Ce guide présente des descriptions détaillées de chaque moyen de paiement et décrit les différences dans les flux client, ainsi que les régions géographiques dans lesquelles ils sont le plus pertinents. Vous pouvez activer tous les moyens de paiement figurant dans le Dashboard. De manière générale, cette activation est instantanée et ne nécessite pas de contrats supplémentaires.

Compatibilité avec les anciens moyens de paiement réutilisables

Si vous avez précédemment traité l’un des moyens de paiement réutilisables suivants à l’aide de Sources, les sources existantes enregistrées ne sont pas migrées automatiquement :

  • Alipay
  • Prélèvement automatique Bacs
  • Prélèvement SEPA

pour conserver les moyens de paiement enregistrés de vos clients existants, vous devez convertir ces sources en moyens de paiement à l’aide d’un outil de migration de données dans le Dashboard Stripe. Pour connaître la procédure à suivre, consultez la page de support.

Compatibilité avec les anciens objets Card

Si vous avez déjà collecté des informations de paiement auprès de clients avec Stripe à l’aide de cartes ou de l’API Sources, vous pouvez commencer à utiliser l’API Payment Methods immédiatement et sans migrer ces informations de paiement.

Les instruments de paiement compatibles enregistrés dans un objet Customer peuvent être utilisés dans toute API acceptant un objet PaymentMethod. Par exemple, vous pouvez utiliser une carte bancaire enregistrée comme objet PaymentMethod lors de la création d’un PaymentIntent :

Command Line
cURL
curl https://api.stripe.com/v1/payment_intents \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d "payment_method_types[]"=card \ -d amount=1099 \ -d currency=usd \ -d customer=
{{CUSTOMER_ID}}
\ -d payment_method=
{{CARD_ID}}

N’oubliez pas de fournir l’ID de l’objet Customer dans lequel votre instrument de paiement compatible est enregistré lorsque vous associez l’objet à un PaymentIntent.

Vous pouvez récupérer l’ensemble des moyens de paiement enregistrés compatibles par le biais de l’API Payment Methods.

{ "id": "card_1EBXBSDuWL9wT9brGOaALeD2", "object": "card", "address_city": "San Francisco", "address_country": "US", "address_line1": "1234 Fake Street", "address_line1_check": null, "address_line2": null, "address_state": null, "address_zip": null,
{ "id": "card_1EBXBSDuWL9wT9brGOaALeD2", "object": "payment_method", "billing_details": { "address": { "city": "San Francisco", "country": "US", "line1": "1234 Fake Street", "line2": null, "postal_code": null,

Ce mécanisme de compatibilité n’entraîne la création d’aucun nouvel objet : l’API Payment Methods propose une vue différente du même objet sous-jacent. Par exemple, les mises à jour apportées à un instrument de paiement compatible par le biais de l’API Payment Methods sont visibles via l’API Sources et inversement.

Voir aussi

  • Guide des moyens de paiement
  • Paiements Connect
  • Documentation de l’API Payment Methods
Cette page vous a-t-elle été utile ?
OuiNon
Besoin d'aide ? Contactez le service Support.
Rejoignez notre programme d'accès anticipé.
Consultez notre log des modifications.
Des questions ? Contactez l'équipe commerciale.
LLM ? Lire llms.txt.
Propulsé par Markdoc