Concurrent SDK Sessions

This page explains how Connect handles concurrent SDK sessions at the user level

Intro

Connect, by default, will prevent user's from operating multiple "SDK sessions". An SDK session is defined as an active JWT token. Connect will keep a record at the "user" level, ie the reference_id field within the POST /sessions call:

{
  "account": {
    "reference_id": "USER01" // the End User's participant_code that was created via POST /participants/customers/new within zerohash
  },
  "session": {
    "metadata": {  
	// The Organization can send in any metadata that will be performed in subsequent webhook calls
    }
  },
  "scopes": [
    "user:deposit:send" // enum: "user:deposit:send" || "user:withdrawal:request"
  ]
}

Logic

Once the first session has been established, and any subsequent session has been initiated, and the user makes an action (ie, clicking some action on the SDK) on the first session, the SDK will display the following error screen:

📘

Mobile vs. Web

This behavior functions “cross-platform” - for example if a user initiates a session on mobile, and then another one on web, the mobile session will be invalidated