Privacy Policy - FalaPix
Last Updated: 14 October 2026
Effective From: 28 April 2026
Applies To: FalaPix Android app (com.binaryscript.falapix)
Operator: BinaryScript — contact support@binaryscript.com
Jurisdiction: Bangalore, India
This Privacy Policy explains what FalaPix does — and just as importantly, what it doesn't do — with information from your device. We've written it in plain language because that's what we'd want as users. If anything is unclear, email us.
1. The Short Version
- Notification text stays on your phone. Pix amounts, sender names, and notification body text are processed on your device. The only exception is if you choose to share the notifications FalaPix could not announce (section 4a). That is off unless you turn it on, and lasts 7 days.
- We collect anonymous, bucketed analytics so we can fix the app when bank notification text changes. Bank package names and amount-range buckets — that's it.
- We use Firebase Analytics, Firebase Crashlytics and Firebase Performance Monitoring, all Google products, for that analytics, for crash reports and for performance data.
- Subscriptions are processed through Google Play Billing; we never see your payment details.
- You can opt out by disabling Play Services data sharing on your device, or by uninstalling. There is no cloud account to delete.
2. What We Process on Your Device
The following data is read by FalaPix locally and stays on your phone unless you opt in to section 4a:
- Notification title, text, big-text, sub-text, and info-text from the supported Brazilian banking apps (only those packages are inspected; all other notifications are ignored).
- The exact BRL amount of incoming Pix and the sender's name (when parseable).
- A local list of past announcements (last 200), stored in the app's private DataStore for the History screen. This list is encrypted at rest by Android, never uploaded, and is wiped when you uninstall the app or tap "Clear history".
We obtain this through Android's BIND_NOTIFICATION_LISTENER_SERVICE permission, which you grant explicitly during onboarding. You can revoke it at any time in Android Settings → Apps → Special access → Notification access.
3. What We Send to Firebase (Google) for Product Analytics
We send anonymous, bucketed events to Firebase Analytics and Firebase Crashlytics so we can keep the app working as Brazilian banks change their notification wording. Specifically:
- Bank package name (e.g.
com.nu.production) → To know which banks have unparsed text we need to fix. - Amount bucket, never exact (e.g. 50–200) → To understand product use, never to identify a transaction.
- Voice locale (pt-BR / en-US) → To prioritise voice quality work.
- UI language (en / pt-BR) → Same as above.
- Onboarding step (Welcome / Setup) → To find drop-off points.
- Device OEM / Android SDK (Xiaomi/Redmi, 33) → To prioritise per-OEM reliability fixes.
- Listener connect/disconnect (event with timestamp) → To measure background-survival rate.
- TTS voice status (MissingData) → To know how many users need pt-BR voice.
- Settings toggles changed (vibrate=true) → Aggregate product decisions only.
- Crash stack traces (no PII) → Standard crash reporting.
- Firebase Installation ID (random ID Firebase generates) → Required by Firebase to attribute events.
- Performance data (Firebase Performance Monitoring: app start time, screen rendering and similar performance traces, with no personal data) → To find and fix slow parts of the app.
- App Check token (Firebase App Check with Google Play Integrity) → To check that requests come from the genuine app. No personal data.
Unless you opt in to optional diagnostics (section 4a), we do NOT send to Firebase or any third party:
- Notification text from your banking apps, unless you opt in to optional diagnostics (section 4a)
- Sender names
- Exact BRL amounts (only bucketed ranges)
- Timestamps of individual transactions
- Your account number, card number, or any banking credentials
- Your name, email, phone number, or device identifiers other than the random Firebase Installation ID
- Your contact list, photos, files, location, calendar, or browsing data — we don't request those permissions in the first place
Firebase data flows through Google's infrastructure. Read Google's Firebase data-handling policy at: https://firebase.google.com/support/privacy
4. Why We Collect Anything at All
Bank notification wording changes when banks update their apps. Without some signal, we'd ship a regex update and find out only when users complain. The bucketed analytics above let us:
- See which bank apps are sending notifications our parser doesn't understand (the
pix_unmatchedevent) - Detect crashes early
- Measure if our background-listener survives on Xiaomi vs. Pixel vs. Samsung phones
- Decide where to invest engineering effort
We've deliberately limited the analytics to fields that cannot identify a transaction or a user.
4a. Optional Diagnostics (Off Unless You Turn It On)
To teach FalaPix new bank wording, we may invite a few users, once, to share the notifications FalaPix could not announce. Anyone can also turn this on in Settings > Help & privacy.
- What is sent: the title and text of bank notifications that look like a Pix payment or mention Pix but that FalaPix did not announce (held, rejected or unrecognised ones), plus the bank app's name, the outcome, the time, a random app-generated ID (not linked to you), the phone's maker, the Android version and the app version. Such text can include a payer's name and an amount.
- What is never sent, even when it is on: Pix that FalaPix announced, your history, and bank notifications that do not look like a Pix payment or mention Pix (codes, balances).
- When: only after you tap "Share for 7 days" in the invitation, or turn on "Share missed notifications" in Settings > Help & privacy. It switches itself off after 7 days, and you can turn it off at any time in Settings.
- Where: Google Firebase Cloud Firestore (Google Cloud), encrypted in transit.
- Purpose: only to teach FalaPix to recognise new bank wording.
- Retention: deleted automatically 30 days after it is received.
- Legal basis (LGPD): your consent (art. 7, I). You can withdraw it at any time.
5. Internet Permission
FalaPix declares the INTERNET permission for the Firebase traffic described in section 3, for Google Play Billing required to verify subscription status, and, only if you opt in, the diagnostics in section 4a. The core listening loop (notifications → parsing → voice announcement) runs entirely offline.
6. Subscriptions and Google Play Billing
FalaPix offers paid subscriptions processed through Google Play Billing. When you subscribe:
- Google Play handles the entire payment flow. We never see, store, or transmit your credit card, UPI, or other payment details.
- The App receives only a subscription status token from Google Play that tells it whether your subscription is active.
- Subscription records held by Google Play are retained by Google according to Google's policies.
Google Play's privacy policy: https://policies.google.com/privacy
7. Permissions We Request, and Why
- BIND_NOTIFICATION_LISTENER_SERVICE (special) → Detect Pix notifications from your bank apps. Read-only, on-device only.
- VIBRATE → Pulse the phone when a Pix arrives so you feel it.
- REQUEST_IGNORE_BATTERY_OPTIMIZATIONS → Prompt for the system battery exemption so Android doesn't kill the listener while you're working.
- INTERNET → Send the anonymous analytics described in section 3, deliver crash reports to Firebase, verify subscription status with Google Play and, only if you opt in, send the diagnostics in section 4a.
- BILLING → Process subscription purchases via Google Play.
We do NOT request: location, contacts, microphone, camera, files, SMS, call log, calendar, accounts, or any other sensitive permission.
8. Data Retention
- On-device announcement history: kept in the app's private DataStore until you tap "Clear history" or uninstall (whichever comes first). A rolling cap of 200 entries is enforced automatically.
- Firebase Analytics: retained per Google's defaults (currently 14 months for event data).
- Firebase Crashlytics: retained per Google's defaults (currently 90 days for non-fatal events, 90 days for crashes).
- Firebase Performance Monitoring: retained per Google's defaults.
- Optional diagnostics (Firestore): deleted 30 days after receipt.
You can request deletion of your Firebase Analytics data by emailing us the Firebase Installation ID surfaced in your device's app info.
9. Children
FalaPix is intended for adult merchants. We do not knowingly collect data from anyone under 18. If you are a parent and believe your child has used FalaPix, contact us and we'll delete any associated data.
10. Your Rights Under Brazilian LGPD and Equivalents
If you are a resident of Brazil, the Lei Geral de Proteção de Dados (LGPD, Lei nº 13.709/2018) gives you the right to:
- Confirm that we process data about you
- Access the data we have about you
- Correct incomplete or inaccurate data
- Request deletion of unnecessary or excessive data
- Object to processing
- Request data portability
- Be informed about third parties we share data with (we share with Firebase / Google only, as described in section 3, including Cloud Firestore when you opt in to section 4a)
To exercise any of these rights, email support@binaryscript.com with the subject line "LGPD request" and we'll respond within 15 days. Note that because we do not collect personally identifying information, we may not be able to identify your data without help (e.g., your Firebase Installation ID).
The same rights are available under EU GDPR for European residents and under similar laws in other jurisdictions.
11. Security
- All Firebase traffic is encrypted in transit (TLS 1.2+).
- The on-device announcement history is stored in Android's app-private DataStore, which is sandboxed at the OS level and not accessible to other apps.
- We do not store credentials of any kind because we never see them.
No internet-connected service can guarantee absolute security; we maintain reasonable industry-standard safeguards.
12. Changes to This Policy
If we materially change what FalaPix collects, we will publish an updated policy at the same URL with a new "Last updated" date and, if the change is significant, prompt you to review it inside the app before the next session of use.
13. Contact
BinaryScript
Bangalore, India
Email: support@binaryscript.com
For privacy-specific requests, please use subject line "Privacy" or "LGPD request" so it routes correctly.