open-formulieren / open-forms

Smart and dynamic forms
https://open-forms.readthedocs.io
Other
36 stars 26 forks source link

Implement email verification procedure for the email component #4542

Closed sergei-maertens closed 1 month ago

sergei-maertens commented 3 months ago

Taiga DH 684, business case "WMV", needs to be added to intranet still

To address mistakes in provided email addresses, we need to add an (optional) email verification flow for forms where the email address is crucial. The goals are:

The verification process happens during the form filling, not after the form is submitted (different from typical user signup flows).

User interaction

  1. User encounters an email account that requires verification, they enter myname@example.com
  2. They click the button "send verification code" next to the email input field
  3. a modal opens with a text input to enter the verification code + a descriptive text "that an email is being sent and it can take a couple of seconds for it to arrive. Please make sure to check your spam box yada yada..."
  4. User enters verification code - we keep track of it in the submission in the SDK and send it in with the form step submit
  5. if the code is wrong or not provided (modal dismissed), then we show a validation error with the email component that verification is required

Imlementation

sergei-maertens commented 3 months ago

My notes from the estimate:

sergei-maertens commented 3 months ago

Refinement: transition from formio component/template to React button/modal is going to be a challenge.