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ç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
Web Elements
Elements intégrés à l'application
Scénarios de paiement
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
    Monitor Readers
    Chiffrement
    Références
    Documentation de l'API
      Documentation sur l'API pilotée par serveur
      Documentation de l'API JavaScript
      Documentation de l'API consacrée à iOS
      Documentation de l'API consacrée à Android
      Documentation de l'API consacrée à React Native
    Lecteurs mobiles
    Lecteurs intelligents
    Guide de migration du SDK
    Liste de contrôle pour le déploiement
    Fiches produit du lecteur Stripe Terminal
Autres produits Stripe
Financial Connections
Cryptomonnaies
Climate
AccueilPaiementsTerminalAPI references

Documentation de l'API JavaScript

Utilisez notre documentation de l'API pour naviguer dans le SDK JavaScript Stripe Terminal.

Copier la page

Méthodes d’API

  • StripeTerminal.create()
  • discoverReaders()
  • connectReader()
  • disconnectReader()
  • getConnectionStatus()
  • getPaymentStatus()
  • clearCachedCredentials()
  • collectPaymentMethod()
  • cancelCollectPaymentMethod()
  • processPayment()
  • collectSetupIntentPaymentMethod()
  • cancelCollectSetupIntentPaymentMethod()
  • confirmSetupIntent()
  • readReusableCard()
  • cancelReadReusableCard()
  • setReaderDisplay()
  • clearReaderDisplay()
  • setSimulatorConfiguration()
  • getSimulatorConfiguration()
  • collectRefundPaymentMethod()
  • processRefund()
  • cancelCollectRefundPaymentMethod()
  • collectInputs()
  • cancelCollectInputs()

StripeTerminal.create([options])

Crée une instance de StripeTerminal avec les options données :

OptionDescription
onFetchConnectionTokenUn gestionnaire d’événements qui récupère un token de connexion de votre back-end.
onUnexpectedReaderDisconnectUn gestionnaire d’événements appelé lorsqu’un lecteur se déconnecte de votre application.
onConnectionStatusChange facultatifUn gestionnaire d’événements appelé lorsque le ConnectionStatus du SDK change.
onPaymentStatusChange facultatifUn gestionnaire d’événements appelé lorsque que le PaymentStatus du SDK change.
readerBehavior optionalUn objet qui définit le comportement sur le lecteur tout au long du cycle de vie du SDK. Consultez ci-dessous les options de configuration du readerBehavior.

Configuration du comportement du lecteur

Aujourd’hui, il n’existe qu’une seule option de configuration du comportement :

ComportementDescription

allowCustomerCancel

Une valeur booléenne qui détermine si le client peut annuler collectPaymentMethod de l’interface du lecteur. La valeur par défaut est false.

Remarque : cette propriété n’est pas disponible à grande échelle, et nous n’acceptons pas de nouveaux utilisateurs pour le moment.

discoverReaders([options])

Commence à découvrir les lecteurs avec les options données :

OptionDescription
simulation facultatifUne valeur booléenne indiquant s’il est nécessaire de détecter un lecteur de simulation. Si cette valeur n’est pas renseignée, elle est définie sur false par défaut.

emplacement facultatif

Retourne uniquement les lecteurs assignés à un location donné. Ce paramètre est ignoré lors de la découverte d’un lecteur de simulation.

Pour plus d’informations sur l’utilisation des emplacements pour filtrer des lecteurs détectés, consultez la section Gestion des emplacements.

Retourne une Promise qui résulte en un objet avec les champs suivants :

  • discoveredReaders : une liste d’objets Reader de simulation, si la commande a réussi.
  • error: Une erreur, si la commande a échoué.

Remarque

Avant de pouvoir détecter le Verifone P400 dans votre application, vous devez enregistrer le lecteur sur votre compte.

connectReader(reader, connectOptions)

Tentatives de connexion au lecteur donné avec les options données :

OptionDescription
fail_if_in_use optionalUne valeur booléenne indiquant que la connexion a échoué dans le cas où le lecteur est actuellement connecté au SDK Terminal. Si cette valeur n’est pas renseignée, elle est définie sur false par défaut.

Retourne une Promise qui résulte en un objet avec les champs suivants :

  • reader : L’objet Reader connecté, si la commande a abouti.
  • error: Une erreur, si la commande a échoué.

Remarque

Ne mettez pas en cache l’objet Reader dans votre application. La connexion à un objet Reader obsolète peut échouer si l’adresse IP du lecteur a changé.

disconnectReader()

Se déconnecte du lecteur connecté.

getConnectionStatus()

Retourne l’état de connexion en cours.

ConnectionStatus peut être à l’état connecting, connected ou not_connected.

getPaymentStatus()

Retourne l’état du paiement du lecteur.

PaymentStatus peut être à l’état not_ready, ready, waiting_for_input ou processing.

clearCachedCredentials()

Efface le ConnectionToken en cours, et tout autre identifiant mis en cache.

Utilisez cette méthode pour passer d’un compte à l’autre dans votre application (par exemple, pour passer entre les clés API Stripe en mode production et en mode test sur votre back-end). Pour passer d’un compte à l’autre, effectuez ces étapes :

  1. Si un lecteur est connecté, appelez disconnectReader.
  2. Configurez votre gestionnaire onFetchConnectionToken pour retourner les tokens de connexion pour le nouveau compte.
  3. Appelez clearCachedCredentials.
  4. Reconnectez-vous à un lecteur. Le SDK demande un nouveau token de connexion à votre gestionnaire onFetchConnectionToken.

collectPaymentMethod(request, options)

Commence à collecter un moyen de paiement pour un PaymentIntent. Ce moyen nécessite un paramètre requis, request :

  • request : le champ clientSecret d’un objet PaymentIntent créé sur votre back-end. Découvrez comment créer un PaymentIntent et transmettre sa clé secrète du client.
  • options : un objet contenant des paramètres de paiement supplémentaires.
OptionDescription

config_override optional

Un objet qui vous permet de spécifier des remplacements de configurations par transaction. La valeur par défaut de cet objet est null.

skip_tipping

  • Facultatif, défini par défaut sur false. Si la valeur est définie sur true, le lecteur ignore l’écran des pourboires.

tipping

  • Objet qui vous permet de spécifier des options de pourboire par transaction. Il est décrit ci-après.

update_payment_intent

  • Une valeur booléenne qui, lorsqu’elle est associée à payment_intent_id, donne l’instruction à l’appel de mettre à jour le PaymentIntent et de renvoyer le PaymentMethod associé avec les informations de carte bancaire.

enable_customer_cancellation

  • Ce paramètre est facultatif et adopte par défaut la valeur « false ». Si vous lui attribuez la valeur « true », les lecteurs intelligents sous Android afficheront un bouton d’annulation.

allow_redisplay

  • Requis si l’option setup_future_usage est activée ; dans le cas contraire, la valeur par défaut est unspecified. Valeur d’énumération indiquant si les futurs tunnels de paiement peuvent afficher ce moyen de paiement au client.

moto

  • Facultatif, la valeur par défaut est false. Si la valeur est true, les lecteurs intelligents basés sur Android commencent à collecter les données pour une transaction liée à une commande par courrier ou par téléphone.
{ update_payment_intent: boolean, payment_intent_id: string, enable_customer_cancellation: boolean, skip_tipping: boolean, tipping: object, allow_redisplay: string, moto: boolean, }

L’option suivante est disponible pour l’objet tipping :

OptionDescription

eligible_amount optional

Chiffre qui vous permet d’indiquer le montant de transaction à partir duquel un pourcentage sera calculé en guise de pourboire. Définissez cette valeur sur 0 ou plus.

S’il est égal à 0, le pourboire est ignoré, quelle que soit la valeur de skip_tipping.

S’il est égal au montant du PaymentIntent prévu, le paramètre est ignoré et le pourboire est calculé en fonction du montant spécifié.

{ eligible_amount: number, }

Retourne une Promise qui résulte en un objet avec les champs suivants :

  • paymentIntent : l’objet PaymentIntent mis à jour, si la commande a abouti.
  • error: Une erreur, si la commande a échoué.

Pour obtenir plus d’informations sur l’encaissement de paiements, veuillez consulter notre guide sur l’encaissement des paiements.

cancelCollectPaymentMethod()

Annule une commande collectPaymentMethod en suspens.

Retourne une Promise qui résulte en un objet vide une fois que la commande a été correctement annulée. Si l’annulation échoue, la Promise résulte en un objet avec une erreur.

processPayment(paymentIntent, options)

Traite un paiement après qu’un moyen de paiement a été collecté.

Cette méthode nécessite un paramètre obligatoire, paymentIntent :

  • paymentIntent : un objet PaymentIntent obtenu à partir d’un appel réussi à collectPaymentMethod.
  • options : un objet contenant des paramètres de paiement supplémentaires.
OptionDescription

config_override optional

Un objet qui vous permet de spécifier des remplacements de configurations par transaction. La valeur par défaut de cet objet est null.

return_url

  • URL vers laquelle rediriger votre client une fois qu’il s’est authentifié ou a annulé son paiement sur l’application ou le site du moyen de paiement. Nous n’utilisons ce paramètre que pour les moyens de paiement basés sur la redirection. La valeur par défaut est null.
{ return_url: string, }

Retourne une Promise qui résulte en un objet avec les champs suivants :

  • paymentIntent : l’objet PaymentIntent confirmé, si la commande a abouti.
  • error : une erreur, si la commande a échoué. Pour obtenir plus d’informations, veuillez consulter la section Gestion des échecs de traitement.

collectSetupIntentPaymentMethod(clientSecret, allowRedisplay, config)

Commence à collecter un moyen de paiement pour une réutilisation en ligne en lien avec un SetupIntent.

Le moyen nécessite deux paramètres requis :

  • clientSecret : le champ clientSecret d’un objet SetupIntent créé sur votre back-end.

  • allowRedisplay : valeur d’énumération indiquant si les futurs tunnels de paiement peuvent afficher ce moyen de paiement au client.

  • config : un objet facultatif contenant la configuration de la collection.

OptionDescription

enable_customer_cancellation

Facultatif, défini par défaut sur false.

Si défini sur true, les lecteurs intelligents basés sur Android affichent un bouton d’annulation.

moto

Facultatif, défini par défaut sur false.

Si la valeur est true, les lecteurs intelligents basés sur Android commencent à enregistrer une carte de commande par courrier ou par téléphone.

Retourne une Promise qui résulte en un objet avec les champs suivants :

  • setupIntent : l’objet SetupIntent mis à jour, si la commande a réussi.
  • error: Une erreur, si la commande a échoué.

Pour en savoir plus sur l’enregistrement des moyens de paiement, consultez notre guide Enregistrement des informations de paiement pour les paiements en ligne.

cancelCollectSetupIntentPaymentMethod()

Annule une commande collectSetupIntentPaymentMethod en suspens.

Retourne une Promise qui résulte en un objet vide une fois que la commande a été correctement annulée. Si l’annulation échoue, la Promise résulte en un objet avec une erreur.

confirmSetupIntent(setupIntent)

Confirme un SetupIntent après qu’un moyen de paiement a été collecté.

Cette méthode nécessite un seul paramètre, un objet SetupIntent obtenu à partir d’un appel réussi à collectSetupIntentPaymentMethod.

Retourne une Promise qui résulte en un objet avec les champs suivants :

  • setupIntent : l’objet SetupIntent confirmé, si la commande a réussi.
  • error: Une erreur, si la commande a échoué.

readReusableCard()

Lit une carte bancaire pour une réutilisation en ligne.

Les paiements en ligne initiés depuis Terminal ne bénéficient pas des tarifications plus basses et du transfert de responsabilité donné aux paiements Terminal standard. La plupart des intégrations n’ont pas besoin d’utiliser readReusableCard. Pour encaisser uniquement le paiement par TPE d’un client, utilisez le flux standard.

Retourne une Promise qui résulte en un objet avec les champs suivants :

  • payment_method : l’objet PaymentMethod, si la commande a abouti.
  • error: Une erreur, si la commande a échoué.

Remarque

À l’heure actuelle, il n’est pas possible d’utiliser Stripe Terminal pour enregistrer les cartes sans contact et les portefeuilles mobiles (par exemple Apple Pay ou Google Pay) en vue d’une utilisation ultérieure.

cancelReadReusableCard()

Annule une commande readReusableCard en suspens.

Retourne une Promise qui résulte en un objet vide une fois que la commande a été correctement annulée. Si l’annulation échoue, la Promise résulte en un objet avec une erreur.

setReaderDisplay(displayInfo)

Met à jour l’affichage du lecteur avec les informations du panier.

Cette méthode nécessite un objet DisplayInfo comme entrée.

{ type: 'cart', cart: { line_items: [ { description: string, amount: number, quantity: number, }, ], tax: number, total: number, currency: string, } }

Renvoie une Promise qui résulte en un objet vide si la commande aboutit. Si la commande échoue, la Promise résulte en un objet avec une erreur.

clearReaderDisplay()

Si le lecteur affiche les informations du panier définis sur setReaderDisplay, cette méthode efface l’écran de présentation.

Renvoie une Promise qui résulte en un objet vide si la commande aboutit. Si la commande échoue, la Promise résulte en un objet avec une erreur.

setSimulatorConfiguration(configuration)

Définit l’objet de configuration pour le lecteur de carte de simulation.

Cette méthode prend uniquement effet lorsque l’objet est connecté au lecteur de simulation, sinon elle n’effectue aucune action.

Le lecteur de simulation suivra la configuration spécifiée uniquement jusqu’à ce que processPayment soit terminé. À ce stade, le lecteur de simulation revient à son comportement par défaut.

Notez que cette méthode remplace tout objet de configuration actif actuellement. Pour ajouter des paires de clé-valeur spécifiques, assurez-vous d’utiliser une combinaison de cette méthode et de getSimulatorConfiguration.

Les options de configuration disponibles sont :

ChampValeursDescription
testCardNumberConsultez la liste des Cartes bancaires de test pour simulation.Configure le lecteur de simulation pour utiliser le numéro de carte bancaire comme moyen de paiement présenté par l’utilisateur. Utilisez-le pour tester divers scénarios dans votre intégration, tels que les paiements avec différentes marques de carte bancaire ou les erreurs de traitement comme un paiement refusé.
testPaymentMethodConsultez la liste des Cartes bancaires de test pour simulation.A le même objectif que testCardNumber, mais se repose sur les moyens de paiement de test à la place.
tipAmountN’importe quel montant ou valeur nulle.Configure le lecteur simulé pour simuler un montant de pourboire sélectionné par le client sur le lecteur.
paymentMethodType obsolète
  • card_present (par défaut)
  • interac_present
Déterminez le type de moyen de paiement créé par le lecteur de simulation lorsque collectPaymentMethod est appelé.

getSimulatorConfiguration()

Retourne l’objet de configuration actif actuellement.

Le SDK JavaScript Stripe Terminal peut remplacer cette valeur si nécessaire, y compris (mais sans s’y limiter) la redéfinition de la valeur après que processPayment est terminé, et la suppression des paires de clé-valeur inconnues.

collectRefundPaymentMethod(charge_id, amount, currency, options, config)

Commence à collecter un moyen de paiement pour être remboursé. La méthode nécessite deux paramètres requis :

  • charge_id, l’ID du paiement qui sera remboursé.
  • amount : un nombre qui représente le montant, en centimes, qui sera remboursé du paiement. Ce nombre peut être inférieur ou égal au montant facturé dans le paiement d’origine.
  • currency : code ISO pour la devise composé de trois lettres en minuscules. Doit être une devise prise en charge.
  • options : un objet facultatif contenant des paramètres de remboursement supplémentaires.
OptionDescription

refund_application_fee

Facultatif, défini par défaut sur false. Connect uniquement.

Une valeur booléenne indiquant si la commission de la plateforme doit être remboursée lors du remboursement de ce paiement. Si un remboursement de paiement complet est donné, l’intégralité de la commission de la plateforme sera remboursée. Autrement, la commission de la plateforme sera remboursée à hauteur d’un montant proportionnel au montant du paiement remboursé.

Une commission de la plateforme peut être remboursée uniquement par l’application qui a créé le paiement.

reverse_transfer

Facultatif, défini par défaut sur false. Connect uniquement.

La valeur booléenne indiquant si le transfert doit être remboursé lors du remboursement de ce paiement. Le transfert sera remboursé proportionnellement au montant remboursé (la totalité ou une partie du montant).

Un transfert peut être remboursé uniquement par l’application qui a créé le paiement.

  • config : un objet facultatif contenant la configuration de la collection.
OptionDescription

enable_customer_cancellation

Facultatif, défini par défaut sur false.

Si défini sur true, les lecteurs intelligents basés sur Android affichent un bouton d’annulation.

Retourne une Promise qui résulte en :

  • un objet vide si la collection du moyen de paiement a abouti, ou
  • un objet avec un champ error si une erreur est survenue lors de la collecte du moyen de paiement lié au remboursement.

processRefund()

Traite un remboursement en cours. Ce moyen peut uniquement être appelé après que collectRefundPaymentMethod soit correctement retourné.

Retourne une Promise qui résulte en :

  • un objet refund si le remboursement a réussi, ou
  • un objet avec un champ error s’il y a eu une erreur pendant le traitement du remboursement.

cancelCollectRefundPaymentMethod()

Annule une commande collectRefundPaymentMethod en suspens.

Retourne une Promise qui résulte en un objet vide si l’annulation a abouti. Si l’annulation échoue, la Promise résulte en un objet avec un champ error.

collectInputs(collectInputsParameters)

Remarque

Pour demander l’accès à la version bêta de Collect Inputs, contactez-nous à l’adresse stripe-terminal-betas@stripe.com.

Commencez à afficher des formulaires et à collecter des informations auprès des clients à l’aide de Collect Inputs.

Cette méthode nécessite la saisie d’un objet ICollectInputsParameters.

Renvoie une Promise qui résulte en la collecte des informations si la commande aboutit. Si la commande échoue, la Promise résulte en un objet avec une erreur.

cancelCollectInputs()

Remarque

Pour demander l’accès à la version bêta de Collect Inputs, contactez-nous à l’adresse stripe-terminal-betas@stripe.com.

Annule une commande collectInputs en suspens.

Renvoie une Promise qui résulte en un objet vide si l’annulation aboutit. Si la commande échoue, la Promise résulte en un objet avec une erreur.

Erreurs

Les erreurs retournées par le SDK JavaScript incluent un code d’erreur, ainsi qu’un message pouvant être lu par l’utilisateur.

Pour les méthodes impliquant un PaymentIntent comme processPayment, l’erreur peut également inclure un objet payment_intent.

Codes d’erreur

CodeDescription
no_established_connectionLa commande échoue car aucun lecteur n’est connecté.
no_active_collect_payment_method_attemptcancelCollectPaymentMethod peut uniquement être appelé lorsque collectPaymentMethod est en cours.
no_active_read_reusable_card_attemptcancelCollectReusableCard peut uniquement être appelé quand readReusableCard est en cours.
canceledLa commande a été annulée.
cancelable_already_completedL’annulation a échoué car l’opération est déjà terminée.
cancelable_already_canceledL’annulation a échoué car l’opération a déjà été annulée.
network_errorUne erreur inconnue est survenue lors de la communication avec le serveur ou le lecteur via le réseau. Reportez-vous au message d’erreur pour plus d’informations.
network_timeoutLa requête a expiré lors de la communication avec le serveur ou le lecteur via le réseau. Assurez-vous que votre appareil et le lecteur sont connectés via le réseau pour des connexions stables.
already_connectedconnectReader a échoué car un lecteur est déjà connecté.
failed_fetch_connection_tokenÉchec de récupération du token de connexion. Assurez-vous que le gestionnaire de token de connexion retourne une promesse qui résulte en un token de connexion.
discovery_too_many_readersdiscoverReaders a renvoyé trop de lecteurs. Utilisez les emplacements pour filtrer les lecteurs découverts par emplacement.
invalid_reader_versionLe lecteur utilise une version logicielle non prise en charge. Veuillez autoriser le lecteur à effectuer une mise à jour et réessayez.
reader_errorLe lecteur a retourné une erreur pendant le traitement de la requête. Reportez-vous au message d’erreur pour plus d’informations.
command_already_in_progressL’action ne peut pas être effectuée car une action en cours l’en empêche.

Log des modifications

Si vous utilisez une version antérieure du SDK JavaScript (antérieure au 7 juin 2019), procédez à une mise à niveau vers la dernière version en changeant l’URL du script inclus dans votre intégration.

<script src="https://js.stripe.com/terminal/v1/"></script>

Pour en savoir plus sur la migration à partir de la version bêta de Stripe Terminal, consultez le Guide de migration vers Terminal Beta.

v1

  • confirmPaymentIntent renommé en processPayment.
  • Valeurs pour PaymentStatus renommées. PaymentStatus peut être à l’état not_ready, ready, waiting_for_input ou processing.
  • Informations de carte supprimées des réponses à collectPaymentMethod, précédemment disponibles dans response.paymentIntent.payment_method.card_payment.
  • Les informations de reçu sont désormais situées dans le hachage payment_intent.charges[0].payment_method_details.card_present.
  • Modification de l’API permettant de découvrir un lecteur de simulation en discoverReaders({ simulated: true }).
  • readSource renommé en readReusableCard. Un appel fructueux à readReusableCard renvoie un PaymentMethod au lieu d’une source. Les moyens de paiement doivent être utilisés avec des PaymentIntents. Pour en savoir plus, consultez l’aperçu de l’API Payment Methods.
  • La réponse connectReader a été modifiée en { reader: Reader }. L’objet Connection de wrapper a été supprimé.
  • Suppression des méthodes startReaderDiscovery et stopReaderDiscovery. Pour découvrir des lecteurs de manière répétée, vous pouvez utiliser la méthode setInterval JavaScript.
  • clearConnectionToken renommé en clearCachedCredentials.
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