Update 4 (19th Sep, 2016): There is a new way (probably the best) to use Android Pay with root:
  1. Root your Android device with Magisk systemless interface.
  2. Use AutoMagisk app to automatically toggle off root (on the fly) when using Android Pay app. It also has option to disable root when the screen is off so you can make payments from Android Pay without turning on phone to disable root. 
  Update 3 (6th Feb, 2016): Added workaround for getting Systemless root working again with Android Pay. Check the systemless root method below:
   Update 2: Turd Fergussen’s comment below seems to be a much simpler way to use Android Pay with Root. Just disable root from SuperSU, add your cards to Android Pay app, then re-enable SuperSU/Root and you’re done, ready to make payments using Android Pay.
   Update: A new Xposed module called “No Device Check” can hide your device’s root/modified status from Google Play Services. It may also help getting Android Pay to work with root, check the Alternative method at the end of this post. 

Google yesterday released Android Pay in the USA and the service will soon expand to other parts of the world as it gains traction, but what must be a burning question for you, us and many other like-minded folks is “Does Android Pay works on a rooted device?”

Well, NO. Right now, Android Pay doesn’t officially work on rooted Android devices. However, it isn’t so rude like Samsung Pay that it won’t ever work on your device if you’ve ever rooted it.

Android Pay can work on Android devices that were previously rooted or have bootloader unlocked, but it won’t officially work on devices with active root access.

Google Wallet had similar restrictions for rooted Android devices, but then Google silently removed the restriction and made Google Wallet work alongside with root access on a device. This may happen to Android Pay as well. At some point in future when Google figures out a way to secure Android Pay from root access, and become really sure about it, it may lift the root restriction for the app.

So Android Pay doesn’t officially supports root access, but that doesn’t mean there’s no workaround. There are a few methods to get Android Pay work with Root.

Method 1: Systemless root workaround for Android Pay

Follow the instructions below to get Android Pay working with Systemless root, thanks to jgummeson for the tip:

  1. Format/Factory reset your device to stock firmware with no custom modifications.
  2. Root your device with systemless SuperSU.
  3. Enable USB debugging on your device:
    1. Go to Settings » About tablet » and tap Build number 7 times to enable Developer options.
    2. Go back to Settings » select Developer options » enable USB debugging.
  4. Setup ADB and Fastboot on your PC.
  5. Connect your device to PC.
    └ If a prompt appears on your device screen asking to allow USB debugging, select “Ok”.
  6. Open a command window on the PC and issue the following command:
    adb shell
    su
    chmod 751 /su/bin
  7. That’s it. Android Pay should now be working with systemless root on your device.

What we did in the systemless root method above is turn off the SafetyNet checks detecting systemless root on the device. Hope it works for you. If not, try the other methods given below as well.

Method 2: Disable Root from SuperSU

As suggested by Turd Fergussen in comments, just disabling root from SuperSU also works:

  1. Open the SuperSU app on your device.
  2. Tap the Settings tab.
  3. Untick the “Enable Superuser” option.
  4. Open Android Pay and set up your cards.
  5. Go back to SuperSU app and tick the “Enable Superuser” option.

That’s it. You should be able to make payments now.

Method 3: Use RootCloak Xposed Module

You could use a Xposed module called RootCloak which cloaks your device’ root status, so you can cloak the Google Play Services app (which Android Pay uses) and hide the fact that your device is rooted. Below is a quick guide for the hack:

  1. Install Xposed Framework on your device.
  2. Install RootCloak Xposed Module and enable it in the Xposed installer app.
  3. Open RootCloak app from your launcher.
  4. Now as a first-time user of the app, open menu (tap 3 dot icon) and select the “Reset to Default Apps” option.
  5. Now if Google Play Services isn’t already in the list of default apps, add it using the + button.
  6. Either reboot your device or Force Close the Google Play Services app.
  7. Open the Android Pay app, it should now work on your rooted device.

Note: If you’re getting force closes while adding your credit or debit cards, you may have to toggle it On/Off repeatedly until you’ve added all of your cards. And finally leaving it On.

Note 2: You may want to use the latest Google Play Services app that released earlier today if things don’t work well.

Alternative Method (untested): Install “No Device Check” Xposed module.

Google introduced a new SafetyNet API recently, which helps app developers check if your device is rooted or modified by returning a “false” status so that their apps can adjust features accordingly.

The “No Device Check” Xposed module changes this behavior and always returns “true” status for your device’ compatibility so that apps think your device isn’t rooted or modified in any way, and thus enable all of its features for you.

[icon name=”download” class=”” unprefixed_class=””] Download “No Device Check” Xposed Module

This may also help us to use Android Pay on a rooted device. Give it a go and let us know if it fares well in the comments section below.

Happy Androiding!