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.

Getting started

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.

Retrieve available merchants

Call List Merchants to retrieve a list of merchants that are available for vaulting a digital wallet by passing type = vault in the request. These are merchants you can display in your app and allow users to vault PwV.You will be notified via the MERCHANT_STATUS_UPDATE webhook when/if the available merchant list changes.

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.

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.
I