Providers supported
Breadbox currently supports three ways to bring in bank data. If you’re setting up for the first time, Teller is the easiest starting point: the free Development tier connects to real accounts immediately, with no production approval process to wait on.Teller
Recommended starter. Real bank connections on the free Development tier without a production approval process. Uses mTLS-based authentication.
Plaid
Widest US coverage — thousands of institutions, automatic sync, webhooks, and balance tracking. Worth the extra setup once you’re ready for production.
CSV import
Works for any institution, with no API credentials. Useful for banks Plaid and Teller don’t cover, historical data, and migrations from other tools. BETA
Connection statuses
Every connection has a status that tells you whether Breadbox can sync data from it.| Status | Meaning |
|---|---|
active | The connection is healthy. Sync runs on schedule. |
pending_reauth | Your session or OAuth consent with the bank is about to expire. Re-authentication is needed soon but sync is still working. |
error | Sync is blocked. The bank rejected the stored credentials or a login change occurred. You must re-authenticate before data will update. |
disconnected | You intentionally removed this connection. Your historical transaction data is preserved, but no new data will be fetched. |
Disconnecting a bank does not delete your transaction history. All previously synced transactions remain in your database and can still be queried.
How automatic sync works
Breadbox keeps your data up to date using two complementary mechanisms: Scheduled sync (cron): Breadbox syncs all active connections on a regular interval you configure during setup (every 4, 8, 12, or 24 hours). This ensures data stays fresh even if event-driven updates are unavailable. Webhook-driven sync: When you configure a public webhook URL, Plaid and Teller send a notification to Breadbox as soon as new transactions are available. Breadbox immediately triggers an incremental sync for that connection. This gives you near-real-time updates without relying solely on the polling interval. If no webhook URL is configured, Breadbox falls back to cron-only syncing.Your webhook endpoint must be reachable from the internet. If you run Breadbox at home or behind a firewall, Remote Hosting covers four options — exe.dev, Cloudflare Tunnel, Caddy on a VPS, and Tailscale Funnel — that each give you a stable public URL.
Managing connections from the admin dashboard
The Connections page in the admin dashboard lists every bank connection with its current status, family member, account count, and last sync time. From this page you can:- View a connection’s accounts, balances, and sync history.
- Sync now to trigger an immediate incremental sync for any active connection.
- Re-authenticate connections that are in
errororpending_reauthstatus. Breadbox opens the bank’s secure login flow in the same browser session. Your stored transaction history is not affected. - Remove a connection to stop future syncing. Transaction data is kept.
Next steps
Connect with Teller
Configure Teller and enroll a bank using the Teller Connect flow.
Connect with Plaid
Set up Plaid credentials and link your first bank account.
Import from CSV
Upload a CSV export from your bank and map columns to Breadbox fields.