Link External Bank Accounts
A bank account is the lowest-cost, highest-reward funding source on Fluz. Bank accounts are linked through Plaid and settle via ACH — they carry no processing fees and earn the full merchant cashback rate.
Bank account linking and management is exposed through a public GraphQL wrapper. Identity-service remains the system of record for Plaid tokens, account ingestion, balances, historical transactions, and Plaid webhooks.
Bank accounts carry no processing fees and earn the highest cashback rate.On a 4% merchant offer, an ACH payment returns the full 4%, while a debit card returns 3% and a credit card 1% after processing fees. Where a user has the choice, a linked bank account is always the best-earning option.
What You Can Do
Everything below runs through the Plaid integration. See Add Bank Account With Plaid Link for full request and response details.
Linking
| Capability | Operation | Description |
|---|---|---|
| Create a Link token | createPlaidLinkToken | Generate the token used to open Plaid Link. |
| Complete a new link | completePlaidLink | Exchange Plaid's public_token and ingest the connected accounts. |
| Repair a broken connection | createPlaidLinkToken + completePlaidLink (with platformItemId) | Relink a previously connected institution that has disconnected. |
| Attach a required address | createPlaidLinkAddress | Add an address when completePlaidLink returns requiresAddress: true. |
Balances & Spend Power
| Capability | Operation | Description |
|---|---|---|
| List linked accounts | getPlaidBankAccounts | Return the safe metadata for all connected bank accounts. |
| Read stored balances | getPlaidBankBalances · getPlaidBankAccountBalance | Get the latest stored balance across accounts or for one account. |
| Read spend power | getPlaidBankAccountSpendPower | Return available spend power, last recorded balance, and pending activity. |
| Refresh one balance | refreshPlaidBankAccountBalance | Request a rate-limited realtime balance refresh for one account. |
| Refresh all connections | refreshPlaidBankConnections | Request a cached refresh across all connected Plaid data. |
Transactions
| Capability | Operation | Description |
|---|---|---|
| Read transaction history | getPlaidBankTransactions | Return historical, paginated bank transactions with merchant and category detail. |
Management
| Capability | Operation | Description |
|---|---|---|
| Remove an institution | removePlaidBankInstitution | Disconnect a linked bank institution and its accounts. |
Requirementsll bank account operations require a Fluz user access token that includes the MANAGE_PAYMENT scope.
MANAGE_PAYMENT scope.Bearer auth only. The Plaid fields do not accept Basic auth. Obtain a user access token through the standard authentication flow first, then call the Plaid fields with Authorization: Bearer <fluz-user-access-token>.
Balance Refresh Limitsalance refreshes are cost-controlled per Plaid institution:
- One realtime refresh per hour
- Six realtime refreshes per day
Calls made inside the limit window return the latest stored balance instead of triggering a new realtime request.
Savings Accounts
ng a login connects every account under it, including savings.Most banks do not permit payments from savings accounts. After linking, users should remove any savings accounts they don't intend to pay from to avoid failed transactions.
Unsupported Flowsicro-deposit linking is intentionally unsupported. New links and relinks must use the standard Plaid Link flow, which supports balances and historical transactions.
Securityns Plaid access tokens, Plaid public tokens, identity-match details, bank account numbers, or routing numbers. Only safe account metadata — such as institution name, last four digits, type, and user-entered labels — is exposed through the API.
Want to learn more? Speak with our experts for more info or to request a demo.
