Link with Bank Login (Account Aggregation)

Create an ACH-US node with Bank Login information

Request Body

KeyTypeDescription
typestring[Required] Type of node. Set as ACH-US
info.bank_idstring[Required] User's encrypted bank login username. See Encrypting Sensitive Information
info.bank_pwstring[Required] User's encrypted bank login password. See Encrypting Sensitive Information
info.bank_namestring[Required] This is the bank_code (i.e. "capone" for Capital One). See View All Institutions for a list of supported banks and their respective bank codes

📘

Timeout

Bank logins may take a while. This is why most bank login interfaces are interactive to keep people engaged. We recommend a timeout window of 100 seconds.

Sandbox Test Values

Login Credentials

Account Aggregation Sandbox Values

Bank Login Errors

Login Errors

Sync Errors

Username ‌‌  ‌‌  ‌‌ ‌‌  ‌‌  ‌‌  ‌‌  ‌‌  ‌‌  ‌‌Bank NameHTTP CodeError Code
synapse_no_accountsfake402460
synapse_bank_requestfake402500
synapse_maintenancefake503503

Force Refresh

When submitting a new bank login, append any of these values to the end of the password. When doing a force_refresh on the node, it will trigger the corresponding responses:

Append ‌‌  ‌‌  ‌‌ ‌‌  ‌‌  ‌‌  ‌‌  ‌‌  ‌‌  ‌‌Result
_sync_balance_higherBalance updated to amount between $800-$1500
_sync_balance_lowerBalance updated to amount between $10-$50

Common Errors

Authentication Errors

HTTP CodeError CodeDescription
400200Triggered when something is not correct at the payload level. Mostly always for bad user credentials. But can also be triggered when payload is not formatted correctly or the institution is not supported.
402460No ACH capable account found
402500Either the account is locked or the bank is requesting user's attention (because they are not set up completely or set up or for some other reason).
503503Service unavailable due to Bank or Synapse maintenance.

Sync Errors

HTTP CodeError CodeDescription
400410Refresh not allowed: Refresh is not supported for the selected bank (e.g. Ally).
401110Bad credentials: Update the user's credentials by re-linking the account via bank logins.
500500Unknown refresh error: Not to be confused with a general server error or unknown login error.
50503Refresh temporarily unavailable: This account is eligible for refresh but a temporary error (e.g. bank maintenance) caused it to fail. Try again later.
Language