# Tap-to-pay on android not showing as available "mobile-payments-sdk-react-native" production

**URL:** <https://developer.squareup.com/forums/t/tap-to-pay-on-android-not-showing-as-available-mobile-payments-sdk-react-native-production/24106>\
**Category:** Questions\
**Tags:** mobile-payments-sdk\
**Created:** [September 29, 2025, 9:38pm UTC](https://developer.squareup.com/forums/t/tap-to-pay-on-android-not-showing-as-available-mobile-payments-sdk-react-native-production/24106 "2025-09-29T21:38:03Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![Terraseraph](https://avatars.discourse-cdn.com/v4/letter/t/df788c/32.png) [@Terraseraph](https://developer.squareup.com/forums/u/Terraseraph)\
**Post date:** [September 29, 2025, 9:38pm UTC](https://developer.squareup.com/forums/t/tap-to-pay-on-android-not-showing-as-available-mobile-payments-sdk-react-native-production/24106/1 "2025-09-29T21:38:03Z")

</div>

Using the mobile-payments-sdk-react-native package the issue is that on android we dont see the Tap-To-Pay option available. Just the “ **Connect hardware to take card payments** ”.

> **[mobile-payments-sdk-react-native/docs at main ·...](https://github.com/square/mobile-payments-sdk-react-native/tree/main/docs#step-1-install-react-native-plugin-for-mobile-payments-sdk)**
>
> Mobile Payments SDK React Native Plug-in. Contribute to square/mobile-payments-sdk-react-native development by creating an account on GitHub.

Showing the settings screen shows images attached.

On iOS we can see clearly that it has tap to pay enabled.

Using versions-

“mobile-payments-sdk-react-native”: “2025.6.2”,

“react-native”: “0.76.9”

and

# Square Mobile Payments SDK version

**squareSdkVersion=2.3.0**

- Authorization flow is good
- Locations are valid
- Device not in developer mode
- SHA-256 certificate is in place
- Running in production not sandbox
- **Square POS app is able to take tap-to-pay payments on the same device**
- Bluetooth connect/scan, record audio, read phone state, and fine location are enabled.

Running showReaders() responds with and empty array also.

Interesting to note - unrelated - , after installing the Square POS app the showSettings() function throws an exception. even when the POS app is not running in foreground and settings is not open.

 ![Screenshot 2025-09-12 120954](https://global.discourse-cdn.com/square/original/2X/3/397979fdc347ddd5a5030b76c486acef59f54ad1.png)

 ![Screenshot 2025-09-12 120904](https://global.discourse-cdn.com/square/original/2X/4/4b56041583f9511b605e4c2d4576151e7ef5ac43.png)

---

<div class="post-metadata">

**Author:** ![Square-Dev-AI](https://sea1.discourse-cdn.com/square/forums/user_avatar/developer.squareup.com/square-dev-ai/32/2513_2.png) [@Square-Dev-AI](https://developer.squareup.com/forums/u/Square-Dev-AI)\
**Post date:** [September 29, 2025, 9:38pm UTC](https://developer.squareup.com/forums/t/tap-to-pay-on-android-not-showing-as-available-mobile-payments-sdk-react-native-production/24106/2 "2025-09-29T21:38:23Z")

</div>

👋 I’m Square Dev AI, here to help answer your question!  
Based on the information you’ve provided, the following documentation will help answer your question:

> **[Tap to Pay on Android](https://developer.squareup.com/docs/mobile-payments-sdk/android/tap-to-pay)**
>
> Use Tap to Pay on Android to accept payments with your own device, without the need for Square hardware.

> **[Tap to Pay on iPhone](https://developer.squareup.com/docs/mobile-payments-sdk/ios/tap-to-pay)**
>
> Use Tap to Pay on iPhone to accept payments with your own device, without the need for Square hardware.

> **Additional Documentation**
>
> [React Native Plugin](https://developer.squareup.com/docs/mobile-payments-sdk/react-native)  
> [Take Payments and Build Integrations on Square Hardware](https://developer.squareup.com/docs/in-person-payment-options)  
> [Build on Android](https://developer.squareup.com/docs/mobile-payments-sdk/android)

If this documentation helped you find a solution, please check the box indicating that this reply solves the problem.  
Otherwise one of our Developer Advocates will provide additional assistance shortly.

---

<div class="post-metadata">

**Author:** ![Bryan-Square](https://sea1.discourse-cdn.com/square/forums/user_avatar/developer.squareup.com/bryan-square/32/38_2.png) [@Bryan-Square](https://developer.squareup.com/forums/u/Bryan-Square)\
**Post date:** [September 30, 2025, 12:27am UTC](https://developer.squareup.com/forums/t/tap-to-pay-on-android-not-showing-as-available-mobile-payments-sdk-react-native-production/24106/3 "2025-09-30T00:27:59Z")

</div>

Have you tried to update to 2.3.1 to see if that resolves the issue? 🙂

---

<div class="post-metadata">

**Author:** ![Terraseraph](https://avatars.discourse-cdn.com/v4/letter/t/df788c/32.png) [@Terraseraph](https://developer.squareup.com/forums/u/Terraseraph)\
**Post date:** [October 2, 2025, 12:54am UTC](https://developer.squareup.com/forums/t/tap-to-pay-on-android-not-showing-as-available-mobile-payments-sdk-react-native-production/24106/4 "2025-10-02T00:54:22Z")

</div>

Hi Bryan,

Yep, i did the update and still no joy ☹

Unsure if this will help to further diagnose, but was also interesting was that on initial load, of the app, then authorizing with token and location, I would get a success and AUTHORIZED response.

calling **getAuthorizationState** (); returned authorized.

But when calling await **getAuthorizedLocation** (); we get null in the response fields.

* * *

But, if we load app, call **deauthorize** (); then **authorize** () with the same token and location, we then get a successful **getAuthorizedLocation** () response. {name, mcc, currencyCode, id}

The setting screen will now show up with “pair a card reader” (it did not before) it just said “an error occured”

However after this small win, it still has not got the “Tap To Pay” option.
