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
Revenus
Plateformes et places de marché
Gestion de fonds
Ressources pour les développeurs
Aperçu
À propos des paiements Stripe
Mettre votre intégration à niveau
Analyses des paiements
Paiements en ligne
PrésentationTrouver votre cas d'usageManaged Payments
Utiliser Payment Links
Créer une page de paiement
Développer une intégration avancée
Développer une intégration dans l'application
Moyens de paiement
Ajouter des moyens de paiement
Gérer les moyens de paiement
Paiement accéléré avec Link
Interfaces de paiement
Payment Links
Checkout
Elements pour le web
Elements intégrés à l'application
Scénarios de paiement
Gérer plusieurs devises
Tunnels de paiement personnalisés
Acquisition flexible
Orchestration
Paiements par TPE
Terminal
    Présentation
    Accepter les paiements par TPE
    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
    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
    Chiffrement
    Références
    Documentation de l'API
    Lecteurs mobiles
    Lecteurs intelligents
    Guide de migration du SDK
    Liste de contrôle pour le déploiement
    Fiches produit du lecteur Stripe Terminal
Au-delà des paiements
Constituez votre entreprise
Cryptomonnaies
Financial Connections
Climate
AccueilPaiementsTerminal

Configurer votre intégration

Configurez un SDK Stripe Terminal ou une intégration pilotée par serveur pour accepter les paiements par TPE.

Documentation des SDK

Si vous recherchez un document qui décrit plus en détail les méthodes, objets et erreurs disponibles, consultez notre documentation complète sur les SDK.

Pour démarrer avec le SDK iOS, suivez ces quatre étapes :

  1. Installer le SDK dans votre application.
  2. Configurer votre application.
  3. Configurer l’endpoint du token de connexion dans votre application et votre back-end.
  4. Initialiser le SDK dans votre application.

Installer le SDK
Côté client

Le SDK Stripe Terminal iOS est compatible avec les applications qui :

  • Prennent en charge iOS 13 et les versions ultérieures
  • Sont installés avec CocoaPods, Swift Package Manager, ou en intégrant manuellement le framework
  1. Si vous ne l’avez pas encore fait, installez la version la plus récente de CocoaPods.

  2. Si vous n’avez pas de fichier Podfile, exécutez la commande suivante pour en créer un :

    Command Line
    pod init
  3. Ajoutez cette ligne à votre Podfile :

    Podfile
    pod 'StripeTerminal', '~> 4.0'
  4. Exécutez la commande suivante :

    Command Line
    pod install
  5. À partir de maintenant, utilisez le fichier .xcworkspace au lieu de .xcodeproj pour ouvrir votre projet dans Xcode.

Remarque

Pour 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 sera disponible, surveillez les versions du référentiel ou abonnez-vous au flux RSS Github Releases.

Pour en savoir plus sur la migration depuis des versions antérieures du SDK iOS, consultez le guide de migration du SDK Stripe Terminal.

Configurer votre application
Côté client

Pour que votre application puisse fonctionner avec le SDK Stripe Terminal, apportez quelques modifications à votre fichier Info.plist dans Xcode.

  1. Activez les services de localisation avec la paire clé-valeur suivante.

    Confidentialité – Description de l’utilisation de l’emplacement, le cas échéant
    CléNSLocationWhenInUseUsageDescription
    ValeurL’accès à l’emplacement est indispensable pour accepter des paiements.

    Afin de réduire les risques de fraude associés aux paiements et de limiter le nombre de litiges, Stripe a besoin de connaître le lieu où se déroulent les paiements. Si le SDK ne peut déterminer l’emplacement de l’appareil iOS, les paiements sont désactivés jusqu’à ce que l’accès à l’emplacement soit rétabli.

  2. Assurez-vous que votre application fonctionne en arrière-plan et reste connectée aux lecteurs Bluetooth.

    Modes d’arrière-plan requis pour les lecteurs Bluetooth
    CléUIBackgroundModes
    Valeurbluetooth-central (Utilise les accessoires Bluetooth LE)

    La configuration du mode d’arrière-plan bluetooth-central permet au lecteur de rester en mode veille lorsque votre application est exécutée en arrière-plan, ou lorsque l’appareil iOS est verrouillé. Sans cette valeur, la mise en veille échoue. Lorsque votre application est exécutée en arrière-plan, le lecteur est susceptible de s’éteindre automatiquement afin d’économiser de l’énergie.

  3. Autorisez votre application à afficher une boîte de dialogue d’autorisation Bluetooth. L’App Store exige l’intégration de cette option, même si votre application ne prend pas en charge la connexion aux lecteurs Bluetooth.

    Confidentialité – Description de l’utilisation systématique du Bluetooth
    CléNSBluetoothAlwaysUsageDescription
    ValeurCette application utilise le Bluetooth pour se connecter aux lecteurs de cartes bancaires pris en charge.

    iOS 13 propose désormais des autorisations plus spécifiques concernant l’utilisation de périphériques Bluetooth par une application. Les applications associées à Core Bluetooth doivent inclure cette clé dans leur fichier Info.plist afin d’éviter que l’application ne plante lors de son premier lancement.

  4. Passer les contrôles de validation de l’application lorsque vous la soumettez à l’App Store. À partir de la version 3.4.0 du SDK, cette exigence d’autorisation est supprimée.

    Confidentialité – Description de l’utilisation du périphérique Bluetooth
    CléNSBluetoothPeripheralUsageDescription
    ValeurLa connexion aux lecteurs de cartes pris en charge nécessite un accès au Bluetooth.

    Ceci est un exemple ; vous pouvez reformuler la demande d’autorisation de l’utilisateur dans votre application.

Sauvegardez le fichier Info.plist de votre application. Il est désormais correctement configuré et peut être utilisé avec le SDK Stripe Terminal.

Configurer l'endpoint ConnectionToken
Côté serveur
Côté client

Côté serveur

Pour se connecter à un lecteur, votre back-end doit donner au SDK la permission d’utiliser le lecteur avec votre compte Stripe en lui fournissant la clé secrète d’un ConnectionToken. Votre back-end doit créer des tokens de connexion uniquement pour les clients qu’il reconnaît comme fiables.

Command Line
curl
curl https://api.stripe.com/v1/terminal/connection_tokens \ -u
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:
\ -X "POST"

Obtenez la clé secrète à partir du ConnectionToken sur votre serveur et transmettez-la côté client.

Ruby
post '/connection_token' do token = # ... Create or retrieve the ConnectionToken {secret: token.secret}.to_json end

Mise en garde

Le secret du ConnectionToken vous permet de vous connecter à n’importe quel lecteur Stripe Terminal et de traiter les paiements à l’aide de votre compte Stripe. Veillez à authentifier l’endpoint pour créer des tokens de connexion et à le protéger contre la falsification des requêtes intersites (CSRF).

Côté client

Afin de permettre au SDK d’accéder à cet endpoint, déployez le protocole ConnectionTokenProvider dans votre application. Celui-ci définit une fonction unique qui demande un ConnectionToken à votre back-end.

APIClient.swift
Swift
import StripeTerminal // Example API client class for communicating with your backend class APIClient: ConnectionTokenProvider { // For simplicity, this example class is a singleton static let shared = APIClient() // Fetches a ConnectionToken from your backend func fetchConnectionToken(_ completion: @escaping ConnectionTokenCompletionBlock) { let config = URLSessionConfiguration.default let session = URLSession(configuration: config) guard let url = URL(string: "https://{{YOUR_BACKEND_URL}}/connection_token") else { fatalError("Invalid backend URL") } var request = URLRequest(url: url) request.httpMethod = "POST" let task = session.dataTask(with: request) { (data, response, error) in if let data = data { do { // Warning: casting using `as? [String: String]` looks simpler, but isn't safe: let json = try JSONSerialization.jsonObject(with: data, options: []) as? [String: Any] if let secret = json?["secret"] as? String { completion(secret, nil) } else { let error = NSError(domain: "com.stripe-terminal-ios.example", code: 2000, userInfo: [NSLocalizedDescriptionKey: "Missing `secret` in ConnectionToken JSON response"]) completion(nil, error) } } catch { completion(nil, error) } } else { let error = NSError(domain: "com.stripe-terminal-ios.example", code: 1000, userInfo: [NSLocalizedDescriptionKey: "No data in response from ConnectionToken endpoint"]) completion(nil, error) } } task.resume() } }

Cette fonction est appelée dès lors que le SDK doit s’authentifier auprès de Stripe ou du lecteur. Elle est également appelée lorsqu’un nouveau token est nécessaire pour se connecter à un lecteur (par exemple, lorsque votre application s’est déconnectée du lecteur). Si le SDK n’est pas en mesure de récupérer un nouveau jeton de connexion depuis votre backend, la connexion au lecteur échoue associée à une erreur de votre serveur.

Mise en garde

Ne mettez pas en cache et ne codez pas en dur le token de connexion. Le SDK gère le cycle de vie du token.

Épinglage des certificats

Dans la plupart des cas, vous ne devez pas configurer votre application avec l’épinglage de certificats. Si votre application l’exige, consultez la documentation sur l’épinglage des certificats.

Initialiser le SDK
Côté client

La classe Terminal mise à disposition par le SDK Stripe Terminal dispose d’une interface générique permettant de détecter les lecteurs, de se connecter à un lecteur et d’effectuer des opérations sur le lecteur, telles que l’affichage des informations du panier, l’encaissement de paiements et l’enregistrement de cartes bancaires pour une utilisation ultérieure.

Pour commencer, fournissez votre ConnectionTokenProvider utilisé à l’étape 3. Vous ne pouvez appeler setTokenProvider qu’une seule fois dans votre application, et devez le faire avant d’accéder à Terminal.shared. Nous vous recommandons d’appeler setTokenProvider en utilisant la méthode application:didFinishLaunchingWithOptions de votre AppDelegate. Vous pouvez sinon utiliser dispatch_once dans Objective-C, ou un assistant de construction static dans Swift.

AppDelegate.swift
Swift
import UIKit import StripeTerminal @UIApplicationMain class AppDelegate: UIResponder, UIApplicationDelegate { func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey : Any]? = nil) -> Bool { Terminal.setTokenProvider(APIClient.shared) // ... return true } // ... }

Mises à jour du SDK

Stripe publie régulièrement des mises à jour qui peuvent inclure de nouvelles fonctionnalités, des corrections de bugs et des mises à jour de sécurité. Mettez à jour votre SDK dès qu’une nouvelle version est disponible. Les SDK actuellement disponibles sont les suivants :

  • SDK Stripe Terminal Android
  • SDK Stripe Terminal iOS
  • SDK Stripe Terminal JavaScript
  • SDK Stripe Terminal React Native

Prochaines étapes

  • Se connecter à un lecteur
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