ACUL form for entry of OTP for non-verified email on first login

Hi
We are planning / hoping to use Advanced Customizations for Universal Login so we can create a fully customised form for Username / Password entry.
As part of this process, once a user has successfully entered their credentials, if their email has not yet been verified we want to send an OTP to their email address and display a subsequent form to accept entry of the OTP.
Now, I understand this can be done using the onExecutePostLogin trigger and the built-in Actions, Forms, Flows functionality within auth0.
What I was hoping to be able to do was have a form within our ACUL deployment so that this OTP entry form could also be fully customised.
So far, I have not been able to find a way to do this.
Does anyone have any suggestions?
Thanks

Hi @james.heanly

Welcome to the Auth0 Community!

Indeed, as you have mentioned, this indeed can be accomplished by using Actions. Implementing this behaviour using Forms can be quite complicated and I believe that the simplest approach would be the simplest.

The code inside the action would look something like this:

exports.onExecutePostLogin = async (event, api) => {
  if(event,user.email_verified != true) {

     api.authentication.challengeWith({ type: 'email' };

  }
};

Additionally, you can configure the Email attribute inside the Database connection that you are using to force the users to verify their email when they sign up.

Otherwise, you should be able to customize the MFA screens using ACUL. The screens that you would need to customize are:

  1. Under the mfa-email prompt:
  • mfa-email-challenge
  • mfa-email-email
  1. Under the email-verification prompt
  • email-verification-result

Let me know if you have any other questions on the matter!

Kind Regards,
Nik

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.