Skip to the content.

Introduction

Specification

User setup

Currently, the Growr User service supports 5 types of users:

User invitation

In order for a user to be registered, one of the following prerequisites must be met:

Registered Org userLending portalGrowr Organization serviceGrowr User serviceNew Org userReview users1Invite a new user2Forward request3Request org user creation4Create user5User created6Send email/SMS invitation7User invited8Confirmation message9Registered Org userLending portalGrowr Organization serviceGrowr User serviceNew Org user

Process steps:

  1. A registered user reviews the list of users in the Lending portal.
  2. The user configures a new user.
  3. The portal routes the request to the Growr Organization service.
  4. Growr Organization service sends a request to the Growr User service to create a new user related to the organization.
  5. Growr User service creates a new record in the Users collection.
  6. Response message.
  7. Growr Organization service sends an invitation email with a link to the Lending portal and (optional) OTP code.

User registration

Currently, the Growr User service supports 3 types of registration:

User registration with a social account

Prerequisite: The user has received an invitation email.

New userLending PortalGrowr API serviceGoogle OAuth serverGrowr User serviceOpen signin page1Redirect to auth page2Request access3Redirect to Google auth page4Provide consent5Return user data6Forward request7Activate the user8Return token9Redirect to Dashboard10New userLending PortalGrowr API serviceGoogle OAuth serverGrowr User service

Process steps:

  1. An invited user opens the Lending portal and is automatically redirected to the /signup page where the user initiates the signup process.
  2. The Lending portal redirects the user to the authentication route of the Growr API service.
  3. Growr API service calls the Google authentication API.
  4. Google authentication server redirects the user to the authentication page.
  5. The user selects one of his available Google accounts and provides the requested consent.
  6. Google authentication server confirms the authentication and returns the user data to the Growr API service.
  7. Growr API service redirects the request to the Growr User service.
  8. Growr User service updates the record (changes the status to ACTIVE) in the Users collection.
  9. Growr User service returns a token to the Lending Portal. The token will be used for all subsequent calls to Growr services.
  10. The Lending portal lets the user in and redirects him/her to the main page (Dashboard).

User registration with email and password

Prerequisite: The user has received an invitation email with an OTP code.

New UserLending PortalGrowr User serviceOpen signin page1Enter email, OTP, new password2Request user registration3Validate OTP4Activate the user5Return token6Redirect to Dashboard7New UserLending PortalGrowr User service

Process steps:

  1. An invited user opens the Lending portal and is automatically redirected to the /signup page where the user initiates the signup process.
  2. The user enters his email (where an invitation was received), the received OTP code and configures a new password.
  3. The Lending portal sends a request for registration of the new user with his/her email and password.
  4. Growr User service validates the provided OTP code.
  5. Growr User service updates the record (changes the status to ACTIVE) in the Users collection.
  6. Growr User service returns a token to the Lending Portal. The token will be used for all subsequent calls to Growr services.
  7. The Lending portal lets the user in and redirects him/her to the main page (Dashboard).

User registration with phone

Prerequisite: The user has received an invitation SMS with an OTP code.

New userUSSD providerGrowr User serviceGrowr Identity serviceDial USSD1Provide OTP2Register user3Validate OTP Code4Request PIN5Provide PIN6Set user PIN7Activate user8Create identity9opt[If user is borrower]Access to USSD menu10New userUSSD providerGrowr User serviceGrowr Identity service

Process steps:

  1. An invited user dials a number to receive a USSD menu.
  2. The user provides the OTP code that was received as an SMS.
  3. The USSD provider sends a request for registration of the new user with a phone number.
  4. Growr User service validates the provided OTP code.
  5. Growr User service requests a PIN to be provided by the user.
  6. The user enters and confirms a PIN using the USSD menu.
  7. The USSD provider sends a request for PIN setting to Growr User service.
  8. Growr User service registers the PIN and updates the record (changes the status to ACTIVE) in the Users collection.
  9. Growr User service requests from Growr Identity service to create an SSCR identifier (DID) and a private key.
  10. The user is authorized to access the full USSD menu options.

Suspending users

Administrators (admins and/or super-admins) can temporarily block other users to prevent them from using the node services.

AdministratorLending portalGrowr User serviceReview users1Block a user2Forward request3Block user4User suspended5Confirmation message6Unblock a suspended user7Forward request8Unblock user9User blocked10Confirmation message11AdministratorLending portalGrowr User service

Process steps:

  1. An administrator reviews the list of users registered in the node.
  2. The user selects a given user from the list and requests its suspension.
  3. The Lending portal sends the suspension request.
  4. Growr User service updates the record (changes the status to BLOCKED) in the Users collection.
  5. Response message.
  6. Response message.

The steps for unblocking the user (i.e. removing his/her suspension) are the same.