Hide Root from Banking Apps
Your bank doesn't want you to have root access. Google Pay thinks you're a security risk. But you just want to use your phone the way YOU want.
I get it. Here's the complete guide to making banking apps happy while keeping your root.
Why Banks Detect Root
Banks check for root access because:
- Rooted devices can potentially intercept transactions
- Modified systems could have compromised security
- Regulatory compliance requirements
- Fraud prevention (legitimate concern)
The reality? Most of us root for customization, not fraud. So let's work around their overzealous security.
The Detection Methods
Apps check for root in several ways:
| Method | What It Checks | Solution |
|---|---|---|
| SafetyNet/Play Integrity | Google's attestation | Play Integrity Fix |
| Su binary presence | /system/bin/su | Magisk hides this |
| Root management apps | Magisk app detection | Hide Magisk app |
| Root shell access | Try running su | DenyList |
| Bootloader status | Unlocked bootloader | Props spoofing |
| System modification | /system changes | Systemless root |
Complete Setup Guide
Step 1: Update Magisk
Make sure you're on Magisk v26.0 or newer:
1. Open Magisk app
2. Check version at top
3. If outdated: Settings → Check for Updates
Step 2: Enable Zygisk
1. Magisk → Settings
2. Enable "Zygisk"
3. Reboot
Verify after reboot: Settings should show Zygisk: Yes
Step 3: Install Play Integrity Fix
This is the magic sauce:
1. Download from GitHub:
github.com/chiteroman/PlayIntegrityFix
2. Magisk → Modules → Install from storage
3. Select ZIP file
4. Reboot
Step 4: Configure DenyList
The DenyList tells Magisk which apps shouldn't see root:
1. Magisk → Settings → Enable "Enforce DenyList"
2. Tap "Configure DenyList"
Add these apps (search and check ALL components):
Essential:
- Google Play Services (com.google.android.gms) - ALL checkboxes
- Google Play Store (com.android.vending)
- Google Services Framework (com.google.android.gsf)
Your banking apps:
- Each banking app you use
- Payment apps (GPay, Samsung Pay, etc.)
Important: Expand each app and check EVERY single checkbox, not just the main one.
Step 5: Install Shamiko (Recommended)
Shamiko provides extra hiding power:
1. Download from LSPosed GitHub releases
2. Install via Magisk Modules
3. Reboot
Configure Shamiko:
# Open terminal (Termux or built-in)
su
mkdir -p /data/adb/shamiko
touch /data/adb/shamiko/whitelist
Shamiko uses DenyList as its whitelist when the whitelist file exists.
Step 6: Hide Magisk App
Some apps detect the Magisk Manager app itself:
1. Magisk → Settings
2. Tap "Hide the Magisk app"
3. Enter any name (e.g., "Settings Pro", "System Tools")
4. Magisk reinstalls with new name and icon
Step 7: Clear App Data
Apps cache their root detection results:
1. Settings → Apps → [Banking App]
2. Storage → Clear Data
3. Force Stop
4. Reopen and log in fresh
For Google Pay:
1. Remove all cards from GPay
2. Clear GPay data
3. Clear Play Services data
4. Reboot
5. Open GPay and re-add cards
Verification
Check SafetyNet Status
Download YASNAC or Play Integrity API Checker:
Expected Results:
MEETS_BASIC_INTEGRITY: ✅
MEETS_DEVICE_INTEGRITY: ✅
MEETS_STRONG_INTEGRITY: ❌ (Normal with unlocked bootloader)
BASIC + DEVICE passing is sufficient for most apps.
Test Banking Apps
- Open your banking app
- Try login
- If it works, you're good!
- Try a test transaction if applicable
App-Specific Fixes
Google Pay
If GPay still fails after setup:
1. Remove all payment methods
2. Settings → Apps → Google Pay → Clear all data
3. Settings → Apps → Google Play Services → Clear all data
4. Reboot phone
5. Re-setup GPay from scratch
Persistent issues:
- Check for Play Integrity Fix updates
- Some regions have stricter checks
- May need latest Google Play Services update
Indian Banking Apps (ICICI, HDFC, etc.)
Indian banking apps often have extra checks:
- All standard steps above
- Add app to DenyList completely
- Use Shamiko
- Clear app data
- May need to hide from system call detection (LSPosed + HideMyApplist)
Samsung Pay
Samsung Pay checks Knox status too:
If Knox is tripped (0x1):
- Samsung Pay will NOT work
- No workaround exists
- Knox trip is permanent hardware fuse
If Knox is intact:
- Standard DenyList should work
- Add Samsung Pay to DenyList
Advanced Techniques
HideMyApplist (LSPosed)
For stubborn apps that detect root management apps:
1. Install LSPosed (requires Zygisk)
2. Install HideMyApplist APK
3. Enable module in LSPosed
4. Add target banking app as scope
5. Configure which apps to hide
Commonly hidden:
- Magisk (or renamed Magisk)
- Terminal apps
- Root file managers
- Other modding apps
Props Modification
Spoof device properties to look completely stock:
# Install MagiskHide Props Config module
# Open terminal
su
props
# Follow menu to change fingerprint
Use a fingerprint known to pass (Google Pixel recommended).
Bootloader Status Spoofing
Some apps check locked/unlocked status:
1. Install BootloaderSpoofer (LSPosed module)
2. Add problematic apps to scope
3. App sees "locked" bootloader
Troubleshooting
"This device isn't recognized" (GPay)
1. Update Play Integrity Fix
2. Update Play Services
3. Clear GPay + Play Services data
4. Reboot and reconfigure
"Device is rooted" Still Appears
1. Verify ALL components in DenyList for that app
2. Make sure Shamiko is active
3. Check if app detects Magisk app (hide it)
4. Try HideMyApplist
SafetyNet Basic Failing
1. Check Zygisk status
2. Update Play Integrity Fix
3. Disable other Magisk modules temporarily
4. Check for conflicting modules
App Worked Before, Now Fails
App update likely added new detection:
1. Update Play Integrity Fix
2. Check if app added new components (re-add to DenyList)
3. Check community for app-specific solutions
The Nuclear Option
If nothing works for a specific app:
Dual Profile/Island
Run banking apps in isolated profile:
1. Install Island or Shelter
2. Clone banking app to work profile
3. Work profile doesn't see main profile's root
Secondary Phone
Keep a cheap unrooted phone for banking only. Sometimes the easiest solution.
Virtual Machine (Advanced)
Run banking apps in contained environment:
1. Use VMOS or similar
2. Install banking app in VM
3. VM appears as separate clean device
Future Proofing
Keep Updated
- Check Play Integrity Fix weekly
- Join Magisk Telegram for announcements
- Follow XDA threads for your apps
Monitor Changes
Google and banks continuously update detection:
- Always backup before updates
- Test apps after any system change
- Community usually finds solutions within days
Apps That Currently Work (2024)
Based on community reports:
Usually Works ✅:
- Google Pay
- Most US/EU banking apps
- PayPal
- Venmo
- Cash App
- Most trading apps
Sometimes Issues ⚠️:
- Some Indian banking apps
- Korean banking apps
- Some airline apps
- Enterprise MDM apps
Known Difficult ❌:
- Some government apps
- Certain crypto wallets
- Apps with custom root detection
My Personal Setup
What I run on my daily driver:
Magisk v27.0
├── Zygisk: Enabled
├── DenyList: 12 apps
├── Play Integrity Fix: Latest
├── Shamiko: Installed
└── Magisk app: Hidden as "System Tools"
Result:
- 5 banking apps working
- Google Pay working
- Trading apps working
Time to maintain: About 5 minutes per month checking for updates.
Summary
Quick Setup Checklist:
[ ] Magisk v26.0+
[ ] Zygisk enabled
[ ] Play Integrity Fix installed
[ ] DenyList enabled and configured
[ ] All Google apps in DenyList
[ ] Banking apps in DenyList (ALL components)
[ ] Shamiko installed
[ ] Magisk app hidden
[ ] App data cleared
[ ] Verified with SafetyNet checker
Root and banking can coexist peacefully. It just takes some initial setup. Once configured, it mostly maintains itself with occasional updates.
Now you can have your root AND your mobile banking too.
Keywords: hide root banking apps, magisk banking app, gpay root, safetynet banking, denylist banking, shamiko root hide