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 places de marché
Gestion de fonds
Ressources pour les développeurs
API et SDKAide
Aperçu
À propos des paiements Stripe
Mettre votre intégration à niveau
Analyses des paiements
Paiements en ligne
PrésentationTrouver votre cas d'usageUtiliser Managed Payments
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
Paiements par TPE
Terminal
    Présentation
    Accepter les paiements par TPE
    Disponibilité mondiale
    Conception d'intégration
    Choisir votre lecteur
    Concevoir une intégration
    Démarrage rapide
    Exemples d'applications
    Tests
    Configuration de Terminal
    Configurer votre intégration
    Paiements à plusieurs parties avec Connect
    Se connecter à un lecteur
    Acceptation d'un paiement
    Encaisser des paiements par carte
    Autres moyens de paiement
    Accepter les paiements hors ligne
    Paiement des commande par courrier/par téléphone
    Spécificités régionales
    Lors du règlement
    Collecter des pourboires
    Collecter et enregistrer des informations de paiement pour une utilisation ultérieure
    Autorisations flexibles
    Après le paiement
    Rembourser des transactions
    Fournir des reçus
    Personnalisez Checkout
    Affichage du panier
    Collecter les données saisies à l'écran
    Collecter les données des lectures de la piste magnétique
    Collecter les données des paiements NFC sans contact
    Applications sur des appareils
    Gérer les lecteurs
    Commander, renvoyer ou remplacer des lecteurs
    Enregistrer des lecteurs
    Gérer les emplacements et les zones
    Configurer des lecteurs
    Suivre les lecteurs
    Références
    Documentation de l'API
    Lecteurs mobiles
    Lecteurs intelligents
    Lecteurs Tap to Pay
    Guide de migration du SDK
    Liste de contrôle pour le déploiement
    Fiches produit du lecteur Stripe Terminal
Moyens de paiement
Ajouter des moyens de paiement
Gérer les moyens de paiement
Paiement accéléré avec Link
Scénarios de paiement
Gérer plusieurs devises
Tunnels de paiement personnalisés
Acquisition flexible
Orchestration
Au-delà des paiements
Constituez votre entreprise
Cryptomonnaies
Commerce agentique
Financial Connections
Climate
Comprendre la fraude
Radar pour la protection contre la fraude
Gestion des litiges
Vérifier l'identité
États-Unis
Français (France)
AccueilPaiementsTerminal

Utiliser Terminal avec Connect

Intégrez Stripe Terminal à votre plateforme Connect.

Stripe Terminal est compatible avec Connect, ce qui permet à votre plateforme et à vos comptes connectés d’accepter les paiements par TPE.

Intégrez Terminal à Connect selon la façon dont votre plateforme traite les paiements pour vos comptes connectés.

  • Si vous utilisez les paiements directs, vous envoyez des requêtes à l’API Terminal pour configurer les lecteurs et accepter des paiements utilisant la clé API du compte connecté. Votre plateforme peut utiliser l’en-tête Stripe Account pour identifier le compte connecté et utiliser sa clé API.
  • Si vous utilisez des paiements indirects, vous envoyez des requêtes API Terminal pour configurer les lecteurs et accepter des paiements utilisant la clé API de votre plateforme et identifiez le compte connecté à l’aide de métadonnées.

Dans les deux cas, utilisez Emplacements pour regrouper les lecteurs de manière appropriée.

Remarque

Vos comptes connectés Terminal doivent disposer de la fonctionnalité card_payments pour effectuer des transactions.

Paiements directs

Lecteurs des comptes connectés

Avec cette intégration, toutes les références de l’API relèvent du compte connecté, et non de la plateforme. Le compte connecté assume les frais de Stripe, les remboursements et les rétrofacturations.

Dans le Dashboard, vous pouvez visualiser vos données Terminal en vous connectant à votre compte connecté.

Créer des emplacements et des lecteurs Server-side

Créez des emplacements et des lecteurs pour les comptes connectés en incluant l’en-tête Stripe Account dans les requêtes API.

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl https://api.stripe.com/v1/terminal/locations \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -H "Stripe-Account:
{{CONNECTED_ACCOUNT_ID}}
"
\ -d display_name=HQ \ -d "address[line1]"="1272 Valencia Street" \ -d "address[city]"="San Francisco" \ -d "address[state]"=CA \ -d "address[country]"=US \ -d "address[postal_code]"=94110
Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl https://api.stripe.com/v1/terminal/readers \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -H "Stripe-Account:
{{CONNECTED_ACCOUNT_ID}}
"
\ -d registration_code={{READER_REGISTRATION_CODE}} \ --data-urlencode label="Alice's reader" \ -d location=
"{{LOCATION_ID}}"

Créer des tokens de connexion Server-side

Remarque

Lorsque vous utilisez l’authentification OAuth Connect, vous devez autoriser le compte connecté séparément pour le mode production et les environnements de test à l’aide de l’ID client de l’application correspondant à chaque mode.

Lorsque vous créez un ConnectionToken pour le SDK Terminal, définissez l’en-tête Stripe-Account sur le compte connecté acceptant les paiements. Vous pouvez également fournir un paramètre d’emplacement afin de contrôler l’accès aux lecteurs. Si vous définissez un emplacement, le ConnectionToken n’est utilisable qu’avec les lecteurs assignés à cet emplacement. Sans emplacement défini, vous pouvez utiliser le ConnectionToken avec tous les lecteurs.

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl https://api.stripe.com/v1/terminal/connection_tokens \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -H "Stripe-Account:
{{CONNECTED_ACCOUNT_ID}}
"
\ -d location=
"{{LOCATION_ID}}"

Créer des PaymentIntents Client-side Server-side

Avec les SDK iOS, Android et React Native, vous pouvez créer un PaymentIntent côté client ou côté serveur. Avec le SDK JavaScript, seule la création côté serveur est prise en charge.

Côté client

Lors de la création d’une PaymentIntent côté client pour les paiements directs, ne spécifiez aucun paramètre supplémentaire pour la PaymentIntent. Créez plutôt un ConnectionToken avec l’en-tête Stripe-Account pour le compte connecté acceptant les paiements. Les SDK clients créent la PaymentIntent sur le même compte connecté auquel le ConnectionToken appartient. Pour en savoir plus, consultez la page Créer des PaymentIntents côté client.

Côté serveur

Le SDK JavaScript exige que le PaymentIntent soit créé sur votre serveur. Pour les autres SDK client, créez le PaymentIntent sur votre serveur si les informations requises pour démarrer un paiement ne sont pas facilement accessibles dans votre application. Pour en savoir plus, veuillez consulter la page Créer des PaymentIntents côté serveur.

Afin de créer un PaymentIntent côté serveur pour les paiements directs, définissez l’en-tête Stripe-Account sur le compte connecté.

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
:"
\ -H "Stripe-Account:
{{CONNECTED_ACCOUNT_ID}}
"
\ -d amount=1000 \ -d currency=usd \ -d "payment_method_types[]"=card_present \ -d capture_method=manual

Ensuite, suivez les étapes pour collecter un paiement afin de traiter l’intention de paiement.

Lecteurs appartenant à la plateforme Version bêta privée

Version bêta privée

Contactez-nous si vous souhaitez utiliser des paiements directs et que la plateforme possède et gère les lecteurs. Cette fonction en version bêta privée est actuellement disponible pour les lecteurs intelligents reposant sur une intégration pilotée par serveur. Cette intégration ne fonctionne qu’avec les comptes connectés que vous contrôlez via une plateforme unique.

Grâce à cette intégration, votre plateforme possède des ressources d’appareil comme Emplacements et Lecteurs, et vos comptes connectés possèdent des ressources de paiement comme PaymentIntents. Cela permet à votre plateforme de gérer un seul lecteur qui traite les paiements pour plusieurs comptes connectés. Les comptes connectés sont responsables du coût des frais de Stripe, des remboursements et des rétrofacturations.

Dans le Dashboard, vous pouvez visualiser directement vos données de gestion des appareils Terminal lorsque vous êtes connecté(e) à votre compte de plateforme. Pour consulter les données de paiement, vous devez vous connecter en tant que compte connecté.

Créer des emplacements et des lecteurs

Le meilleur moyen de regrouper les objets Reader par compte connecté consiste à les assigner à des objets Locations. Sur votre compte de plateforme, créez un objet Location pour un compte connecté en utilisant un nom d’affichage permettant d’identifier le compte.

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl https://api.stripe.com/v1/terminal/locations \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d display_name=HQ \ -d "address[line1]"="1272 Valencia Street" \ -d "address[city]"="San Francisco" \ -d "address[state]"=CA \ -d "address[country]"=US \ -d "address[postal_code]"=94110

Avant de pouvoir connecter votre application à un lecteur intelligent, vous devez enregistrer ce lecteur sur votre compte de plateforme.

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl https://api.stripe.com/v1/terminal/readers \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d registration_code={{READER_REGISTRATION_CODE}} \ --data-urlencode label="Alice's reader" \ -d location=
"{{LOCATION_ID}}"

Créer des PaymentIntents

Lorsque vous créez un PaymentIntent pour des paiements directs, l’en-tête Stripe-Account doit faire référence au compte connecté.

Remarque

La plateforme ne peut traiter les PaymentIntents ultérieurement que si vous les créez pour des comptes connectés que vous contrôlez par l’intermédiaire d’une plateforme unique.

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
:"
\ -H "Stripe-Account:
{{CONNECTED_ACCOUNT_ID}}
"
\ -d amount=1000 \ -d currency=usd \ -d "payment_method_types[]"=card_present \ -d capture_method=manual

Traiter les PaymentIntents

La plateforme peut traiter le PaymentIntent du compte connecté avec le lecteur de la plateforme.

Remarque

Le PaymentIntent ne peut être traité que si vous le créez en utilisant l’en-tête Stripe-Account.

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl https://api.stripe.com/v1/terminal/readers/
{{READER_ID}}
/process_payment_intent
\ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d payment_intent=
"{{PAYMENT_INTENT_ID}}"

Paiements indirects

Lorsque vous utilisez des paiements indirects, votre plateforme possède les références de l’API comme PaymentIntents et Emplacements. Chaque paiement crée automatiquement un transfert vers un compte connecté.

Dans le Dashboard, vous pouvez visualiser vos données Terminal directement en vous connectant à votre compte de plateforme.

Créer des emplacements et des lecteurs Server-side

Le meilleur moyen de regrouper les objets Lecteur par compte connecté consiste à les assigner à des Emplacements. Sur votre compte de plateforme, créez un emplacement pour un compte connecté en utilisant un nom d’affichage permettant d’identifier le compte.

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl https://api.stripe.com/v1/terminal/locations \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d display_name=HQ \ -d "address[line1]"="1272 Valencia Street" \ -d "address[city]"="San Francisco" \ -d "address[state]"=CA \ -d "address[country]"=US \ -d "address[postal_code]"=94110

Avant de pouvoir connecter votre application à un lecteur intelligent, vous devez enregistrer ce lecteur sur votre compte de plateforme.

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl https://api.stripe.com/v1/terminal/readers \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d registration_code={{READER_REGISTRATION_CODE}} \ --data-urlencode label="Alice's reader" \ -d location=
"{{LOCATION_ID}}"

Créer des tokens de connexion Server-side

Lorsque vous créez un ConnectionTokenpour le SDK Terminal, utilisez la clé secrète du compte de votre plateforme. Ne définissez pas l’en-tête Stripe-Account. Fournissez un paramètre location afin de contrôler l’accès aux lecteurs. Si vous définissez un emplacement, le ConnectionToken n’est utilisable qu’avec les lecteurs assignés à cet emplacement. Sans emplacement défini, vous pouvez utiliser le ConnectionToken avec tous les lecteurs.

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl https://api.stripe.com/v1/terminal/connection_tokens \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d location=
"{{LOCATION_ID}}"

Créer des PaymentIntents Client-side Server-side

Pour créer un PaymentIntent avec des paiements indirects, fournissez les paramètres on_behalf_of, transfer_data[destination] et application_fee_amount.

Le paramètre on_behalf_of correspond à l’ID du compte connecté qui devient l’entité de règlement pour le paiement. Pour les transactions Terminal, ce paramètre doit être défini dans les cas où le pays de la plateforme n’est pas le même que celui du compte connecté. Lorsque le paramètre on_behalf_of est défini, Stripe effectue automatiquement les actions suivantes :

  • Règle les frais dans le pays du compte spécifié, minimisant ainsi les refus et évitant les conversions de devises.
  • Utilise la structure des frais appliquée pour le pays du compte connecté.
  • Indique l’adresse et le numéro de téléphone du compte connecté sur le relevé de carte bancaire du client, au lieu de l’adresse et du numéro de téléphone de votre plateforme (uniquement si le compte et la plateforme se trouvent dans des pays différents).

Pour le paramètre transfer_data[destination], précisez l’ID du compte connecté destinataire du transfert.

Enfin, vous pouvez prélever une commission pour votre plateforme en renseignant le paramètre application_fee_amount.

Côté client

Avec les SDK iOS, Android et React Native, vous pouvez créer un PaymentIntent côté client et fournir les paramètres onBehalfOf, transferDataDestination et applicationFeeAmount.

Remarque

La création d’un PaymentIntent côté client est possible avec les autres SDK. Si vous utilisez le SDK JavaScript pour Stripe Terminal, créez un PaymentIntent côté serveur.

Côté serveur

Le SDK JavaScript exige que le PaymentIntent soit créé sur votre serveur. Pour les autres SDK client, créez le PaymentIntent sur votre serveur si les informations requises pour démarrer un paiement ne sont pas facilement accessibles dans votre application. Pour en savoir plus, veuillez consulter la page Créer des PaymentIntents côté serveur.

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[]"=card_present \ -d capture_method=manual \ -d application_fee_amount=200 \ -d on_behalf_of=
"{{CONNECTED_ACCOUNT_ID}}"
\ -d "transfer_data[destination]"=
"{{CONNECTED_ACCOUNT_ID}}"

Ensuite, suivez les étapes pour collecter un paiement afin de traiter l’intention de paiement.

Voir aussi

  • Affichage du panier
  • Reçus
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