You can track expenses automatically on an iPhone in India — but not with an app that reads your bank SMS, because iOS does not let any app do that. Apple has never shipped an API for reading the Messages inbox, and most automatic expense trackers built for India are built on exactly that. The methods that do work on iPhone are email alerts, a bank or Account Aggregator connection, statement imports, and manual entry. Of those, reading transaction alerts from your mailbox is the only one that behaves identically on iOS and Android, because it never touches the handset at all. But “reads your email” covers two arrangements that are not remotely equivalent, and which one an app uses decides where your bank mail ends up and whether you can switch it off without asking them.
Public iOS APIs for reading your SMS inbox
In India, almost every rupee that moves generates a text message. A UPI debit, a card swipe, an ATM withdrawal, a salary credit — each one lands in your Messages app within seconds, in a fairly predictable format, from a fairly small set of senders. For anyone building an expense tracker, that inbox is the single richest source of transaction data in the country, and it needs no bank partnership, no regulatory approval and no integration work.
On Android, an app can ask for permission to read it. On iOS, it cannot ask at all.
This is not a gap someone forgot to fill. Apple deliberately does not expose the Messages database to third-party apps, and there is no entitlement you can apply for that changes it. iOS does include a narrow message-filtering extension, intended to help sort texts from unknown senders into a junk folder — but it runs in a locked-down sandbox, it cannot hand message content back to the app that ships it, and it is useless as a transaction feed. There is no version of “read the user’s bank SMS” that ships on the App Store.
So an expense tracker whose automation is built on SMS parsing does not have a slightly worse iPhone app. It has no capture layer on iPhone whatsoever. What usually happens next is one of two things: the app stays Android-only, or it ships an iOS version where the automation quietly becomes manual entry. That single platform decision is why India’s expense-tracking market looks the way it does, and it explains the asymmetry better than any individual app’s roadmap.
Ask one question before you install anything: where does this app get its transaction data on iOS specifically? If the answer is “SMS”, the automation you saw in the screenshots is Android-only. If the answer is vague, assume manual entry.
Here is every realistic way an app can learn about a transaction on an iPhone in India, and how each one holds up. This compares capture methods, not specific products — because the method is what determines whether an app can work on your phone at all. If you would rather see the same ground covered as a walkthrough, what actually works for tracking expenses on an iPhone takes each option in turn and states what it misses.
| Method | Works on iPhone | Automatic | The catch |
|---|---|---|---|
| Reading bank SMS | No | — | No iOS API exists. Android-only by construction. |
| Reading app notifications | No | — | Android exposes a notification listener; iOS has no equivalent. |
| Reading email alerts | Yes | Yes | Only covers accounts that actually email you. You may need to switch email alerts on in netbanking. |
| Bank login / Account Aggregator | Yes | Yes | Needs credentials or AA consent. Coverage varies by bank, and it is a much broader grant of access. |
| PDF statement import | Yes | No | Retrospective and manual. You are reconciling last month, not seeing this one. |
| Manual entry | Yes | No | Works perfectly and nobody sustains it. This is where most tracking dies. |
Two things fall out of that table. First, the iPhone problem is real and structural — the two techniques that made Indian expense tracking effortless on Android are both unavailable, and no amount of engineering changes that. Second, it is solvable, just not with the same trick.
Email parsing works on an iPhone for a slightly boring reason: it never runs on your iPhone. Your mailbox lives on Google’s servers. Reading it is a matter of authorising access to that mailbox, which is an account-level permission rather than a device-level one. The phone in your hand is irrelevant to whether it works.
That has a consequence worth stating plainly. An expense tracker built on email is not ported to iOS. It has no iOS-specific capture problem to solve, because the capture never depended on the operating system. iPhone and Android users get the same automation on day one, and they keep getting it when Apple changes its permission model, because there is nothing in the chain that a handset permission can break.
It also sidesteps the permission that makes people uneasy in the first place. An app that never reads your SMS never has to ask for SMS access — which matters if you have looked at the permission list on a budgeting app and closed it again. That argument gets its own page: expense tracking without SMS permission.
Being straight about the limits, because they are the reason to check before you commit:
“It reads your email” describes two arrangements that have almost nothing in common, and the difference is the most useful thing to check on an iPhone tracker. One of them asks you to send your bank mail somewhere else. The other asks you to grant scoped access to where it already is.
| Forward to an alias | Scoped API access | |
|---|---|---|
| Where your bank mail lands | On a mail server the app owns | Stays in your mailbox |
| What you set up | A forwarding rule or filter | One permission grant |
| Scope | Whatever the rule matches, and anything it over-matches | Declared, and reviewed against the feature |
| Consent screen | None | Google’s own |
| How you revoke it | Remember the rule exists, then delete it | Your Google Account permissions page |
| Independent security review | None required | Required before the scope is granted |
The revocation row is the one that matters most in practice. A forwarding rule has no expiry, no audit trail and no page listing it as an active connection. It keeps working after you delete the app, after you forget you set it up, and after the company is acquired by someone else. A scoped grant appears in your Google Account alongside every other app you have connected, and withdrawing it takes one click without the app’s cooperation.
The review row is worth understanding too. Google classifies mailbox read access as a restricted scope — its most sensitive tier — and an app cannot simply request it and ship. It has to pass an independent third-party security assessment first, against the Cloud Application Security Assessment framework, and be re-verified periodically. Asking someone to forward mail to an address you control routes around that entirely, because no scope is being granted at all. The detail is on the security page.
Does my bank mail stay in my mailbox, and can I revoke access without asking you? Both arrangements will honestly describe themselves as reading your email. Only one of them leaves the mail where it is and the off switch in your hands.
TLDR Money reads the transaction alerts already sitting in your Gmail — UPI debits, card spends, salary credits — and files each one automatically. There is no manual entry, and connecting the account backfills three months of history immediately, so the first screen you see has a real spending pattern on it rather than an empty state.
Because the capture layer is Gmail, the iPhone build is not a compromise. It is the same product.
Alerts are parsed and categorised automatically, with three months backfilled the moment you connect.
Mutual funds, stocks, gold, real estate and FDs roll into a single net-worth figure with one honest trend line.
Your FI number, how far along you are, and a projected retirement date — modelled for Lean, Coast and Fat FIRE.
Access is read-only, which is a hard limit rather than a policy: a mail scope cannot move money, place a trade or open an account, because those operations do not exist in it. Your financial history is not warehoused on our servers either — the architecture is described on the security page, and your rights over the data are in the privacy policy.
One more thing that follows from the business model rather than the platform: TLDR Money is funded by subscription alone. No ads, no referral fees, no fund distribution commissions, no lending arm. An app that earns from placing a loan in front of you has a reason to read your spending differently than one that earns ₹299 a month. That argument is on the about page.
No. iOS provides no public API that lets a third-party app read your Messages inbox, and Apple has never offered one. There is a narrow SMS filtering extension for sorting messages from unknown senders, but it runs sandboxed, cannot pass message content back to the app that contains it, and cannot be used to build a spending tracker. Any Indian expense tracker whose automation depends on reading bank SMS therefore cannot deliver that automation on an iPhone, regardless of how well it works on Android.
Because they were built around bank SMS. In India nearly every UPI debit, card spend and salary credit generates an SMS, which made the inbox the cheapest reliable source of transaction data — and Android has a permission that lets an app read it. iOS has no equivalent. An app built on SMS parsing has no capture layer at all on iPhone, so it either ships Android-first or asks iPhone users to enter transactions by hand.
By reading a source that isn’t the SMS inbox. The realistic options are email alerts from your bank and card issuer, an Account Aggregator or bank connection, importing PDF statements, or manual entry. Email parsing is the only one of these that behaves identically on iOS and Android, because it reads your mailbox through Gmail rather than anything on the handset.
Not on iOS. Android exposes a notification listener service that an app can use to read notifications posted by other apps, which is how some trackers capture transactions without SMS. iOS has no equivalent API — an app cannot read another app’s notifications. This is the second reason capture techniques that work on Android don’t transfer to iPhone.
It depends on the scope the app requests and what it does with the data. Read-only access to your mail cannot move money, place trades or open accounts — those actions are not possible through a mail scope at all. What matters is whether the app requests the narrowest scope it can, whether it warehouses your financial history on its own servers, and whether it sells or shares the data. You can revoke a Google connection at any time from your Google Account permissions page, independently of the app.
Yes — that is the point of building on Gmail rather than SMS. Because the capture layer reads transaction alerts in your mailbox instead of anything on the device, an iPhone gets the same automatic categorisation, the same net worth roll-up and the same FIRE projection as an Android phone. TLDR Money is not open to everyone yet; seats are opening in batches and you can join the waitlist.
Because it reads your Gmail, not your handset. Full access for 14 days, no credit card.
Join the waitlistWe are opening seats in batches. No spam, ever.
Platform behaviour described here reflects iOS and Android as of August 2026 and can change with an OS release. This is an explanation of how transaction capture works on each platform, not advice about your own money.