⚠️ Installing unknown patches for banking apps is usually a very bad idea. Read and understand the code!

Prex Compat

Algo salió mal screen

Xposed module to make the Prex Uruguay app work on de-googled / rooted devices.

Hooks

  • RootHook — forces RootBeer (com.scottyab.rootbeer) and IRoot (de.cyberkatze.iroot) checks to "not rooted", suppressing "Dispositivo está rooteado" rejection on startup.
  • FirebaseFix — makes the Capacitor Firebase plugin's getAppInstanceId resolve a stable non-empty string, so the Device-Firebase-Instance-Id request header isn't null. Without this, the login POST is rejected client-side and the app shows "Algo salió mal" (likely a bug, introduced around 10.70.00).

KYC

Incode’s device checks can reject rooted devices or crash when LSPosed is loaded.

  • IncodeHook skips the legacy environment gate and reads SessionConfig.externalToken directly to avoid a crash in its protected getter. It preserves the token, including null.
  • ART View Sync is a companion Magisk module. It gives the app a copy of libart.so matching its live ART memory, allowing Incode’s file comparison to pass with LSPosed loaded.

Document capture, liveness checks, uploads, and server verification are unchanged.

Tested configurations

Requires an LSPosed build with modern Xposed API 101 support.

Tested on Android 15/16/17 (LineageOS) with Magisk, Zygisk, and LSPosed. Additional root hiding tools such as Shamiko are not required.

Active app versions:

  • 10.80.00 - Working with PrexCompat.
  • 10.79.00 - Working with PrexCompat. Selfie KYC verified.

Older versions are disabled by Prex.

Not tested on other regional variants — Argentina, Chile, Peru. PRs are welcome.

Source

github.com/droserasprout/io.drsr.prexcompat

Install

Install the APK and enable the module in LSPosed, then force-stop the app. Scope is fixed to air.Prex (staticScope=true via META-INF/xposed/scope.list), so no manual scope selection is needed. If you're running Magisk with "Enforce DenyList" enabled — remove Prex from this list to allow Xposed injection.

If app requests selfie verification to pass KYC:

  • Install ART View Sync module, reboot
  • Pass the KYC in Prex
  • Disable or uninstall module, reboot

License

GPL-3.0

Linus Torvalds showing Prex the middle finger

Releases

1.2.0

Stable

7/18/2026, 2:32:50 AM

Changed

  • Migrated from the legacy Xposed API (82) to libxposed API (101).

No other changes.

Requires an LSPosed build with modern-API (>=101) support. Older Xposed/EdXposed and pre-modern-API LSPosed releases will not load this module.

Assets

1

1.1.0

Stable

7/11/2026, 5:47:18 PM

Add IncodeHook — bypasses the Incode Welcome SDK anti-tamper gate that blocked KYC document verification ("No se pudo validar tu identidad") on Xposed/rooted devices. Tested on Prex 10.72.00 and 10.74.00.

Assets

1

1.0.0

Stable

6/23/2026, 1:16:04 PM

First release.

Two patches for the Prex (Uruguay) app on de-googled / rooted devices:

  • RootHook - forces RootBeer and IRoot checks to "not rooted", suppressing the "Dispositivo está rooteado" rejection on startup.
  • FirebaseFix - makes the Capacitor Firebase plugin's getAppInstanceId return a stable non-empty value, so the Device-Firebase-Instance-Id login header isn't null (otherwise the app shows "Algo salió mal").

Scope: air.Prex, main process only. Tested on Android 15 + Magisk + Zygisk + LSPosed.

Assets

1