Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/stripe/stripe-terminal-react-native/llms.txt

Use this file to discover all available pages before exploring further.

The Stripe Terminal React Native SDK lets you connect your React Native app to pre-certified card readers and drive a fully customized in-store checkout flow. Built on Stripe’s payments network, it unifies your online and offline payment channels in a single integration.

Quickstart

Install the SDK and collect your first in-person payment in minutes.

Requirements

Review platform requirements for iOS and Android before you begin.

Core Concepts

Understand the provider, hooks, and reader lifecycle at the heart of the SDK.

API Reference

Browse every method, parameter, and type exported by the SDK.

How it works

1

Install and configure the SDK

Add @stripe/stripe-terminal-react-native to your project and wrap your app in StripeTerminalProvider with a connection token endpoint.
2

Discover and connect a reader

Call discoverReaders to find nearby devices over Bluetooth, USB, Internet, or Tap to Pay, then call connectReader to establish a session.
3

Collect payment

Create a PaymentIntent on your server, call collectPaymentMethod to read the card, then confirmPaymentIntent to complete the charge.
4

Handle the result

Inspect the returned PaymentIntent for status and charge details, and handle any StripeError for a smooth customer experience.

Key features

Multiple connection methods

Connect via Bluetooth, USB, Internet, or use Tap to Pay on iPhone and Android — no external hardware required.

Offline payments

Accept payments when connectivity is lost. The SDK queues transactions and forwards them automatically when back online.

Setup intents

Save payment methods for future use by collecting and confirming a SetupIntent through the reader.

Collect custom inputs

Display interactive forms on the reader screen to collect signatures, phone numbers, emails, and more.

EasyConnect

Use the simplified easyConnect API to skip manual discovery and connect in one call.

Reader updates

Detect, install, and track reader firmware updates directly from your app.

Supported readers

The SDK supports all pre-certified Stripe Terminal readers including the Stripe Reader S700, BBPOS WisePOS E, BBPOS WisePad 3, Stripe Reader M2, and Tap to Pay on iPhone/Android (no additional hardware required).
This SDK is in public preview. See the GitHub repository for release notes and to report issues.

Build docs developers (and LLMs) love