Pre-condition:

User navigates to https://panjiapass.com/ , from there User gets links to Apple Store or Play Market to download Panjia mobile app.

New user: registration and onboarding basic flow

  1. When User opens the app for the first time, they will see 'welcome' pages that describe the app's functionality. This may include a carousel with key functionalities that are attractive to the user, along with an explanation of why they should continue using the app
  2. User can see “Import using seed phrase” and “Create new account” action items
  3. When User chooses to create new account:
    1. First step: basic registration. User provides their email and password
    2. Second step: seed phrase generation
    3. Third step is optional: User is requested to secure their account with face verification (face ID)
    4. ~~Fourth step is optional: User is requested to secure their account with mobile number~~
    5. Account creation is accomplished
    6. User sees onboarding steps:
      1. Starter kit
      2. Reminder to accomplish the registration (if those steps have been missed during registration) to protect their account: provide phone number and add facial validation
  4. When User chooses “Import using seed phrase” then account recovery with help of seed phrase should be initiated

Registration: first step - email and password

  1. User provides email and password.
    1. Validation for password:
      1. Password should be at least 8 characters
      2. There should be a mix of uppercase and lowercase letters, numbers, and special characters (except of space, quotes, slash, percentage)
      3. Password shouldn’t be commonly used: User should avoid easily guessable passwords, such as "password" or "123456.”
      4. User shouldn’t repeat email parts in the password (e.g. if email is [email protected], then password cannot be Jsmith123)
    2. Validation for email:
      1. Email should be in the format: [email protected]
      2. Email should not repeat already existing
  2. When User provides email and password, then system sends email with confirmation
    1. Users can proceed further only after confirming their email
  3. Error handling:
    1. For invalid password - TBD
    2. For invalid email - TBD
    3. For existing account - TBD

Registration: second step - seed phrase

  1. 12 words seed phrase is shown to User along with clear instructions that these words should be stored safely, as the account cannot be recovered without them
  2. When User chooses to continue the flow they are requested to verify the seed phrase (e.g. User is prompted to place the words in the right order)
  3. When User is ready with verification and chooses to continue, then system creates account
    1. DID is generated
    2. Even if User drops off at this stage of registration, the account is already in the system, and the email cannot be used again for another registration
  4. Error handling:
    1. For incorrect seed phrase verification - TBD

Registration: third step - face verification