With your permission, NetWorth+ reads the alert messages your bank and card issuer already send, pulls out the amount, date and merchant, and drops each one into your Financial Inbox for approval. Nothing is recorded until you approve it.
STARBUCKS
VM-HDFCBK · 8 Aug
-$6.40
AMZN MKTPLACE
4-digit short code · 7 Aug
-USD 45.20
Foreign currency: check before approving
Unrecognised merchant
Category not guessed
-$18.00
Message text stays on this phone
Four steps, all of them on the device in your hand.
Incoming SMS · VM-HDFCBK
Rs 1,250.00 debited from A/c XX4471 on 08-Aug-26 at STARBUCKS. Avl Bal Rs 42,310.55.
Parsed on device
Waits in your Financial Inbox
Nothing reaches your ledger until you approve it.
Only messages from bank and business senders are examined. Messages from personal numbers are skipped before anything is read. The check accepts both operator-prefixed alphanumeric headers like VM-HDFCBK and the four-to-eight digit short codes used in the US and UK.
Banks write numbers differently everywhere. The parser reads both separators to decide which one is the decimal, so KD 18.500 is 18.5 dinars while USD 1,234 stays 1,234. A number it cannot read with confidence is dropped rather than imported as zero.
There is no built-in registry of bank sender IDs to fall out of date. Matching runs against the account names you created, so it covers credit unions, regional banks and neobanks from the start, and improves as you add accounts.
Every parsed row lands in the Financial Inbox as a pending entry. Approve, edit or skip, individually, or several at once with multi-select.
Which account?
Left unassigned. Nothing is booked on a guess.
And it learns
Correct a scanned row's category once and that merchant is remembered. Learning is on by default for scanned rows only; a description you typed yourself is free text, not a merchant name.
The SMS permission is the most sensitive thing NetWorth+ asks for, so here is exactly what happens to it.
Parsing happens on the device. Message content is never uploaded to our servers and is never shared with anyone. What reaches your ledger is the transaction you approved: amount, date, merchant, not the message.
The sender is checked before the body is. A message from a personal number is skipped without being examined.
The feature ships disabled. Enabling it requests the permission at that moment, and if you refuse, the switch stays off rather than reading ON while silently doing nothing.
Withdraw the permission from Android settings or from inside the app. Transactions you already approved stay in your ledger, because they are yours.
The first scan looks back 30 days, not a year. Every parsed row needs a decision from you, and a year of messages on a busy phone produces hundreds nobody finishes, which then buries the handful arriving daily. After that, scanning resumes from wherever it last left off.
Each message is fingerprinted by sender, minute and body. Re-scan as often as you like; a message that was already imported is recognised and skipped.
SMS capture is the loudest thing that fills the Inbox, but it is not the only one. The Inbox is where anything needing a decision collects:
The bell badge counts every one of them from a single place, so the number on the bell always agrees with what is actually inside.
NetWorth+ is available for Android and iPhone. No bank login, no advertising, and nothing recorded until you approve it.