Customer experience
As a developer, it is important for you to understand the steps that the customer goes through when using a privacy-preserving 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.
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 privacy-preserving 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. The KYC provider usually takes thirty seconds to one minute to verify the customer, but this can sometimes take up to three minutes.
The KYC provider makes a decision, then the widget generates the required zero-knowledge proofs, which are sent to the application, and the application makes a decision using the rules set in the ComPilot Rules Engine.
If the user stays in the widget during the verification process, it will display one of three decisions.
- Rejected by the KYC provider. The customer may be offered the opportunity to retry at this point.
- Approved by the KYC provider but rejected by the application.
- 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 a link to download their KYC report.
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
If the customer has already been through verification with ComPilot and they have an existing KYC report, they can use it to generate the required zero-knowledge proofs. 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 VCs and share ZKPs
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 VCs and the required zero-knowledge proofs without having to go through verification again.