Skip to content
Create account
or
Sign in
The Stripe Docs logo
/
Ask AI
Create account
Sign in
Get started
Payments
Finance automation
Platforms and marketplaces
Money management
Developer tools
Get started
Payments
Finance automation
Get started
Payments
Finance automation
Platforms and marketplaces
Money management
Overview
About Stripe payments
Upgrade your integration
Payments analytics
Online payments
OverviewFind your use caseManaged Payments
Use Payment Links
Build a checkout page
Build an advanced integration
Build an in-app integration
Payment Methods
Add payment methods
Manage payment methods
Faster checkout with Link
Payment interfaces
Payment Links
Checkout
Web Elements
In-app Elements
Payment scenarios
Custom payment flows
Flexible acquiring
Orchestration
In-person payments
Terminal
    Overview
    Accept in-person payments
    Integration design
    Select your reader
    Design an integration
    Quickstart
    Example applications
    Testing
    Terminal setup
    Set up your integration
    Connect to a reader
    Accepting a payment
    Collect card payments
    Additional payment methods
    Accept offline payments
    Mail order and telephone order payments
    Regional considerations
    During checkout
    Collect tips
    Collect and save payment details for future use
    Flexible authorisations
    After checkout
    Refund transactions
    Provide receipts
    Customize checkout
    Cart display
    Collect on-screen inputs
    Collect swiped data
    Collect tapped data for NFC instruments
    Apps on devices
    Manage readers
    Order, return, replace readers
    Register readers
    Manage locations and zones
    Configure readers
    Encryption
    References
    API references
    Mobile readers
      BBPOS Chipper 2X BT reference
      BBPOS WisePad 3 reference
      Stripe Reader M2 reference
    Smart readers
    SDK migration guide
    Deployment checklist
    Stripe Terminal reader product sheets
Other Stripe products
Financial Connections
Crypto
Climate
HomePaymentsTerminalMobile readers

Stripe Reader M2

Learn about the Stripe Reader M2 Bluetooth reader.

Copy page
Available in:

The Stripe Reader M2 is a small, robust reader for use with mobile applications. It uses Bluetooth Low Energy (LE) or USB (Android only) to connect to the Stripe Terminal SDK on a mobile device.

This reader is compatible with our iOS, Android, and React Native SDKs. To view the reader’s parts and features, see the Stripe Reader M2 product sheet.

LED status lights

The LEDs on top of the reader show the current status.

LED icon meanings

Use this table to understand what the icons in the subsequent tables indicate.

IconMeaning
The light is on.
The light is flashing.
The light is off.

Battery and charging status

When the Stripe Reader M2 is on, you can press and release the power button once to check the battery level. Learn more about Stripe M2 battery life.

LEDsMeaning
Full charge
75% charge
50% charge
25% charge
(flashing) Charging

Connectivity and reader status

When you connect to the Stripe Reader M2, you can check the LEDs for the reader status.

LEDsMeaning
(flashing, three times) Reader is connected to Bluetooth or USB
Reader is in bootloader mode
Reader is in standby mode
(flashing, every 0.1 seconds for 30 seconds) Reader tampered
(30 seconds) Reader integrity check failed

Reader software releases

SDK Reference

  • deviceSoftwareVersion (iOS)
  • softwareVersion (Android)

The software on the Stripe Reader M2 consists of a firmware version, configuration name, and key identifier. The reader software version joins these three components with underscores into a single string.

Latest Version
2.01.00.31-SZZZ_Prod_US_v12-480001

Firmware versions

Note

In PCI listings, the firmware identifier is in the format CHB3x.<batch>-xxxxx, where xxxxx is a placeholder for all firmware versions. All firmware versions are PCI compliant.

Specifically, a PCI firmware ID ABCDD maps to firmware version AA.BB.CC.DD. For example, CHB3x.01-21021 maps to firmware version 2.01.00.21.

VersionRelease DateDescription
2.01.00.312025-04-30
  • Added a new “NFC UID” configuration that can be passed with the Terminal.collectData method. Use this configuration to fetch the UID of an NFC instrument, such as a wristband or key card.
  • Improved transaction performance for contact and contactless transactions.
  • Added support for Domestic Debit partial AID matching.
  • Fixed NFC card detection issues that occurred during standby mode.
  • Fixed USB driver issues.
  • General bug fixes and improvements.
2.01.00.21.szzz.012024-11-04Bug fixes and improvements.
2.01.00.212024-05-22
  • Fixed an issue where repeatedly pressing the power button causes a Bluetooth disconnect.
  • Fixed a Bluetooth initialisation error that can cause a Bluetooth connection timeout.
  • Fixed a bug that prevented Tag DF841A from disabling the Clear Bluetooth link key feature.
  • Modified the YiChip Bluetooth library to fix a problem that occurs when Bluetooth continuously communicates for a long time, resulting in timeouts and disconnects.
  • Modified JCB CDA Signature Verification requirement according to EMV Bulletin No. 290.
  • Fixed an issue where ICC transactions can terminate due to incorrect ICC Rx length checking.
  • Updated the MH1901H crypto library.
2.01.00.202023-10-24Bug fixes and improvements.
2.01.00.172023-04-17Bug fixes and improvements.
2.01.00.162022-10-17Bug fixes and improvements.
2.01.00.152022-03-17Bug fixes and improvements.
2.01.00.052021-07-01The initial firmware version available for this device.

Configurations

NameRelease DateDescription
SZZZ_Prod_US_v122025-04-30Updates production configuration for this device.
SZZZ_Prod_US_v102024-02-29Updates production configuration for this device.
SZZZ_Prod_US_v52023-04-17Updates production configuration for this device.
SZZZ_Prod_US_v12021-11-03Updates production configuration for this device.
SZZZ_Test_US_v62021-07-01The initial configuration available for this device.

Key identifiers

IdentifierRelease DateDescription
4800012021-07-01The initial key identifier available for this device.

Accessories for the reader

You can use the Stripe Reader M2 with an optional dock for countertop checkout, or an optional mount for roaming checkout.

You can also design your own accessories for the Stripe Reader M2. To download the Stripe Reader M2 mechanical design files (.STP), you must first review and accept our Terminal Design File License Agreement. By downloading the file below, you agree to the terms outlined in the license.

Download Stripe design files

See also

  • Set up Stripe Reader M2
  • Set up your integration
  • Connect to a reader
  • Collect payments
Was this page helpful?
YesNo
Need help? Contact Support.
Join our early access programme.
Check out our changelog.
Questions? Contact Sales.
LLM? Read llms.txt.
Powered by Markdoc