Skip to main content
Add the bank account of the person or business you want to pay. You do this once. After that you send money to it with its externalPayeeId.
This is for someone else’s bank account, the account you are sending money to. To link the user’s own bank account as a funding source, see Linking bank account via Plaid.
Why you add the bank account first:
  • Enter bank details once. The full routing and account number are sent only here. After that you use the externalPayeeId.
  • The routing number is checked up front. A bad routing number is rejected when you add the account, before any money moves.
  • Sensitive data is not returned. Fluz stores the account number securely and returns only the last four digits.
  • No duplicates. Adding the same routing and account number again returns the bank account you already saved.
  • One list per account. Saved bank accounts belong to the Fluz account, so every authorized user on it sees the same list.
Two operations manage saved bank accounts:
  • createExternalPayee - Add a new bank account
  • externalPayees - List the saved bank accounts

createExternalPayee

Add a new bank account to the authenticated user’s account.

Mutation (CreateExternalPayeeInput)

Requires: MAKE_PAYOUT_TRANSFER_SEND scope.

Input

Response (ExternalPayee)

Example

Success:
Invalid input:

Error Codes


Checking a routing number

There is no separate endpoint to check a routing number. createExternalPayee checks it when you add the bank account: it must be 9 digits with a valid ABA check digit. If it fails, the request returns ARG-0001 and nothing is saved. To catch typos before you call the API, you can run the same check in your form. Multiply the nine digits by 3, 7, 1, 3, 7, 1, 3, 7, 1 in order and add the results. A valid routing number gives a total that divides evenly by 10.

externalPayees

List the saved bank accounts on the authenticated user’s account, newest first.

Query

Requires: MAKE_PAYOUT_TRANSFER_SEND scope.

Input (OffsetInput)

Response (ExternalPayeeConnection)

Example

Success:
No saved bank accounts:

Error Codes


Status

Only these two are returned. A removed bank account is not listed, and one that can’t be used is refused when you add it.

Important Notes

createExternalPayee

  • Only US bank accounts reachable by ACH are supported. The account type must be CHECKING or SAVING.
  • Adding the same routing and account number again returns the saved bank account. No duplicate is created.
  • If a bank account with the same routing and account number was removed earlier, adding it again restores it with its original details. New name, email, or nickname values in the request are not applied.
  • You cannot add a bank account that belongs to the authenticated user’s own Fluz account.
  • Some bank accounts cannot be added. In that case the request fails with a general error.
  • The full account number is never returned. Store the externalPayeeId, not the bank details.

externalPayees

  • Returns saved bank accounts for the whole Fluz account, not only those added by the current user.
  • Removed bank accounts are not listed.
  • Results are sorted newest first.

Next step

Send money to the bank account with createExternalPayout, using the externalPayeeId and a source cash balance.