Skip to main content


This Flow is used to enroll a new user without Face Scan. This methods creates a unique QR code and shows it to the user.

The data needed from your organization to enroll a user is:

NameThe name of the person which needs to be enrolled (could be left empty).
User IDThe ID from your own CRM which will be mapped with our own user id and is mandatory.
OptionsThis is an object with all optional fields:
  • language(string): en or es if empty then browser language will be used.
  • iframe(HTMLIFrameElement): iframe element to embbed Facenote, if empty then redirect flow will be used.
  • eventData(object): object with any information you want that will be stored in the generated NFT.
  • walletPublicKey(string): the public key of the wallet where you want to store all the new user NFTs.
  • trackingId(string): This is an optional field that you can set to track between different calls to the SDK.
Function CallbackThe Function Callback is needed when using iframe and want to manage the results and flow without a redirect to a URL.

The Function Callback should only be used when using iframes and is not needed when using redirect flow.

There cannot be a Function Callback and a URL Callback at the same time, otherwise sdk will fail and return an error.

To send data to your own backend you must handle it in the Function Callback if not using URL Callback.


The callback URL will be called with a result boolean value on the body to denote a successful or unsuccessful enroll. If result is false, an array of strings called errors will be returned with the errors that occured.

You can use our Callback Parser library to get the response data parsed and validated, see more details here: Callback Parser library