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
        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
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 APIsCharges

Accepter un paiement avec Stripe Elements et l'API ChargesAPI Charges

Accepter les paiements en ligne de clients américains et canadiens.

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

Utilisez notre composant d’interface de carte préconfiguré pour créer un formulaire de paiement qui vous permet de collecter les informations de carte d’un client en toute sécurité sans manipuler de données sensibles. Les informations de la carte sont ensuite converties en un token représentatif que vous pouvez envoyer sans risque à vos serveurs. Votre serveur peut ensuite utiliser ce token pour créer un paiement.

Remarque

Les étapes de ce guide sont entièrement mises en œuvre sur GitHub. Clonez le référentiel et suivez les instructions pour exécuter l’application de démonstration.

Configurer Stripe
Côté client
Côté serveur

Côté serveur

Pour cette intégration, votre serveur doit être doté d’endpoints qui communiquent avec l’API de Stripe. Utilisez nos bibliothèques officielles pour accéder à l’API de Stripe depuis votre serveur :

Command Line
Ruby
# Available as a gem sudo gem install stripe
Gemfile
Ruby
# If you use bundler, you can add this line to your Gemfile gem 'stripe'

Côté client

Le SDK Stripe Android est disponible en open source et fait l’objet d’une documentation complète.

To install the SDK, add stripe-android to the dependencies block of your app/build.gradle file:

build.gradle.kts
Kotlin
plugins { id("com.android.application") } android { ... } dependencies { // ... // Stripe Android SDK implementation("com.stripe:stripe-android:21.13.0") // Include the financial connections SDK to support US bank account as a payment method implementation("com.stripe:financial-connections:21.13.0") }

Remarque

Pour obtenir de plus amples informations sur la version la plus récente du SDK et ses versions antérieures, consultez la page des versions sur GitHub. Pour savoir quand une nouvelle version est disponible, surveillez les versions du référentiel.

Configurez le SDK avec votre clé publique Stripe de façon à ce qu’il puisse envoyer des requêtes à l’API Stripe, par exemple à la sous-classe Application :

Kotlin
import com.stripe.android.PaymentConfiguration class MyApp : Application() { override fun onCreate() { super.onCreate() PaymentConfiguration.init( applicationContext,
"pk_test_TYooMQauvdEDq54NiTphI7jx"
) } }

Remarque

Use your test keys while you test and develop, and your live mode keys when you publish your app.

Créez votre formulaire de paiement
Côté client

Côté client, collectez les données de carte bancaire voulues de manière sécurisée avec le CardInputWidget, un composant d’interface utilisateur prêt à l’emploi fourni par le SDK, qui collecte le numéro de carte, la date d’expiration, le CVC et le code postal.

CardInputWidget effectue la validation et le formatage à la volée.

Créez une instance du composant de la carte et un bouton Payer en ajoutant ce qui suit à votre page de paiement

content_checkout.xml
Afficher l'exemple dans son intégralité
<?xml version="1.0" encoding="utf-8"?> <androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="match_parent" app:layout_behavior="@string/appbar_scrolling_view_behavior" tools:showIn="@layout/activity_checkout" tools:context=".CheckoutActivity"> <!-- ... --> <com.stripe.android.view.CardInputWidget android:id="@+id/cardInputWidget" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginLeft="20dp" android:layout_marginRight="20dp"/> <Button android:text="Pay" android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/payButton" android:layout_marginTop="20dp" app:layout_constraintTop_toBottomOf="@+id/cardInputWidget" app:layout_constraintStart_toStartOf="@+id/cardInputWidget" app:layout_constraintEnd_toEndOf="@+id/cardInputWidget"/> <!-- ... --> </androidx.constraintlayout.widget.ConstraintLayout>

Exécutez votre application et assurez-vous que votre page de paiement affiche le composant de carte et le bouton de paiement.

Créez un token
Côté client

Quand l’utilisateur appuie sur le bouton de paiement, convertissez les informations de carte bancaire collectées par CardInputWidget en token Stripe. La tokenisation garantit qu’aucune donnée de carte bancaire sensible ne transite par votre serveur, afin que votre intégration reste conforme à la norme PCI.

Le code suivant montre comment utiliser Stripe#createToken(). La méthode prend une instance Card comme premier paramètre. Le second paramètre est l’instance ApiResultCallback<Token> que le client invoque en cas de réussite ou d’échec. Une fois la tokenisation effectuée, envoyez l’ID de token renvoyé à votre serveur.

CheckoutActivityKotlin.kt
Kotlin
Afficher l'exemple dans son intégralité
// Hook up the pay button to the card widget and Stripe instance val payButton: Button = findViewById(R.id.payButton) val weakActivity = WeakReference<Activity>(this@CheckoutActivityKotlin) payButton.setOnClickListener { // Get the card details from the card widget val cardInputWidget = findViewById<CardInputWidget>(R.id.cardInputWidget) cardInputWidget.card?.let { card -> // Create a Stripe token from the card details stripe = Stripe(applicationContext, PaymentConfiguration.getInstance(applicationContext).publishableKey) stripe.createToken(card, object: ApiResultCallback<Token> { override fun onSuccess(result: Token) { val tokenID = result.id // Send the Token identifier to the server... } override fun onError(e: java.lang.Exception) { // Handle error } }) } }

Envoyez l’ID du token à votre serveur à partir du client.

Créez un paiement avec le token
Côté serveur

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"

La réponse à la création d’un paiement sera soit un paiement soit une erreur avec un code d’erreur. Si la réponse est positive, vous pouvez traiter la commande du client et afficher une page indiquant que son paiement a abouti. Sinon, vous pouvez afficher une page contenant un message d’erreur.

Tester votre intégration

Si vous pouvez saisir un numéro de carte de test dans l’élément de carte, envoyez-le au serveur et vérifiez qu’il a créé le paiement. Votre intégration est alors terminée.

Vous avez créé une intégration avec l’API Charges pour commencer à accepter immédiatement des paiements par carte. Cette API ne prend pas en charge la croissance des entreprises ou de la clientèle en dehors des États-Unis et du Canada. Pour des paiements plus sûrs à l’échelle mondiale, découvrez comment accepter un paiement avec l’API Payment Intents.

Voir aussi

  • Accepter Google Pay
  • Enregistrer des cartes avec l’API Charges
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