How to track expenses on iPhone without giving an app your bank login?

Bank-sync budgeting apps want standing access to your account. Here's what that login hands over, and how Apple Pay tracking on iPhone works without it.

Get the app

The short answer: You can track spending automatically on iPhone without giving any app your bank login. A Shortcuts automation fires each time you pay with Apple Pay and passes the amount, merchant and date to the tracker you choose — no credentials, no aggregator, no standing access to your account. The cost is coverage: anything you don’t pay with Apple Pay needs a CSV import or a few seconds of typing.

Most budgeting apps open with the same screen: your bank’s logo, a search box, a login form. It’s presented as a setup step, like picking a currency.

I stopped filling that form in. Here’s why, what I use instead, and what that choice costs.

What you actually hand over when an app asks for your bank login

Behind that form there’s usually a data aggregator — Plaid, Yodlee, MX, Finicity. The app you picked is rarely the company talking to your bank.

The connection works one of two ways:

  • Your password. The aggregator stores your username and password and logs in as you, on a schedule, for as long as the connection lives.
  • A token. With some banks you log in on the bank’s own page, and the aggregator gets a token instead of the password. That’s a real improvement: the password never leaves the bank.

Either way, what you’ve granted is the same: standing read access. Not today’s coffee — every transaction, every balance, and, depending on what the app requests, account numbers and the name and address on the account. Refreshed until someone revokes it.

And that data now sits with two companies under two privacy policies, one of which you never chose. In 2022 a US court gave final approval to a $58 million class-action settlement with Plaid, over claims that it used people’s bank logins to collect their financial data without consent.

Deleting the app is not the same as revoking the access. That happens in your bank’s settings or in the aggregator’s own portal — if you remember it’s there.

What the Apple Pay trigger gives instead, and what it doesn’t

iOS Shortcuts has a personal automation called “When I tap a Wallet Card or Pass”. It fires when you pay with a card in Wallet and hands the shortcut three values: amount, merchant name and date. It runs on your phone. Nobody logs in anywhere, and nobody receives a token.

This trigger is why Expensa has no bank connection at all. That isn’t a feature I haven’t got to yet — it’s the design.

Logging each purchase by hand is the chore that kills most budgets, and the trigger removes it. Wire it to Expensa once and the tap is the log entry: the transaction is added without the app being opened, and a notification tells you what was recorded.

A tap at the terminal, then the same payment already in the app.

Prefer reading? The same two-minute setup is written up step by step, with screenshots.

What the trigger does not give you:

  • Anything you didn’t pay with Apple Pay. A card number typed at checkout, a chip-and-PIN payment, a bank transfer, a direct debit, cash.
  • Your balance. It knows about one payment, not about what’s left in the account.
  • History. It starts the day you set it up. Last month doesn’t exist to it.
  • Corrections. It fires once, at the tap. If the final charge changes afterwards — a tip added to the bill — nothing comes back through it.

What Expensa can and cannot see as a result

The input list is short. The app sees what the trigger sends, plus whatever you add yourself: a manual entry, a CSV exported from your bank’s own app, a scanned receipt.

It cannot see:

  • Your bank login. It never asks for one.
  • Your real bank balance. An account’s balance in the app is the starting balance you entered plus the transactions you’ve recorded. It’s your ledger, not the bank’s.
  • Any account you haven’t added. There’s no background discovery.

Your data syncs between your devices through your iCloud account. There’s no Expensa account to create — onboarding is picking a currency and checking that iCloud is available.

“No bank in the loop” is not the same as “no third party at all”, though. On the premium plan, each tap’s merchant name goes to OpenAI, together with your category names and a currency hint, so AI can pick the category. A receipt scan sends the image; an AI-assisted import of a PDF statement sends the document’s text. Your bank login isn’t in any of it, because the app never had one.

If you’d rather keep merchant names out of it, the free plan doesn’t use AI categorisation. Merchant rules you set yourself — “this merchant is always Groceries” — do that job instead.

The honest trade-off of not syncing a bank

Here is what you give up:

  • Automatic capture of everything. Rent paid by transfer, direct debits, cards typed into websites. Fixed bills can be set up once as recurring transactions (three active on the free plan). The rest is a CSV import from your bank once a month, or a few seconds of typing.
  • A balance that matches the bank to the cent. Miss a transaction and the app’s balance drifts until you notice.
  • Instant history. There’s no pulling in the last 90 days on day one. If you want the past, you import it.

You’ll feel this most if your money mostly moves by bank transfer and direct debit rather than Apple Pay: the trigger sees only a slice of it, and the monthly statement import does the rest. Loans and investment accounts don’t reconcile themselves either. And the trigger only exists on iPhone. The trade-off is laid out in more detail in how to replace Mint without Plaid.

For me, the other side of the scale is a few minutes of importing a month, weighed against standing access to my account for a company I never picked. I’ll take the few minutes.

Keep reading

View all
Expensa

Stop tracking.
Start knowing.

Receipts scan themselves. Budgets update in real time. Apple Pay transactions log the moment you tap.

Download for iPhone