Target releaseRelease name or number
EpicLink to related JIRA epic or feature
Document status
Document owner

Sundari Swami

DesignerLead designer
DevelopersLead developer
QALead tester

Goals

Background and strategic fit

Why are you doing this? How does this relate to your overall product strategy?

Assumptions

Requirements

#TitleUser StoryImportanceNotes
1User app registrationUser must be able to register for app using mobile phone and set username and password. At minimum, the following information needs to be furnished by user for registration:
- Legal First Name
- Legal Last Name
- E-mail
- Mobile phone number
- Username (created by first time user)
- Password (created by first time user)
Username must be unique - if user enters a non-unique value, a message is displayed prompting him to enter new value
Must
  • Additional considerations or noteworthy references (links, issues)
2Registration verificationUser will be sent a verification link to his e-mail address and must click on the link in order to verify and activate registration:
- If user registers successfully via above flow, a notification is displayed indicating so in the app
- If user is not able to register successfully via above flow, a notification is displayed in the app indicating the fact and requesting user prompt for sending verification e-mail again
Must 
3User verification via National IDUser verification should be via National ID, by inputting details of the ID in the app. This screen/prompt is displayed after successful user registration. At minimum user should input the following
- National ID number,
- Legal name, first and last
- Date of brith
- Gender
Must 
4Manual application & verificationIf both National ID verification fails user could manually enter information in order to register. At mininum user must input the following:
- Legal First Name
- Legal Last Name
- Date of Birth
- E-mail
- National ID Number
- Mobile phone number
- Gender
- Current physical address

An admin at the financial institution must verify and approve the ID manually for verfication to be complete
Must 
5KYC UploadUser must be able to upload KYC documents in image or PDF formatMust 
6KYC StorageThe platform must store each individual users KYC docs securelyMust 
7App permissions requestUpon successful registration and ID verification, the app will display a request to access users cell-phone call records, SMS records, lat-long and SMS content.
- If user consents and clicks on prompt for consent, the app will start collecting data from that point onwards
- If user does not consent and clicks on prompt for NON-consent, the app will not collect data from users phone
- System/back-end must keep a record of the users choice
Should 
8App permission editUser must be able to toggle between consent and non-consent for app permissions to collect above data.
The system/back-end must keep a record of the users choice each time a change is made including:
- Status change: e.g. non-consent to consent
- Date and time of status change
- User ID
Should 
9Link Bank accountUser must be able to link an external bank account - either with the same institution or a different one - to the app . User must input the following information:
- Routing number
- Account number
- Name under which account is issued
Must 
10Link Mobile wallet accountUser must be able to link an external mobile wallet account - either with the same institution or a different one - to the appMust 
11Display loan offersAPp must display loan offers that cusotmer qualifies for and an option to apply for offerMust 
12Loan dashboardFor ongoing loans, simple dashboard to display principal, interest, balance etcMust 
13Repay loan from within appAfter linking an external bank or digital-wallet account, user must be able to repay loans from within the app
- User must be able to input amount he wishes to pay
- User must be able to select which loan he wishes to pay (if he has multiple)
- User must be able to select which linked payment he wants to send money from (if he has multiple)
  
14Support Contact RequestUser must be able to put in a customer-support request via the app
- User is given a unique ID for each request he creates
- App displays a text input field
Must 
15Create user support ticketA corresponding ticket must be created on the platform
- Ticket will contain a unique ID same as that given to user
- Ticket will contain text of customer request
Must 
16Support ticket resolution noticeUser will receive updates to his ticket(s)
- everytime a change or progress is made
- via in app notification
  
17App downloads & funnelAdmin will be able to view app-install path and funnel including:
- App downloads: successful and abandoned
- Registrations: successful and abandoned
- ID verifications: successful and abandoned
Must 
18Accounts statusAdmin will be able to view out-of-box reports/dashboard on status of customer loan accounts including.
- Total applications,
- Accepted vs rejected,
- Delinquencies,
- Payments,
- Balance
- Other financial metrics
- Individual user profile info for above also
Must 
19In app notificationUser will receive in-app notifications for the following events (timing and frequency TBD)
- loan application approval
- loan repayment due dates
- overdue payments
Should 
20SMS notificationUser will receiveSMS notifications for the following events (timing and frequency TBD)
- loan application approval
- loan repayment due dates
- overdue payments
Must 
21Storage of customer data from mobileCustomer data that is gathered from user mobile phone will be stored in Fineract CN (details TBD)Should 
22Data access layer and securityDesign an access layer for the data that is different from self-service API accessing prod dataShould 
23Log-in screenUser will be presented with a log-in screen upon opening the appMust 
24Password recoveryUser must be able to recover (reset) password via recovery mechanism
- User must be given option to recover password via SMS or e-mail
- If user chooses e-mail, a link must be sent to users e-mail to reset password
- User must click on link to be taken to a password reset screen
- If user chooses SMS, a code must be sent to users phone via text
- User must enter the code on a prompt screen and then set a new password
Must 
25User-name recoveryUser must be able to recover (reset) user-name via recovery mechanism
- User must be given option to recover user-name via SMS or e-mail
- If user chooses e-mail, an e-mail is sent to user with his username
- If user chooses SMS, username is sent to user via mobile phone
Must 
26User profileUser must be able to access and edit his profile details via a 'Profile' section in the app.
The following information must be displayed and non-editable:
- User legal first name last name
The following information must be displayed and editable:
- E-mail: if user edits e-mail, another verification e-mail is sent to him and he must click on it to change email
- App permission settings: user must be able to toggle between allow app to access his mobile phone data and not allowing it
Must 
27Abandoned registrationUser should receive notification to complete abandoned registrationShould 
28Abandoned ID verificationUser should receive notification to complete abandoned ID verificationShould 

User interaction and design

Include any mockups, diagrams or visual designs relating to these requirements.


Questions

Below is a list of questions to be addressed as a result of this requirements document:

QuestionOutcome
(e.g. How we make users more aware of this feature?)Communicate the decision reached

Not Doing