Skip to main content

Introduction

Knot’s Vaulting product enables you to vault a digital wallet to a user’s merchant account through the Knot SDK (and without leaving your application), allowing users to securely vault their digital wallet as the default payment method of choice in their merchant accounts. With the Unified Flow, a single vault SDK session also supports card switching — Knot automatically determines whether to vault a digital wallet or switch a card based on each merchant’s capabilities.

Getting started

The unified flow supports both digital wallet vaulting and card switching within a single SDK session. Knot automatically determines the appropriate action for each merchant — vaulting a digital wallet where supported, and switching a card where only card switching is available.

Start the flow

Access your dashboard

Ensure you have access to the Knot Dashboard and retrieve your client_id and secret to create an API key. Learn more about creating an API key and authentication to the API here.

Create a session

With your API key for the development environment, call Create Session with type: vault to create a session used when invoking the SDK. More here on how to create an API key.

Install the SDK

Install 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 the Knot Dashboard.

Initialize the SDK

Initialize the SDK with the session_id retrieved from Create Session and a merchant Id retrieved from List Merchants in KnotConfiguration or you can use merchant_id: 19 for DoorDash to get started quickly. 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 within the SDK. Users will see real-time feedback as they progress through authenticating with a merchant.

Login to a merchant

In the development environment, use testing credentials to login to a merchant account and simulate vaulting a digital wallet.

Handle events

Handle SDK callbacks

Handle onError, onExit, and onEvent SDK callbacks to be notified of client-side events.

Handle webhook events

Subscribe to webhooks in the Knot Dashboard so your backend can be notified about user-generated, server-side events. Listen for the following events:
  • AUTHENTICATED: fired when the authentication to a merchant is successful.
  • VAULTING_SUCCEEDED: fired when a digital wallet is successfully vaulted to a user’s merchant account.
  • VAULTING_FAILED: fired when a digital wallet fails to be vaulted to a user’s merchant account.
  • CARD_UPDATED: fired when a card is successfully switched at a user’s merchant account.
  • CARD_FAILED: fired when a card fails to be switched at a user’s merchant account.