Introduction
Integrating Knot is quite simple. You’ll need a basic client-side and server-side integration, including calling the API, invoking the SDK, and subscribing to webhooks.Entry Points
Overview
How and where you place entry points to invoke the Knot flow in your app play a crucial role driving engagement and delivering value to end users. Nearly all apps that integrate Knot develop multiple entry points into the Knot flow (e.g. different tabs or screens). As a result and to provide better visibility into the conversion of the flow across different entry points, the Knot SDK supports anentryPoint
parameter when invoking the SDK which allows you to specify the entry point from which the user came. This value is then returned in the down-funnel AUTHENTICATED
webhook event, thereby allowing you to measure the conversion of the flow by entry point in your analytics tool of choice.
Usage
It is strongly recommended to take advantage of this functionality, so as to future-proof your visibility into your implementation and allow for future optimizations. To take advantage of this functionality, simply pass a different value toKnotConfiguration.entryPoint
for each of your entry points when configuring the session to invoke the SDK.
Common entry points include the following: onboarding
, home
, push-notif-X
, in-app-lifecycle-card-X
, etc.
Start the Flow
Access your customer dashboad
Access your customer dashboad
Ensure you have access to your Customer Dashboard and retrieve your
client_id
and secret
, which you will use as the basic auth username and password for your API key respectively. Note that your client_id
and secret
vary between thedevelopment
and production
environments.Call the API to create a session
Call the API to create a session
With your
client_id
and secret
for the development
environment, call Create Session to create a session used when invoking the SDK.Install the SDK
Install the SDK
Install and import an SDK of your choosing, for example on iOS here. If you are using the Web SDK, make sure to allowlist your application’s domains for the
development
and production
environments in your Customer Dashboard.Initialize the SDK
Initialize the SDK
Initialize the SDK with the
session_id
retrieved from Create Session. The SDK is where users will interact with the Knot UI to authenticate to various merchants. All login flows, including step-up authentication, are handled with the SDK. Users will see real-time feedback as they progress through authenticating with a merchant.Handle Events
Handle SDK callbacks
Handle SDK callbacks
Handle
onSuccess
, onError
, onExit
, and onEvent
SDK callbacks to be notified of client-side events.Subscribe to webhooks
Subscribe to webhooks
Subscribe to webhooks so your backend can be notified about user-generated events, as well as asynchronous processes.
If you fail to receive a webhook, you can call Get Merchant Accounts to determine whether a user previously attempted to switch their card with a given merchant. Pass
type: card_switcher
in the request and capture the last_user_action
object.Switch a Card
Switch a card
Switch a card
Post card information to Switch Card or Switch Card (JWE) within 15 seconds of receiving the
AUTHENTICATED
webhook when send_card: true
, fired after a user authenticates to a merchant account. You can read more about sending card data to Knot here.