Skip to content
Announcements

Connect Your US Bank

US bank accounts now connect to Expensicat through Stripe Financial Connections. Expensicat reads balances and transactions from the accounts you choose, and that's all it asks Stripe for.

Expensicat now connects to US bank accounts. If your business banks in the United States, you can link your accounts through Stripe Financial Connections, and their transactions land in the same workspace as your invoices, receipts and bills.

Until now, connecting a bank meant GoCardless, which covers European banks. A US freelancer or small team could bring transactions in by importing statements, but an import is only as current as the last time you remembered to do one.

How connecting works

Owners and admins open Settings → Bank accounts → Connect bank, or reach the bank step during onboarding, and choose United States as the country. Instead of a list of banks there's one button, Connect a US bank, which opens Stripe's window over Expensicat. You find your bank there, sign in with it and pick the accounts to share. Stripe also offers to save them with Link, which you can skip.

Back in Expensicat, the usual account picker lists the accounts you linked, each with its balance, and you choose which ones to connect. Any you leave out are disconnected at Stripe right away. If you link your personal checking account along with the business one and leave it out in the picker, Expensicat keeps no access to it.

The last 90 days of posted transactions come in when you connect. After that, new ones arrive when Stripe refreshes the account, which it does daily, and on Expensicat's own sync twice a day. Pending transactions show up once they post. The balance comes from your bank when you connect and stays current from the transactions that post afterwards, and once a month Expensicat asks the bank for it again.

From there, US transactions go through everything Expensicat already does with bank transactions: categories, matching to receipts and bills, recurring payments, suppliers and notifications.

What we ask Stripe for

Expensicat asks for balances and transactions, because that's what keeping your books takes. It doesn't request your account and routing numbers or the owner's details, and it can't move money. We'd rather not hold data we don't use, and account and routing numbers that Expensicat never receives can't leak from it.

If you already take card payments on your invoices through Stripe, that's the Stripe Payments integration. A US bank connection is a different job: it lives under Bank accounts and reads your bank account.

When access lapses

Banks stop sharing data for ordinary reasons, like a changed password, revoked access, or the bank wanting you to sign in again. The connection then shows Connection expired, and the workspace owner gets a notification. If Stripe regains access on its own, the connection comes back without you doing anything.

If it doesn't, Reconnect links the bank again, and its accounts come in as new ones while the expired accounts keep their history. Reconnect appears only on an expired connection. Disconnecting works as it does for any other bank, whether you keep the history or remove the connection, and either way Stripe's access ends.

What it doesn't do

US accounts have no IBAN, so they can't be the bank details printed on your invoices. You choose your bank in Stripe's window, not from Expensicat's bank list. European banks still connect through GoCardless, which is in beta, and any bank can still come in through a statement import from Transactions.

To connect yours, open Settings → Bank accounts and choose Connect bank. The release notes list every change.