M-Prism Privacy Policy
M-Prism is a bookkeeping app for Kenyan business owners. It reads the M-Pesa confirmation messages your phone already receives and turns them into a private, on-device business ledger. This policy explains exactly what the app accesses, what stays on your phone, and the one narrow category of data that leaves it.
The short version
- Your transactions, customer names, amounts, debts, products, and every M-Pesa message the app parses are stored only on your phone, in a local database. We do not run a server that receives them. We cannot see them.
- The app reads SMS only to find M-Pesa messages. Everything else in your inbox is ignored: never stored, never analyzed, never transmitted.
- The only data that leaves your phone is anonymous usage analytics (for example "a cash sale was logged") containing no amounts, no names, and no message content.
- Deleting the app deletes your data. There is no cloud copy.
What the app accesses, and why
| Access | Why M-Prism needs it |
|---|---|
| SMS (receive and read) | To detect and parse M-Pesa transaction confirmations — the app's core function. A filter checks each message for M-Pesa transaction patterns; messages that are not M-Pesa confirmations are discarded immediately and are never stored or transmitted. |
| Notification access (optional) |
A backup capture path: some phones use SMS apps that truncate or intercept messages, so the M-Pesa notification is read instead. The same filter applies — only M-Pesa content is processed; all other notifications are ignored. This access is optional and user-enabled in system settings. |
| Internet | Used solely to send the anonymous usage analytics described below and to check for app updates. Transaction data is never transmitted. |
| Biometrics / fingerprint | To unlock the optional app lock. Biometric data never leaves the Android system; the app only receives a yes/no unlock result. |
What stays on your phone
Everything the app knows about your business: the full original text of each M-Pesa transaction message it captures, the parsed transaction details, cash sales, customers, debts and payments, products, stock levels, categories, notes, and settings. All of it lives in a local SQLite database inside the app's own private storage, which no other app can read. It is not synced, backed up to us, or shared with any third party. PDF reports you choose to export are written to this same private storage and only leave it when you yourself share them through Android's share sheet. If you use Android's own device backup, that backup is governed by Google's terms, not ours.
The one thing that leaves your phone: anonymous usage analytics
The app sends behavioral events to PostHog (an analytics provider, servers at
us.i.posthog.com) so we can understand which features are used and fix what
breaks. These events are named actions such as app_opened,
cash_sale_logged, or pdf_exported, with technical context (app version,
platform).
Hard rules enforced in the app's code: analytics events never contain transaction amounts, counterparty or customer names, phone numbers, message text, or any other content of your financial data.
What we never do
- We never read, store, or transmit SMS messages that are not M-Pesa transaction confirmations.
- We never send your transactions, balances, customers, debts, or messages to any server.
- We never sell data, show ads, or share data with brokers.
- We never send messages from your phone. The "Send Reminder" feature only prepares a message and opens WhatsApp or your sharing menu — you review and send it yourself.
Your choices and control
- Delete everything: Settings contains a Delete All Data action that wipes the local database; uninstalling the app does the same.
- Notification access: optional, and can be revoked at any time in Android settings without losing SMS-based capture.
- App lock: optional PIN/biometric protection for the app itself.
Children
M-Prism is a business tool intended for adults. It is not directed at children under 18 and we do not knowingly collect data from them.
Changes to this policy
If this policy changes, the updated version will be published at this same URL with a new effective date. Material changes will be called out in the app's release notes.
Contact
Questions or requests about privacy: eliasgichuru0@gmail.com