Skip to main content

Customer experience

As a developer, it is important for you to understand the steps that the customer goes through when using a KYC workflow.

For a first-time customer in your application, the customer uploads KYC documentation and biometric data. The KYC checks are performed and your application can make a decision about permitting the customer access.

In Web3 mode, at the end of the flow, the customer can be the owner of their verified personal data. If the customer waits until the end of the KYC process, they will be able to save a copy of their KYC reports and use it for future KYC proof in different applications.

When the customer wants to access part of an app that is gated, the ComPilot Identity Widget opens and they are guided through the KYC process.

The customer can take one of three routes, depending on whether they have been through the KYC process before:

Begin identity verification

To start a new KYC process, the customer sends data to the KYC provider using the ComPilot Identity Widget. The widget guides the customer through the process.

At some points, data and transactions will need to be signed. This can be achieved either with a crypto wallet such as MetaMask or through social credentials.

When all the required information has been provided, the widget displays a decision screen that shows the progress of the verification. Some parts of the verification process may take several minutes, or even longer, to complete. This can be because:

  1. The KYC provider usually takes thirty seconds to one minute to verify the customer, but this can sometimes take up to three minutes.
  2. The company itself might take significant time to verify the customer. This can be, for example, when the AML screening returns hits that need to be investigated, and the customer status is set to To be reviewed.

The KYC provider makes a decision, and then the application makes a decision using the rules set in the ComPilot Rules Engine.

The generated data is automatically shared with the app, in accordance with the data requirements that were defined in the ComPilot Rules Engine.

If the user stays in the widget during the verification process, it will display one of three decisions.

  1. Rejected by the KYC provider. The customer may be offered the opportunity to retry at this point.
  2. Approved by the KYC provider but rejected by the application.
  3. Approved by both the KYC provider and application, and therefore able to access the application.

To avoid waiting, the customer can enter their email address at the bottom of decision screen and exit the widget. They will receive an email with the results of the verification process. The email will have one of the above decisions and, if appropriate, a link to continue to the app, and (in Web3 mode only) a link to download their KYC report.

In Web3 mode, the customer can also access a copy of their KYC report in these ways.

  • They can wait until the end of the verification process without disconnecting from the app, and generate a reusable KYC report after verification is completed.
  • During a second interaction with an app that uses ComPilot, the widget will offer them the opportunity to generate a reusable KYC report immediately.

If the customer is approved, your application can grant them access. If they are denied, your application can add them to the blocked list and block access.

Share existing KYC report

This is only possible in Web3 mode.

If the customer has already been through verification with ComPilot and they have an existing KYC report, they can submit the KYC report that they are asked for. Again, the customer is guided through the process. The process is similar to what is described above, although the flow is simpler because a new KYC report does not have to be generated.

Generate and share VCs

This is only possible in Web3 mode.

If the customer has already been through verification with ComPilot, but they did not generate VCs at the end of the flow, then the widget can guide them through the process of generating and sharing VCs without having to go through verification again.