Se connecter à un lecteur
Associez votre application à un lecteur Stripe Terminal.
Remarques
Si vous n’avez pas encore choisi de lecteur, comparez les lecteurs Terminal et sélectionnez celui qui répond le mieux à vos besoins.
Le Paiement rapide permet aux utilisateurs d’accepter des paiements sans contact en personne avec des appareils Android compatibles dotés de la technologie NFC ou des iPhones compatibles. Le Paiement rapide prend en charge les cartes sans contact Visa, Mastercard et American Express, ainsi que les portefeuilles mobiles NFC (Apple Pay, Google Pay et Samsung Pay). Le Paiement rapide sur iPhone ou Paiement rapide sur Android est pris en charge dans la trousse SDK native qui permet d’effectuer les paiements directement dans votre application mobile.
Suivez ces étapes pour connecter votre application au lecteur Paiement rapide sur un appareil pris en charge :
- Découvrir les lecteurs en utilisant la trousse SDK pour confirmer la compatibilité de l’appareil.
- Se connecter à un lecteur avec la trousse SDK pour accepter des paiements.
- Gérer les déconnexions inattendues pour vous assurer que votre utilisateur peut continuer à accepter les paiements si le lecteur se déconnecte de manière inattendue.
Détecter les lecteurs
Utilisez la méthode discoverReaders
pour déterminer la prise en charge matérielle de Paiement rapide sur votre appareil.
Si votre application s’exécute sur un appareil qui ne répond pas aux exigences ci-dessus, la méthode discoverReaders
génère une erreur.
export default function DiscoverReadersScreen() { const { discoverReaders, discoveredReaders } = useStripeTerminal({ onUpdateDiscoveredReaders: (readers) => { // The `readers` variable will contain an array of all the discovered readers. }, }); useEffect(() => { const { error } = await discoverReaders({ discoveryMethod: 'tapToPay', }); }, [discoverReaders]); return <View />; }
Me connecter à un lecteur
Pour accepter les paiements effectués par Paiement rapide, fournissez le lecteur découvert de l’étape précédente à la méthode connectReader
Vous devez enregistrer votre lecteur à un emplacement lors de la connexion. Pour ce faire, vous devez transmettre l’ID d’emplacement approprié à connectReader
.
Lorsque vous utilisez des paiements indirects avec on_behalf_of sur un iPhone, vous devez également fournir l’ID du compte connecté.
const { reader, error } = await connectReader({ reader: selectedReader, locationId:
}, 'tapToPay' ); if (error) { console.log('connectTapToPayReader error:', error); return; } console.log('Reader connected successfully', reader);'{{LOCATION_ID}}'
Liens avec les comptes et conditions d’Apple
Les conditions générales de la fonctionnalité Paiement rapide sur iPhone d’Apple s’affichent la première fois que vous vous connectez au lecteur. Pour s’enregistrer auprès d’Apple, vous devez indiquer un ID Apple valide, qui sera utilisé pour votre entreprise, puis accepter les conditions énoncées. Vous ne devez effectuer cette opération qu’une seule fois par compte Stripe. Il n’est pas nécessaire de répéter ce processus lors des connexions suivantes, y compris sur d’autres appareils mobiles.
Chaque compte connecté doit accepter les conditions lorsque :
- Un utilisateur Connect crée des paiements directs
- Un utilisateur Connect crée un paiement indirect et précise un compte
on_
behalf_ of

Associez votre ID de comte Apple pour accepter Paiement rapide
Tout iPhone peut utiliser jusqu’à trois (3) comptes Stripe uniques dans les applications au cours d’une période de 24 heures lors de l’appel de la méthode connectReader
pour Paiement rapide sur iPhone. Si des comptes supplémentaires sont utilisés pour l’appareil au cours de la même période de 24 heures, la méthode connectReader
génère une erreur SCPErrorTapToPayReaderMerchantBlocked.
Pour en savoir plus sur les associations du compte, veuillez consulter la section sur les informations liées à Paiement rapide sur iPhone de la FAQ d’Apple de Paiement rapide sur iPhone.
Gérer les déconnexions inattendues
Des déconnexions inattendues peuvent se produire entre votre application et le lecteur. Par exemple, le lecteur Paiement rapide peut se déconnecter de manière inattendue lorsque l’appareil perd la connectivité Internet et lorsque le système d’exploitation Android met fin au service de lecteur Paiement rapide en raison de contraintes de mémoire.
Pendant les tests, vous pouvez simuler une déconnexion inattendue en désactivant l’accès Internet à votre appareil.
Tentative de reconnexion automatique
Lorsqu’une déconnexion inattendue se produit, Stripe tente automatiquement une reconnexion par défaut et vous recommande d’afficher dans votre application des notifications qui indiquent l’état du lecteur tout au long du processus.
const { reader, error } = await connectReader({ reader, autoReconnectOnUnexpectedDisconnect: true, // default setting }, 'tapToPay' ); if (error) { console.log('connectReader error:', error); return; } console.log('Reader connected successfully', reader);
Lorsque la trousse SDK tente de se reconnecter automatiquement, les événements suivants se produisent :
- La trousse SDK vous en informe au moyen de
onDidStartReaderReconnect
. Assurez-vous que votre application signale que la connexion a été perdue et qu’une reconnexion est en cours.- Vous pouvez utiliser la méthode
cancelReaderReconnection
pour arrêter la tentative de reconnexion en tout temps.
- Vous pouvez utiliser la méthode
- Si la trousse SDK parvient à se reconnecter au lecteur, Stripe vous en informe au moyen de
onDidSucceedReaderReconnect
. Assurez-vous que votre application signale que la connexion a été restaurée et qu’elle poursuit son fonctionnement normal. - Si la trousse SDK ne peut pas se reconnecter au lecteur, Stripe vous avertit au moyen de
onDidFailReaderReconnect
etonDidDisconnect
. Assurez-vous que votre application signale qu’une déconnexion inattendue s’est produite.
const { discoverReaders, connectedReader, discoveredReaders } = useStripeTerminal({ onDidStartReaderReconnect: (disconnectReason) => { // 1. Notified at the start of a reconnection attempt // Use cancelable to stop reconnection at any time }, onDidSucceedReaderReconnect: () => { // 2. Notified when reader reconnection succeeds // App is now connected }, onDidFailReaderReconnect: (): => { // 3. Notified when reader reconnection fails // App is now disconnected } });
Gérer la déconnexion manuellement
Pour gérer la déconnexion vous-même, définissez autoReconnectOnUxpectedDisconnect
sur false
et déployez le rappel onDidReportUnexpectedReaderDisconnect
. Cela permet à votre application de se reconnecter au lecteur Paiement rapide et, le cas échéant, d’informer l’utilisateur de ce qui ne va pas et de la manière dont il peut activer l’accès au Paiement rapide. Les clients finaux peuvent résoudre certaines erreurs, notamment les problèmes de connectivité Internet.
const { discoverReaders, connectedReader, discoveredReaders } = useStripeTerminal({ onDidReportUnexpectedReaderDisconnect: (readers) => { // Consider displaying a UI to notify the user and start rediscovering readers }, });
Prochaines étapes
Vous avez associé votre application au lecteur. Vous pouvez maintenant encaisser votre premier paiement avec Stripe Terminal.
Les nom et logo BBPOS et Chipper™ sont des marques ou marques déposées de BBPOS Limited aux États-Unis et/ou dans d’autres pays. Les nom et logo Verifone® sont des marques ou marques déposées de Verifone aux États-Unis et/ou dans d’autres pays. L’utilisation de ces marques n’implique aucune approbation de la part de BBPOS ou Verifone.