When a payment notification arrives, the app captures your location at that very moment — so a month later, you can actually remember.
Download APK · v0.5.0Direct sideload · 22 MB · Android 8.0+ · Coming to Google Play soon
How it works
Set permissions once. Then forget about it — the app handles the rest in the background.
Reads bank/card payment notifications via NotificationListener. Supports 10+ languages and major cards globally.
The instant a payment arrives, fetches GPS once with battery-friendly accuracy. Reverse-geocodes to country / city / district.
Saves merchant + amount + time + place into a local database on your phone. Browse later by timeline, map, or category stats.
Privacy promise
This isn't a marketing line — it's the architecture. We physically don't have a server that can receive your data.
No developer servers, everAfter installation, the app does not communicate with any developer-controlled server. There is no account, no sign-in, no telemetry.
Records stay on your phone's local SQLite databaseAll payments, locations, and notes are stored only inside the app's private storage on your device.
Optional cloud backup uses YOUR own cloudIf you enable backup, the app writes to a folder you choose in your own iCloud Drive or Google Drive. We never see, route, or proxy your data.
Uninstall = full deletionRemoving the app removes all related data. There's nothing left elsewhere.
No analytics, no tracking, no ads SDK in coreFree version may show banner ads via AdMob (which sees only an anonymous advertising ID — never your payment data). Pro removes ads entirely.
If you choose to back up to your own iCloud / Google Drive, the security of those services is governed by Apple and Google — not by us. We recommend keeping cloud backup OFF unless you understand the trade-off. Any data leak originating from your own cloud account is your sole responsibility.
Features
Use the free version forever. Upgrade once for everything else.
Languages
UI auto-matches your phone's language. The payment parser recognizes keywords in all of them — so cards in any of these regions just work.
Install
Google Play submission is in preparation. For now, install directly:
wherespent.apk and tap Install.Or with USB debugging:
FAQ
This is the core feature. Banks and card apps push payment notifications to the OS notification tray. The app reads only those — never your messages, social, or other notifications. Skipped packages: Gmail, Instagram, Facebook, X/Twitter, TikTok, Spotify, Netflix, YouTube, system UI.
Because payment notifications can arrive when the app is in the background or the phone is locked. Without the "always" permission, Android blocks location reads in those moments. The app fetches location once per payment with battery-balanced priority — never streams location.
No — and this is unfortunately a hard Apple restriction, not our choice. iOS sandboxes prevent third-party apps from reading payment notifications from other apps. The auto-capture model that defines this app simply isn't possible on iOS.
Currently unsupported. Most US/JP card issuers send email-based receipts, which we cannot read. A Gmail integration is on the roadmap as an opt-in Pro feature using your own Google account.
Using Android's built-in Geocoder — your raw GPS coordinates are converted on-device to country, administrative area, locality, sub-locality. Coordinates are also rounded to a 100m grid, so small location jitter doesn't fragment your travel stats.
Realistic risks: (1) someone with physical access to your unlocked phone could open the app and see entries. Use a phone PIN. (2) If you enable cloud backup, your iCloud/Drive account credentials are the weak link. (3) AdMob assigns an anonymous advertising ID. None of these involve our servers — because there are none.