Provider types
Breadbox supports three ways to bring in bank data. Each has different setup requirements and capabilities.Plaid
Connects to thousands of US financial institutions using Plaid’s secure link flow. Supports automatic sync and real-time webhooks.
Teller
An alternative to Plaid for some US banks. Uses mTLS-based authentication and the same dashboard-driven connection flow.
CSV import
Manually import transactions from a CSV file your bank provides. Works for any institution, with no API credentials required.
When to use each provider
| Provider | Best for |
|---|---|
| Plaid | Most US banks and credit cards. Widest coverage, automatic sync, balance tracking. |
| Teller | Banks or credit unions where Teller has coverage but Plaid does not, or as an alternative to Plaid. |
| CSV | Institutions not covered by Plaid or Teller, historical data imports, and one-time migrations from other tools. |
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, Cloudflare Tunnel is a free option that creates a stable public URL for your local instance.
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 Plaid
Set up Plaid credentials and link your first bank account.
Connect with Teller
Configure Teller and enroll a bank using the Teller Connect flow.
Import from CSV
Upload a CSV export from your bank and map columns to Breadbox fields.