[com.fabernovel.ratp ] Bonjour RATP NFC tickets don't work with MicroG (even with root hidden)
Affected app Name: Bonjour RATP / IDF Mobilités Package id: com.fabernovel.ratp / com.applidium.vianavigo
Describe the bug (Bonjour RATP and IDF Mobilités are apps for parisian public transports) The behavior of both applications is the same, it is very highly probable that they use the same method of verification. It is impossible to buy and use any NFC tickets. Even with hiding the root, they both give this message : "Une erreur est survenue, merci de vérifier votre connexion réseau et réessayer" = "An error occured, please check your network connection and retry." I tested this error on multiple phones with multiple custom ROMs and Android versions, see below. It is the only apps to my knowledge to do this. Other NFC apps, like payment apps for my bank work perfectly once the root is hidden using Lsposed + Shamiko + Magisk. But not these ones. I found no information on this. Maybe some other apps for other countries are using similar verifications, but I couln't find one. I would be very happy for any answer and any help. Have a great day.
To Reproduce Steps to reproduce the behavior:
- Install one of these apps
- Do the initial configuration / Give all permissions asked
- Go to "Titres" (= Tickets)
- See the error
Expected behavior Apps should allow me to purchase and use NFC tickets
Screenshots

System Android Version: 13 & 12.1 Custom ROM: crDroid 8.8, crDroid 9.1, ArrowOS
microG microG Core version: 0.2.27.223616 microG Self-Check results: All ticked
Additional context Any help is welcome, if experts see this, don't hesitate to try by yourself and tell if you get similar results. I would love hearing from you and help other people that will have this problem (because it will happen to everyone who uses microG and parisian transports)
Hi, please catch logs of microG and those apps 🙂
Which tickets are you buying? On phone or on Navigo Pass? You could get English interfaces by changing the system default language (temporarily), the screenshots of which would be easier for others to understand.
Could you please also adjoin screenshot(s) for IDF Mobilités? This might be more informative. I have never used mobile tickets, but after some clicks, it indicates me to install Mes Tickets Navigo.
I have the same exact issue with LineageOS. While other apps work totally fine.
I recently had a similar issue with the "IDF Mobilités" app on a rooted phone. After trying many things, such as upgrading Magisk to version 26 and reinstalling the app (after cleaning the cache), the application was still stuck, just like you experienced.
I then noticed that in the zygisk exclusion list, I was missing com.worldline.wallet:
After adding it, the process was not stuck anymore and I could buy tickets via NFC.
Perhaps you should check the exclusion list for anything related to "navigo" or "idf" ?
Hi, I'm the original poster and I'm coming back to try to find a solution.
I haven't been able to get NFC tickets to work. NFC Navigo pass works, however. But I can't figure out if it doesn't work because my phone is a Xiaomi and not a Samsung, or if it doesn't work because of the custom OS, Root or something else linked to it.
Informations seems to contradict. This page says that all Android except a short list of Pixel phones is not compatible : https://www.iledefrance-mobilites.fr/titres-et-tarifs/supports/smartphone But this seems to suggest that it is only compatible with Samsung phones : https://www.samsung.com/fr/apps/samsung-pay/transport/
So I'm not sure where the problem is. What could help would be to know if people on Xiaomi with a stock OS succeeds to enable NFC tickets.
Do anyone has new informations on this subject ?
Thanks in advance for any answer.
I then noticed that in the zygisk exclusion list, I was missing com.worldline.wallet:
I think that MagiskHide or Shamiko is necessary. It also seems sensible to add all proprietary apps (which do not need root) into this exclusion list.
I recently had a similar issue with the "IDF Mobilités" app on a rooted phone. After trying many things, such as upgrading Magisk to version 26 and reinstalling the app (after cleaning the cache), the application was still stuck, just like you experienced.
I then noticed that in the zygisk exclusion list, I was missing com.worldline.wallet:
After adding it, the process was not stuck anymore and I could buy tickets via NFC.
Perhaps you should check the exclusion list for anything related to "navigo" or "idf" ?
I have difficulty validating tickets. Do you succeed?
Hello, I have got the same issue with the IDF mobility application. The RATP reports a network failure. I use a rooted Samsung phone with Magisk. The Zygisk exclusion list, play integrity fix and Shamiko's module have not solved for me. Logcat show that the application is trying to run "su" and "busybox" programs. The "su" is correctly blocked by Zygisk. In my case, I have installed a busybox in /system/xbin/busybox. A call to this program in non privileged environment results of a "bad system call" exception in the application. Its differs of a "file not found" what is expected.
I have renamed the /system/xbin/busybox in something else, and since I am able to reload my navigo pass.
I suggest you to check if you have any program like busybox and temporary rename them.
Hello, I have got the same issue with the IDF mobility application. The RATP reports a network failure. I use a rooted Samsung phone with Magisk. The Zygisk exclusion list, play integrity fix and Shamiko's module have not solved for me. Logcat show that the application is trying to run "su" and "busybox" programs. The "su" is correctly blocked by Zygisk. In my case, I have installed a busybox in /system/xbin/busybox. A call to this program in non privileged environment results of a "bad system call" exception in the application. Its differs of a "file not found" what is expected.
I have renamed the /system/xbin/busybox in something else, and since I am able to reload my navigo pass.
I suggest you to check if you have any program like busybox and temporary rename them.
Hi,
You were able to reload your navigo pass, and I can do this too. But were you able to use dematerialized tickets on your phone with microG ?
Has anyone ever succeeded to use dematerialized NFC tickets on either IDF Moblity, Bonjour RATP or SNCF Connect ? They all seem to use the same protocol and they all say my phone is not compatible. Which is wrong, I can pay with NFC without issue.
Has anyone ever succeeded to use dematerialized NFC tickets on either IDF Moblity, Bonjour RATP or SNCF Connect ? They all seem to use the same protocol and they all say my phone is not compatible. Which is wrong, I can pay with NFC without issue.
The APP runs on my phone without reporting incompatibility (with Zygisk Assistant to hide root, and all these APPs along with "My Navigo Tickets" in the DenyList). However, I was unable to validate the tickets on my phone. It is possible that LineageOS is not supported.
Has anyone ever succeeded to use dematerialized NFC tickets on either IDF Moblity, Bonjour RATP or SNCF Connect ? They all seem to use the same protocol and they all say my phone is not compatible. Which is wrong, I can pay with NFC without issue.
The APP runs on my phone without reporting incompatibility (with Zygisk Assistant to hide root, and all these APPs along with "My Navigo Tickets" in the DenyList). However, I was unable to validate the tickets on my phone. It is possible that LineageOS is not supported.
Ok. So if I understand correctly, you mean that the app doesn't report any incompatibility so that means that you are able to buy tickets ? At what moment it does not validate ? When you put the phone on the NFC target ?
I have a travel to paris scheduled, and as I just succeeded at the moment to get passed the initial compatibility check, I assumed it would be OK. So you think I shouldn't rely on it ?
Ok. So if I understand correctly, you mean that the app doesn't report any incompatibility so that means that you are able to buy tickets ? At what moment it does not validate ? When you put the phone on the NFC target ?
Yes, I succeeded to buy tickets, but it does not validate when the phone approaches the controler. I read the logcat, and there were errors about NFC. I don't know why it does not work.
I have a travel to paris scheduled, and as I just succeeded at the moment to get passed the initial compatibility check, I assumed it would be OK. So you think I shouldn't rely on it ?
If it does not work, you could simply buy a Navigo Easy (that was what I did then), and you can ask for reimbursement for tickets if it does not work.
Buying tickets on my phone with IDF Mobilités works for me with Lineage4microg + Magisk + Shamiko, I could validate tickets with no issues. It just stopped working for a bit, but I was suspecting PlayIntegrity Fix, disabling it made it work again. I'm on a OnePlus 7T.
It just stopped working for a bit, but I was suspecting PlayIntegrity Fix, disabling it made it work again.
What stopped working? The validation or buying tickets on the phone? Maybe I could try to disable some modules to text during my next visit to Paris, say.
The whole feature stopped working, indicating that my phone wasn't compatible. I had to go through the activation procedure once I fixed it, which resulted in what I can only assume is a new Navigo card.
I just tried out with Shamiko 1.2 and it does work after few application restarts. However, I lost all my tickets.
I just tried out with Shamiko 1.2 and it does work after few application restarts. However, I lost all my tickets.
Does that work with Zygisk Assistant https://github.com/snake-4/Zygisk-Assistant, an open source root hiding module?
Here's my Magisk Module configuration. I'm running LineageOS 22.1 on a Fairphone 5.
Zygisk Assistant and Shamiko are both used to hide root. You only need one. For me, I would not use Shamiko because it is closed source, and I would not trust closed source Apps which require root, let alone Magisk modules.
Look like a new version of [My Navigo Tickets] 1.0.47.61 is generating problems :S previous version i was able to open any one with the same issue? msg: java.lang.RuntimeException: stacktrace: java.lang.RuntimeException: Unable to start service com.hidglobal.sdkalemu.HCESupportService@2e8e337 with Intent { cmp=com.worldline.wallet/com.hidglobal.sdkalemu.HCESupportService }: java.lang.RuntimeException: at android.app.ActivityThread.handleServiceArgs(ActivityThread.java:4686) at android.app.ActivityThread.-$$Nest$mhandleServiceArgs(Unknown Source:0) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2181) at android.os.Handler.dispatchMessage(Handler.java:106) at android.os.Looper.loopOnce(Looper.java:201) at android.os.Looper.loop(Looper.java:288) at android.app.ActivityThread.main(ActivityThread.java:7942) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:854) Caused by: java.lang.RuntimeException: at java.lang.reflect.Constructor.newInstance0(Native Method) at java.lang.reflect.Constructor.newInstance(Constructor.java:343) at com.hidglobal.sdkalemu.HCESupportService.onStartCommand(Unknown Source:2479) at android.app.ActivityThread.handleServiceArgs(ActivityThread.java:4668)
any one using previous version to share the apk?
Thanks
Well done @asterlx ! It was indeed a problem with the version of the ‘My Navigo Tickets’ app. The previous version (v1.0.46.60) works, you can install it via the APKPure app to install xapk extension : https://apkpure.com/fr/my-navigo-tickets/com.worldline.wallet/download/1.0.46.60
