Chatbot Bank Logins (Account Aggregation)

Product in Closed Beta

This a new product for us, currently being tested and improved with a select group of pilot platforms. Details of this product might change. Due the nascency of closed beta offerings, we cannot provide the same SLA guarantees of our released products.



You can see a demo of our bank logins Chatbot here.

Previous Steps

Before using our bank logins Chatbot make sure you:

1.Use our V2 Dashboard

  • Existing platforms have the option to migrate to our V2 Dashboard by following the Sandbox Link or Production Link.
  • New platforms will be on-boarded onto the new dashboard.
  1. Enable our Bank Logins (Account Aggregation) product.

  2. Issue your Public_key and OAuth_key, based on our User Authentication guide.

If you don’t have Bank Logins and are interested in learning more about it, please contact your Platform Architect (PA), who can give you context and connect you with our Sales team. If you fulfill the above requirements, the last step will be to contact your PA and ask for Chatbot controls.


1. To get access to Chatbot please include the following script tag in your website’s HTML.

<script src=""></script>

2. In order to initialize the Chatbot you must invoke the Synapse.create function, passing in a configuration object. The configuration object is required.

var configuration = {
     defaultPath: 'BANK_LOGINS',  // (required)
     generatePublicKey: function() {
       // (required) a callback function which generates and returns the public key
       return 'your_public_key'
     generateOauthKey: function() {
       // (required) a callback function which generates and returns the oauth key
       return 'your_oauth_key'
     generateUserId: function() {
       // (required) a callback function which get a user id
       return 'your_user_id'
     env: 'UAT', // (required) can be ‘production’ or ‘UAT’ (sandbox)
     onError: function(data){} // (optional) callback that is called when a user gets an error


Parameters to Initialize Chatbot

Parameter ‌‌  ‌‌  ‌‌ ‌‌  ‌‌  ‌‌  ‌‌  ‌‌  ‌‌  ‌‌


[Required] Will be BANK_LOGINS. When we add features to Chatbot this parameter will define which feature Chatbot will be used for.


[Required] The Synapse API environment on which to create user accounts. For development use UAT, and use production for Production.


[Required] A callback function which generates a public key. Used to renew public keys.


[Required] A callback function which generates a Oauth key. Used to renew Oauth keys.


[Required] A callback function to get a user ID.


A callback is called when a user gets API error, return error code and description.

3. Next, you need to open the chatbot, which can be done by invoking the function.

Example: Invoking the function on a click of a button

$('#buttonId').on('click', function() { //ID of the button that would trigger Chatbot.;

Example of the whole HTML file

<!DOCTYPE html>
<html lang="en">
 <meta charset="UTF-8">
 <meta name="viewport" content="width=device-width" />
 <script src=""></script>
 <script src=""></script>

<button id="link-button">Open Chatbot</button>

   var config = {
      defaultPath: 'BANK_LOGINS',
      generatePublicKey: function() {
        return 'public_key_qWCwNJcVPT2jMY105s7K6bUDm3gixoXkf94ZrR8F'
      generateOauthKey: function() {
        return 'oauth_snMDtxJzhaLR13BIEAFNSiqjdXkYZ0uvowpyrKC4'
      generateUserId: function() {
        return '5cdca3d814ddee0064a05b17'      
      env: 'UAT',
      onError: function(data){
        // (optional) a callback is called when a user get an error

   (function() {
     $('#link-button').on('click', function(e) {;
 <div id="app"></div>


Chatbot Errors

If Chatbot is not functioning properly (e.g. the window is not opening), please reload Chatbot. If after several attempts Chatbot is not working, please contact our customer support team and we will investigate the reported issue.

Bank Logins Errors

API errors will be handled by Chatbot directly, including any possible required input by the user. The platform does not need to take action in this process. The platform can call onError which will return the error code and a description.

For the list of our API error codes please refer to our Error Status Codes and our HTTP Status Codes.


Our Chatbot solution allows for branding customization including the company’s logo, colors, style of buttons, and more. If you have Chatbot enabled you will be able to find the customization option in our V2 dashboard by following the steps below or by following:

Finding the Chatbot Customization on the DashBoard

Once you are in the customization page you will be able to select among the different options. If you forget to change them to your preference they will default to the settings seen below.

Default Aesthetic Settings

We are in the process of continuously improving and adding new features to our Chatbot customization. Expect additional levels of customization as we move forward.

What Does the Bank Logins Chatbot Do?

Our white-labeled Chatbot solution allows for platforms to provide a superior user experience while requiring very little setup or maintenance efforts. When using Chatbot, platforms do not have to build most of the logic required to make use of our APIs. At the user level, Chatbot creates a seamless experience that considers all possible scenarios and allows the user to provide all inputs and take all steps inside the chat.

  • EXCEPTION: If the user exceeds the allowable threshold for username/password/multi-factor authentication (MFA) attempts, the account will be locked. Chatbot will then provide a prompt directing the user to instead use their bank website.

Currently, Chatbot is only available for Bank Logins (Account Aggregation), which enables users to connect their bank account to allow transactions and to provide account data. We are in the process of expanding Chatbot to include more of our products.

Chatbot Bank Logins (Account Aggregation)

Suggested Edits are limited on API Reference Pages

You can only suggest edits to Markdown body content, but not to the API spec.