Skip to content
03Privacy policy

Ledgerly

This policy explains what Ledgerly, an Android app for personal finance, does with your information, and the choices you have. It is written to be read.

Ledgerly is developed and published by Mad Max Labs, a sole proprietorship. In this policy, the words we and us mean Mad Max Labs, and Ledgerly or the app means the Ledgerly Android app.

Ledgerly is built to keep your financial life on your phone. It has no user accounts and no sign-in. Your transactions, balances, budgets, and forecasts are created and stored on your device, and we operate no server that receives or holds them. A small number of optional features can send specific data off your device when you choose to use them. This policy names every one of them, says what is sent and to whom, and explains how to turn each one off.

Last updated 18 May 2026

The short version

If you read nothing else:

  • Ledgerly has no account and no login. You do not give us your name, email, or phone number.
  • Your financial data is created and kept on your device. We do not hold a copy of it.
  • To capture your spending automatically, Ledgerly reads incoming SMS, and, only with your separate permission, certain on-screen order details and certain payment notifications. This processing happens on your device.
  • Some optional features can send data off your device, and only when you ask them to: the AI features (to OpenAI, using your own key), receipt and statement import when you have set an OpenAI key, the INR Deals offers feature, and web link previews. Each is described below.
  • Ledgerly has no advertising, no analytics or tracking tools, and we do not sell or share your data.

Reading incoming SMS

Ledgerly reads incoming SMS so it can build your ledger without you typing every purchase in by hand.

Ledgerly uses the RECEIVE_SMS permission. This covers only new messages that arrive while Ledgerly is installed. Ledgerly does not request the READ_SMS permission and cannot read your existing SMS inbox or message history.

When a message arrives, Ledgerly examines it on your device to see whether it looks like a financial transaction, that is, whether it contains transaction wording such as spent, debited, credited, or paid, together with an amount. Messages that do not match this pattern, including personal messages and promotional messages, are ignored and are not stored.

For a message that does match, Ledgerly keeps only the parsed details it needs: the amount, a merchant or description, the date and time, an identifier for the sending bank or service, and the last four digits of the card or account when the message includes them. The original text of the message is not stored. All of this happens on your device, and none of it is sent to us or to anyone else.

The accessibility service

Ledgerly includes an optional accessibility service. When you turn it on, it can read item and price details from your orders inside shopping and food-delivery apps, so that a single order becomes an itemized list in your ledger.

This service is turned off by default. It does nothing unless you enable it yourself in your phone's accessibility settings. When it is enabled, it is limited in three ways:

  • It works only within a fixed list of supported apps that is built into Ledgerly and cannot be edited by you. In this version that list is Blinkit, Zepto, BigBasket, Dunzo, Swiggy, Zomato, Uber Eats, Amazon, Flipkart, Myntra, Nykaa, Ajio, Google Pay, PhonePe, and Paytm, including their Lite variants. It does not read banking apps, messaging apps, or any app outside this list.
  • Item capture runs only when you actively ask for it, by tapping Ledgerly's capture button, its Quick Settings tile, or an action on a Ledgerly notification. It does not capture in the background.
  • Ledgerly can show you a confirmation, asking whether to log a purchase, before it saves what it has captured.

The details captured this way, such as item names, prices, and fees, are processed and stored on your device. They are not transmitted off your device.

Two related features use the same service and are also optional and off by default: the pre-swipe card nudge, which can suggest a card on a checkout screen inside the supported apps before you pay, and the on-screen spending reminder. If you turn the pre-swipe nudge on, it watches for checkout screens within those supported apps in order to show its suggestion.

Notification access

Ledgerly includes an optional notification reader. When you turn it on, it reads payment notifications so it can capture transactions that reach you that way. This is separate from SMS reading and from the accessibility service, and it is off until you grant notification access yourself.

When it is enabled, Ledgerly reads notifications only from a fixed set of payment apps: Google Pay, Paytm, PhonePe, BHIM, and WhatsApp. WhatsApp is included for one reason only, to capture WhatsApp Pay payment alerts. Ledgerly does not read your WhatsApp chats, your contacts, or any notification that is not a payment alert, and it ignores notifications from every app outside this set.

As with SMS, Ledgerly keeps only the parsed transaction details, not the original notification text, and this happens on your device.

Importing receipts and statements

You can import receipt photos and PDF statements into Ledgerly. Ledgerly only ever processes a file that you choose and hand to it. It does not browse or scan your photo library or your files on its own.

By default, Ledgerly reads an imported receipt or statement on your device, using Google's on-device ML Kit text recognition. In this default mode, the file does not leave your device.

If you have added your own OpenAI API key, described in the next section, import works differently: the receipt image or PDF you are importing is sent to OpenAI to be read. If you would prefer that imported files never leave your device, do not add an OpenAI key, or remove the one you have added.

Photos and media

Ledgerly requests access to images on your device for one narrow purpose. When you use the accessibility service's option to capture from a screenshot, Ledgerly briefly checks your device's media store to find that specific screenshot and attach it to the transaction. Ledgerly does not scan, browse, or upload your photo gallery.

AI features and OpenAI

Ledgerly has five optional features that use an AI language model: the spending insight narrator, the Card Concierge chat, the wallet roast, the goal price estimator, and AI-assisted import of receipts and statements.

These features are bring-your-own-key. They do nothing until you add your own OpenAI API key in Settings. The key is then used to call OpenAI directly from your device, billed to your own OpenAI account. Ledgerly ships with no API key of its own, and we run no AI service of our own.

Your API key is stored on your device, encrypted using the Android Keystore system (AES-256-GCM), and is excluded from Android's cloud backup.

Data is sent to OpenAI only at the moment you actively use one of these features, never in the background. What is sent depends on the feature:

  • The four text features (the narrator, the Card Concierge, the roast, and the goal price estimator) send summarized figures, not your raw list of transactions. For example: monthly totals, your top merchants or items, fee totals, a summary of the cards you have added, and, for the Card Concierge, the question you type.
  • AI-assisted import sends the receipt image or PDF file that you are importing.

Anything you send to OpenAI through these features is handled by OpenAI under its own terms and privacy policy, which you can read at openai.com/policies/privacy-policy. Mad Max Labs does not receive, store, or relay this data.

INR Deals offers

Ledgerly can show cashback and affiliate offers through a third-party service called INR Deals. This feature is off until you enter an INR Deals token in Settings.

If you connect it, Ledgerly runs a once-a-day background sync with the INR Deals service. That sync sends your INR Deals token, a publisher identifier, a random identifier that was generated on your device, and a range of dates. It does not send your transactions, your balances, or any of your spending data. When you choose to open an offer, Ledgerly opens an INR Deals affiliate link in your browser.

The random identifier is not tied to your name and is not sent to us; we operate no server that could receive it. If you never connect INR Deals, none of this takes place.

What leaves your device, at a glance

To put it in one place, here is everything Ledgerly can send off your device:

  • AI features: summarized figures, or a file you are importing, sent to OpenAI using your own key, and only when you use the feature.
  • Receipt and statement import: the file you are importing, sent to OpenAI, and only if you have added an OpenAI key.
  • INR Deals: a token, a publisher identifier, a random identifier, and dates, sent to INR Deals, and only if you connect it.
  • Web link previews: a request to a website you have linked to, in order to build a preview, unless you turn this off.
  • Android backup: a copy of the app's data may be included in your own device backup, as described under Storage below.

Ledgerly carries out no other transmission of your data. Everything in this list is optional or can be switched off, and none of it routes through a Mad Max Labs server, because we do not operate one.

What Ledgerly does not do

Some things are easier to state plainly:

  • Ledgerly has no user account and no login.
  • We operate no server that stores your financial data. Your ledger lives on your device, not with us.
  • Ledgerly contains no advertising and no advertising software.
  • Ledgerly contains no analytics, telemetry, or usage-tracking software, and we collect no usage analytics about you.
  • We do not sell, rent, or trade your personal or financial data, and we do not use it to build advertising or marketing profiles.

On crash reporting: Ledgerly includes no third-party crash-reporting or analytics tool. Because Ledgerly is distributed through Google Play, Google provides us with aggregated, anonymized stability information, such as overall crash rates, through Google Play's standard reporting for developers. This is a Google Play platform service. It is not something Ledgerly's own code collects or sends, and it does not identify you.

Storage, security, and backups

Your data is stored in a database on your device. Sensitive items, such as your OpenAI API key, are encrypted using the Android Keystore system.

Ledgerly allows Android's own backup feature to operate. This means that a copy of Ledgerly's on-device data may be included in the backup that Android makes to your personal Google account, depending on the backup settings on your device. That backup is created and controlled by Google and by you, through your Android settings. It is not a transfer of data to Mad Max Labs. Your encrypted OpenAI key is excluded from this backup. You can turn backup off for Ledgerly in your Android settings.

Permissions Ledgerly uses

The main Android permissions Ledgerly uses, and the reason for each:

  • Receive SMS: to read incoming transaction messages, as described above. Ledgerly does not request the separate permission to read your existing SMS inbox.
  • Accessibility service: to capture itemized order details inside the supported shopping apps, and to power the optional pre-swipe card nudge.
  • Notification access: to read payment notifications from the supported payment apps.
  • Display over other apps: to show the optional pre-swipe card nudge and the optional on-screen spending reminder.
  • Access to images: to attach a screenshot you have chosen to capture from, as described under Photos and media.
  • Internet access: to support the optional features that contact OpenAI, INR Deals, or a website you have linked to.

Each permission that involves reading SMS, screen content, or notifications must also be granted by you within Android itself, separately from installing the app.

Your rights and choices

Ledgerly is made for users in India, and this policy follows the principles of the Digital Personal Data Protection Act, 2023.

Because Ledgerly keeps your data on your device, and we hold no copy of it, you are in direct control of that data:

  • You can see all of your data inside the app at any time.
  • You can correct it: any transaction can be edited or recategorized in the app.
  • You can erase it: you can delete individual entries, clear data from Settings, or uninstall Ledgerly, which removes its data from your device. Because we keep no server-side copy, there is nothing held by us for you to request the deletion of.
  • You can withdraw consent: every feature that sends data off your device is off by default and is enabled only by you. You can withdraw that consent at any time by turning the feature off, removing your OpenAI key, or disconnecting INR Deals.

If you have a question or a complaint about privacy, you can contact us using the details at the end of this policy, and we will respond.

Children

Ledgerly is intended for adults managing their own money. It is not directed at children, and we do not knowingly collect data from children. Under the Digital Personal Data Protection Act, 2023, processing the personal data of a person under the age of 18 in India requires verifiable consent from a parent or guardian. Ledgerly is not designed for use by anyone under 18.

Contact and updates

Ledgerly is currently pre-launch. This policy will take effect with the first public release of Ledgerly on Google Play, and the date at the top will reflect that.

If we change this policy, we will update the date at the top, and we will note any significant change inside the app.

Ledgerly is published by Mad Max Labs, the trading name of Syed Zaid, who operates as a sole proprietor. Syed Zaid is the data fiduciary responsible for the personal data described in this policy.

For any question, request, or complaint about this policy or your privacy, you can contact us at visitzaid@gmail.com. We will respond.