Accéder directement au contenu
Créez un compte
ou
connecter-vous
Logo de la documentation Stripe
/
Ask AI
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
    API plus anciennes
      Paiements
        Migrer vers les nouvelles API
        Accepter un paiement par carte bancaire
        Enregistrer une carte
        Bloquer une somme d'argent sur une carte bancaire
        Paiements avec Connect
      Sources
    Phases de publication
Développez avec des grands modèles de langage (LLM)
Utiliser Stripe sans coder
Configurer Stripe
Créer un compte
Produits et tarifs
Dashboard Web
Dashboard mobile
Migrer vers Stripe
Migrer les données client
Migrer des données de paiement
Migrer des abonnements
Gérer le risque de fraude
Comprendre la fraude
Radar pour la protection contre la fraude
Gestion des litiges
Vérifier l'identité
Support sur la réglementation
AccueilDémarrerAbout the APIsOlder APIs

Paiements par carte sur l'API ChargesAncien

Découvrez comment débiter, enregistrer et authentifier des cartes bancaires avec les anciennes API Stripe.

Copier la page

Ancienne API

The content of this section refers to a Legacy feature. Use the Payment Intents API instead.

L’API Charges ne prend pas en charge les fonctionnalités suivantes, dont beaucoup sont nécessaires à la conformité d’une carte bancaire :

  • Marchands en Inde
  • Demandes d’authentification de carte émanant des banques
  • Authentification forte du client

Les API Charges et Tokens sont d’anciennes API utilisées dans de vieilles intégrations Stripe afin d’accepter les paiements par carte de crédit et de débit. Utilisez PaymentIntents pour effectuer de nouvelles intégrations.

L’API Charges limite votre capacité à profiter des fonctionnalités de Stripe. Pour bénéficier des fonctionnalités plus récentes, utilisez Stripe Checkout ou migrez vers l’API Payment Intents.

Tunnel de paiement

Dans la plupart des cas, l’API Payment Intents offre plus de flexibilité et d’options d’intégration.

API ChargesAPI Payment Intents
  1. Recueillez les informations de paiement de votre client dans le navigateur avec Elements.
  2. Tokenisez les informations de paiement avec Stripe.js.
  3. Exécutez une requête d’envoi du token à votre serveur.
  4. Utilisez ce token pour créer une demande de paiement sur votre serveur pour le montant et dans la devise désirés.
  5. Si le paiement réussit, traitez la commande de votre client.
  1. Créez un PaymentIntent du montant et de la devise désirés sur votre serveur.
  2. Envoyez la clé secrète du client du PaymentIntent côté client.
  3. Recueillez les informations de paiement de votre client dans le navigateur avec Elements.
  4. Utilisez Stripe.js ou les SDK mobiles pour la gestion de l’authentification 3D Secure, puis effectuez le paiement côté client.
  5. Si le paiement réussit, utilisez des webhooks pour traiter la commande de votre client.

Remboursements

To refund a payment through the API, create a Refund and provide the ID of the charge to be refunded.

Command Line
cURL
curl https://api.stripe.com/v1/refunds \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d charge={{CHARGE_ID}}

Pour effectuer un remboursement partiel, saisissez un paramètre amount, qui devra être un nombre entier exprimé en centime (ou dans la plus petite unité de la devise du paiement).

Command Line
cURL
curl https://api.stripe.com/v1/refunds \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d charge={{CHARGE_ID}} \ -d amount=1000

Apple Pay

Lorsque votre client approuve un paiement, votre application implémente les méthodes PKPaymentAuthorizationViewControllerDelegate pour recevoir une instance de PKPayment contenant les informations de carte cryptées de votre client.

  1. Utilisez la méthode SDK createTokenWithPayment pour transformer le PKPayment en Token Stripe
  2. Utilisez ensuite ce Token pour créer un paiement.
CheckoutViewController.swift
Swift
extension CheckoutViewController: PKPaymentAuthorizationViewControllerDelegate { func paymentAuthorizationViewController(_ controller: PKPaymentAuthorizationViewController, didAuthorizePayment payment: PKPayment, handler: @escaping (PKPaymentAuthorizationResult) -> Void) { // Convert the PKPayment into a Token STPAPIClient.shared.createToken(withPayment: payment) { token, error in guard let token = token else { // Handle the error return } let tokenID = token.tokenId // Send the token identifier to your server to create a Charge... // If the server responds successfully, set self.paymentSucceeded to YES } } func paymentAuthorizationViewControllerDidFinish(_ controller: PKPaymentAuthorizationViewController) {

Libellé de relevé bancaire dynamique

Par défaut, le libellé de relevé bancaire de votre compte Stripe apparaît sur les relevés de vos clients chaque fois que vous débitez leur carte. Vous pouvez également définir le libellé de manière dynamique pour toute requête de paiement à l’aide de l’argument statement_descriptor sur l’objet Charge.

Command Line
curl
curl https://api.stripe.com/v1/charges \ -u
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:
\ -d "amount"=999 \ -d "currency"="usd" \ -d "description"="Example charge" \ -d "source"="tok_visa" \ -d "statement_descriptor"="Custom descriptor"

Les libellés de relevé bancaire sont limités à 22 caractères, ne peuvent pas contenir les caractères spéciaux <, >, ', " ou *, et ne doivent pas être constitués uniquement de chiffres.

Lorsque vous définissez un libellé de relevé bancaire dynamique sur des paiements par carte bancaire, la partie dynamique du libellé est accolée au libellé indiquant le marchand du règlement (séparés par le signe * puis une espace). Par exemple, un libellé de relevé bancaire d’une entreprise nommée FreeCookies qui inclurait le type de cookie acheté pourra être : FREECOOKIES* SUGAR.

Le signe * et l’espace sont inclus dans la limite de 22 caractères. Par ailleurs, Stripe alloue automatiquement 10 caractères au libellé de relevé bancaire dynamique. Par conséquent, si le libellé de l’entité de règlement dépasse 10 caractères et que le libellé dynamique fait également 10 caractères ou plus, le libellé de l’entité de règlement sera tronqué. Si le libellé dynamique dépasse 10 caractères, alors les deux libellés seront tronqués au niveau du 10ème caractère.

Si vous rencontrez des problèmes dus à la limite de caractères, vous pouvez définir un libellé de relevé bancaire abrégé dans votre Dashboard Stripe afin de raccourcir le libellé de l’entité de règlement. Vous aurez ainsi plus de place pour le libellé dynamique. Le libellé abrégé :

  • Remplace le libellé de relevé bancaire de l’entité de règlement en présence d’un libellé de relevé bancaire dynamique.
  • Doit comporter entre 2 et 10 caractères.

Remarque

Si le libellé de relevé bancaire dépasse 10 caractères, définissez un libellé abrégé dans le Dashboard ou utilisez statement_descriptor_prefix. De cette façon, vous éviterez que votre libellé de relevé bancaire ne soit tronqué de manière imprévisible.

Si vous ne savez pas à quoi ressemblent vos libellés lorsqu’ils sont accolés, vous pouvez le vérifier dans le Dashboard Stripe.

Stockage d’informations sous forme de métadonnées

Avec Payment Intents

Si vous utilisez l’API Payment Intents, vous ne devez récupérer et modifier que les champs metadata et description de l’objet Payment Intent. Si vous utilisez à la fois l’objet Payment Intent et l’objet Charge, les valeurs de ces champs peuvent être incohérentes.

Stripe vous permet d’ajouter des métadonnées à vos requêtes les plus courantes, notamment au traitement des paiements. Les métadonnées ne sont pas visibles pour vos clients et n’influent aucunement sur un éventuel refus de paiement ou un blocage par notre système de prévention des fraudes.

Les métadonnées vous permettent d’associer d’autres informations, pertinentes pour vous, aux données d’activité Stripe. Toutes les métadonnées que vous incluez sont visibles dans le Dashboard (par exemple sur la page d’un paiement donné) ainsi que dans de nombreux rapports et exports. Par exemple, vous pouvez associer l’ID attribué à la commande par votre boutique au paiement effectué en règlement de celle-ci. Pour votre comptable ou votre service financier, le rapprochement des paiements sur Stripe et des commandes enregistrées sur votre système interne s’en trouvera grandement facilité.

Si vous utilisez Radar, il peut être judicieux de transmettre toutes les informations supplémentaires concernant vos clients et leurs commandes en tant que métadonnées. De cette façon, vous pouvez définir des règles Radar basées sur des attributs de métadonnées et disposer de davantage d’informations sur les paiements dans le Dashboard, ce qui peut accélérer votre processus d’examen.

Command Line
curl
curl https://api.stripe.com/v1/charges \ -u
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:
\ -d "amount"=999 \ -d "currency"="usd" \ -d "description"="Example charge" \ -d "source"="tok_visa" \ -d "metadata[order_id]"=6735

Mise en garde

Veillez à ne pas stocker d’informations confidentielles (informations permettant une identification personnelle, données de carte bancaire, etc.) sous forme de métadonnées ou dans le paramètre description du paiement.

Refus de paiement

Si vous souhaitez que votre intégration réponde automatiquement aux échecs de paiement, vous pouvez accéder au paramètre outcome d’un paiement de deux manières différentes.

  • En gérant l’erreur d’API renvoyée lors de l’échec d’un paiement. Pour les paiements refusés par l’émetteur de cartes et les paiements bloqués, l’erreur inclut l’ID du paiement. Vous pouvez vous en servir pour récupérer le paiement.
  • En utilisant les webhooks pour suivre les mises à jour d’état. Par exemple, l’événement charge.failed se déclenche lorsqu’un paiement échoue.
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