Skip to main content

Using the SDKs

This guide explains how to implement KYC and KYB workflows using ComPilot and its SDKs.

Choose regular mode or Web3 mode

Before building your ComPilot integration, you have to decide whether your workflow is going to work in regular mode or Web3 mode.

Choose regular mode if your customers do not yet have a Web3 wallet when initiating the KYC process. In this mode, customers can follow the workflow without needing to sign with a wallet. You must provide a customer identifier to start the workflow. During the workflow, or after it is completed, a wallet can be assigned to the customer using the ComPilot API, ensuring flexibility in the onboarding process.

Choose Web3 mode if your customers already have a Web3 wallet when accessing your services. In this mode, the customer will be prompted to sign with their Web3 wallet, and the Web3 wallet will be associated with their profile. This ensures a seamless integration between the customer’s wallet and their account within your ComPilot workspace.

Prerequisites

To use the ComPilot SDKs, the following conditions must be met.

  • Your app is Javascript-based.
  • You have access to the ComPilot dashboard and you have an API Key.
  • At least one workflow is set up in your workspace.
  • In regular mode, you have to authenticate a user before opening a ComPilot session and be able to provide a unique ID for this user (such as an email address or other ID).
  • In Web3 mode, you have to implement a wallet adapter (using Wagmi, WalletConnect, Rainbowkit, or another library) before starting a workflow.

Breakdown and SDK options

Back-end integration

ComPilot's Javascript SDK (@compilot/js-sdk) is used for back-end integration to allow your app to interact with ComPilot's API,

Front-end integration

ComPilot has two SDKs that can be used to build your front end. You can choose whichever SDK works best with your technical stack.

  1. React SDK (@compilot/react-sdk) is designed for React or Next.js applications.
  2. Web SDK (@compilot/web-sdk) is designed for any other JavaScript application.