Skip to main content

FR-01.02 — Account Verification

Trigger: The user submits the verification code received during registration.

System shall:

  • Provide a verification mechanism to the registered user.
  • Match the submitted code to the correct registration attempt.
  • Validate that the code has not expired.
  • Validate that the code has not already been used.
  • Mark the user's email as verified when the code is correct.
  • Prevent successful verification mechanisms from being reused.
  • Update the account verification state after successful verification.
  • Allow the user to proceed to onboarding.

State: PENDING_VERIFICATIONEMAIL_VERIFIED

Acceptance Criteria:

  • PASS: A valid verification attempt changes the account to VERIFIED.
  • PASS: An expired or invalid verification attempt is rejected.
  • PASS: A successfully used code cannot be reused.
  • PASS: Successfully verified users can proceed to onboarding.
  • FAIL: An unverified account receives access that requires verification.
  • FAIL: An incorrect or expired code verifies the account.