Skip to content
Sign in
An image of the Stripe logo
/
Create account
Sign in
Home
Payments
Finance automation
Banking as a service
Developer tools
No-code
All products
Home
Payments
Finance automation
Home
Payments
Finance automation
Banking as a service
Developer tools
Overview
Get started
About Stripe payments
Start an integration
Payment Links
Checkout
Web Elements
Mobile Elements
Payment scenarios
During the payment
After the payment
Add payment methods
More payment scenarios
Faster checkout with Link
Other Stripe products
Connect
Terminal
    Overview
    What is Terminal
    Design an integration
    Example applications
    Quickstart
    Accept an in-person payment
    Select your reader
    Set up your integration
    Connect to a reader
    Collect payments
    Regional considerations
    Supported card brands
    Terminal payments features
    Multiparty payments with Connect
    Collect tips
    Collect inputs
    Save cards for future use
    Refund transactions
    Provide receipts
    Cart display
    Incremental authorizations
    Extended authorizations
    Operate offline
    Deploy at scale
    Order hardware
    Manage locations
    Configure readers
    References
    API references
    Bluetooth readers
    Smart readers
    SDK migration guide
    Testing
    Deployment checklist
    Stripe Terminal reader product sheets
Radar
Financial Connections
Crypto
Identity
Climate
Resources
About the APIs
Implementation guides
Regulation support
Testing
Terminal
·
HomePaymentsTerminal

What is Terminal

Use Stripe Terminal to accept in-person payments, extending Stripe payments to your point of sale.

No-code integrations

Stripe partners with platforms that provide no-code POS solutions.

With Stripe Terminal, you can integrate Stripe payments into your existing in-person checkout flow or build in-person payments into your native mobile or web-based application.

Terminal comes with SDKs built for modern development environments, Tap to Pay on iPhone and Android, pre-certified readers, and tools for ordering and managing readers from the Stripe Dashboard. Build a SaaS platform or marketplace using Connect or initiate subscriptions in-store with Billing.

Stripe Terminal is available in the following countries:

Availability

Australia
Canada
France
Germany
Ireland
Netherlands
Singapore
United Kingdom
United States

Available in Beta

Austria
Belgium
Czech Republic
Denmark
Finland
Italy
Luxembourg
Malaysia
New Zealand
Norway
Portugal
Spain
Sweden
Switzerland

You can only collect payments in your local currency with supported card brands. Stripe Terminal offers pre-certified readers and Tap to Pay, which allows users to accept in-person contactless payments with a compatible iPhone or Android device and the Stripe Terminal SDK. Hardware must be shipped to physical addresses (not PO boxes). If you’re outside the available countries, you can request an invite to test Terminal.

Features

Use Terminal to take the complexity out of in-person payments:

  • Online compatibility: Unify your online and in-person payments in a single system.
  • Flexible SDKs: Use Terminal’s JavaScript, iOS, or Android SDK to integrate your existing point of sale (POS), or build a modern POS tailored to your business.
  • Reader choices: Choose from different readers depending on your business needs.
  • Connection types: Connect to your Terminal reader with Bluetooth, USB (Android only), or internet, depending on your physical sales environment.
  • Ordering and fleet management from the Stripe Dashboard: Order pre-certified readers and monitor your fleet of readers from the Stripe Dashboard.

How Terminal works

A Stripe Terminal deployment consists of four main components:

  • Your web-based or mobile application
  • Your backend
  • A Stripe Terminal reader
  • The Stripe Terminal SDK

The SDK facilitates communication between your point of sale application logic, the firmware running on the reader, and the Stripe API so you can accept in-person payments in the same way as you accept online payments with Stripe. The SDK is available for JavaScript, iOS, and Android applications.

Stripe Terminal offers a selection of pre-certified readers that accept payment details (EMV, contactless, and swiped), encrypt sensitive card information, and return a token to your application (through the Stripe Terminal SDK) so you can confirm payment.

Stripe Terminal works only with our pre-certified card readers and compatible Tap to Pay iPhone and Android devices. This ensures secure transactions by our end-to-end encryption, by default, and up-to-date readers through our remote management tools.

You can order readers and accessories from the Stripe Dashboard and get them shipped to a location of your choice. As a Connect platform, you can even enable your connected accounts to receive readers and accessories at their business location.

Use cases

Stripe Terminal is built with developers in mind. Its flexible design supports a wide range of use cases:

  • Extend your online business to the physical world.
  • Enable in-person payments for your Connect platform, with readers for each connected account.
  • Collect payments in-person and use those card details for recurring online payments with Billing.
  • Build a new, customized point of sale application or integrate with your existing point of sale application, while taking advantage of the Stripe API for processing payments.

Choose an SDK that works best for you and combine it with a reader that works best for you. This documentation provides all the information you need to design your in-person payments solution, order readers and accessories, integrate, and deploy.

Scope of integration

The full scope of an integration consists of four major steps.

  1. Use the sample integration to get up and running with an integration quickly.
  2. Design your integration to create in-person payments.
  3. Integrate the SDK in your application. Use the simulated reader to emulate reader behavior for all the Terminal flows while building your initial integration.
  4. Order a physical reader and test card.

From there, explore the docs to see all you can do with your Terminal integration. We recommend testing your integration and reviewing the checklist before going live.

See also

  • Design an integration
  • Sample integration
  • Supported card brands
Was this page helpful?
Need help? Contact Support.
Watch our developer tutorials.
Check out our product changelog.
Questions? Contact Sales.
Powered by Markdoc
You can unsubscribe at any time. Read our privacy policy.
On this page
Features
How Terminal works
Use cases
Scope of integration
See also
Products Used
Terminal
Payments
Stripe Shell
Test mode
Welcome to the Stripe Shell! Stripe Shell is a browser-based shell with the Stripe CLI pre-installed. Log in to your Stripe account and press Control + Backtick (`) on your keyboard to start managing your Stripe resources in test mode. - View supported Stripe commands: - Find webhook events: - Listen for webhook events: - Call Stripe APIs: stripe [api resource] [operation] (e.g., )
The Stripe Shell is best experienced on desktop.
$