You are on page 1of 133

Loyalty & Rewards App – Functional Requirements Document

Document Overview
The functional requirements document (FRD) is a formal statement of an application’s functional
requirements. It serves the same purpose as a contract. The developers agree to provide the capabilities
specified. The client agrees to find the product satisfactory if it provides the capabilities specified in the
FRD.

Quality is meeting requirements. For that reason, the FRD is the central document in system
development. It is used for the following:

 Designing and developing the application/software/system.


 Evaluating the product in all subsequent phases of the project and/or development life cycle.
 Determining the success of the project.

The FRD has the following characteristics:

 It demonstrates that the application provides value to the State in terms of the business
objectives and business processes within the duration of the project and/or development.
 It contains a complete set of requirements for the application. It leaves no room for anyone to
assume anything not stated in the FRD.
 It is solution independent. The Entity Relationship Diagram (ERD) is a statement of what the
application is to do – not of how it works. The FRD does not commit the developers to a design.
For that reason, any reference to the use of a specific technology is entirely inappropriate in an
FRD.

A requirement is a condition that the application must meet for the customer/client to find the
application satisfactory. A requirement has the following characteristics:

 It provides a benefit to the organization.


 It describes the capabilities the application must provide in business terms.
 It does not describe how the application provides that capability.
 It does not describe such design considerations as computer hardware, operating system, and
database design.
 It is stated in unambiguous words. Its meaning is clear and understandable.
 It is verifiable.

Cedezone Limited
1
Loyalty & Rewards App – Functional Requirements Document

1. General Information
1.1. Project Description
The project entails developing multiple modules that enables customers to manage their
Rewards and Loyalty Points, Customer Records, and Mobile Application. These applications are
stand-alone software. All applications can be integrated and interoperable with other Cedezone
services/products and existing merchant infrastructure.

1.1.1. Background
There are a total of six modules. The following modules are as follows:

 Loyalty and Rewards Application – This is the application that enable the merchant
sector to manage and run their loyalty and rewards scheme seamlessly.
 Customer Management Application – A Customer Relationship Management tool that
lets the potential clients of Cedezone to have a platform of its own for managing records
of their customers.
 Mobile App – A solution that front face the merchant customers. This will be the
interface that gives access to consumers to manage their loyalty points and accounts.
 Inventory Application System (Optional) – An application that is intended to empower
merchants into having a tool that lets them manage the inventory of their products and
commodities
 Reservation Application System (Optional) – An application that taps primarily into the
business sector of hotels, restaurant, and transportation. This allows the consumers to
manage a booking from service providers across the said business sector above.

The applications are designed and can be implemented either on-promise, or through cloud
environment.

Each application are designed as a separate module; therefore, each are interoperable with one
another and can be integrated to third-party applications.

In any merchant case, Cedezone will be able to frame each stand-alone module as a separate
service. They can be provided to Cedezone’s potential clients separately. This means that the
applications can be provisioned as a “Software as a Service”. The applications can also be
bundled depending on how the customers wanted it.

Having the applications to be developed as stand-alone software enables Cedezone to empower


business, particularly from the retail sector.

1.1.2. Purpose
From the business-to-business perspective, this would mean Digital Transformation for the
business. The loyalty and rewards application enabling the merchants to do customer retention.
This would empower them to retain their customers and continuously patronize their products

Cedezone Limited
2
Loyalty & Rewards App – Functional Requirements Document

while the customers are able to earn points for various rewards and perks. It would also mean
that the merchant/retail section can increase their customer reach via mobile application. The
mobile app will serve as a platform for these merchants to extend their retail services. Other
applications will also benefit not only the merchant/retail sector but also the other industries in
terms of better customer data management, inventory management, and digital reservation.

1.1.3. Assumption and Constraint


Assumptions are future situations, beyond the control of the project, whose outcomes can
influence the success of a project. The following are assumptions that we may need to consider:

 Developments in technology
 Availability of a hardware/software platform
 Software developer competencies
 Project resource and manpower availability
 Pending legislation
 Court decisions that have not been rendered

Constraints are conditions outside the control of the project that limit the design alternatives.
The following are examples of constraints:

 Government mandates and regulations such as African Continental Free Trade Area
(AfCFTA)
 Standards imposed on the solution
 Strategic decisions

1.1.4. Interfaces to External Systems


The Loyalty and Rewards mobile app (Consumer App) together with a web application/ web
portal will be the consumer frontend, while the merchant front end will be a web application/
web portal the merchant can log in to manage and engage customers as well as setup
campaigns, issue gift cards to individuals or corporates.

The consumer and merchant facing web applications and mobile apps will be integrated to and
fetch information from the following systems to be developed:

 Loyalty & Rewards Engine – This application will be the primary tool for merchants to
manage points and rewards program. This back-end system stores the following information
in a database:
 Points allocated to merchants and paid for and unpaid for by the merchants
 Points allocated to consumers by merchants using defined points allocation
algorithms.
 Points exchange rate – “X” points = $1 for network points, and “X” Points per local
currency for chain or coalition points

Cedezone Limited
3
Loyalty & Rewards App – Functional Requirements Document

 Currency exchange rate table for network points with adjustable markups for
exchange gain income
 Coupons and Gift cards created by merchants and 3 rd parties, to be redeemed at
specified merchant locations.
 Cash back management and consumer account setup for cash back payments (direct
account payments or coupon/ gift card issuance).
 Discount setup by merchants

 Customer Management – Back-end Application for customer management. This is for


merchant to manage customers, their accounts, records, and in-store customer onboarding
and customer engagement via email, in-app messages and SMS, based on consumer settings
opting to receive information from the specific merchant. .

Other 3rd part users such as banks and retail store chains can also use the customer
management module to onboard their customers, so that they can enjoy discounts when
they use their cards at merchant outlets or burn points allocated to them using our Loyalty
and reward system. These 3rd parties can upload customer data into the database and send
a link to users to populate their information.

 Merchants Existing System – These are third-party applications Point-of-Sale systems,


merchant till app, and other existing merchant applications used by merchants themselves
for customer’s transaction and everything that relates their business. The customer
management system and the Loyalty and Reward system should have APIs that will allow
merchants use these solutions in conjunction with their existing applications.

 Reservation System (Optional and will be at the later part of the project) – Applications that
enables the customers to book for hotels and accommodation, restaurant table
reservations, transportation services, etc.

 Inventory Management System (Optional and will be at the later part of the project) –
Merchants application to manage inventory and other commodities.

 Merchant Till Application: - The merchant Till application is the core application that all
other application is integrated to. The merchant Till works with all merchant peripheral
systems such as the bar code scanner, POS pin pads, etc., and is the merchant’s sales staff
front end. The merchant sales staff can call up the customer management front end from
the Merchant Till app to onboard customers and is also able to access the customers loyalty
and reward account information using the solution aiding redemption. The merchant till
app will also be able to send information back to the Loyalty and rewards engine on points
burned, gift cards redeemed / partially redeemed as well as for cash back information. The
Merchant Till application will also tokenize card details and store the tokens against the
customer information, so customer earn rewards automatically when they use their cards
on the solution.

Cedezone Limited
4
Loyalty & Rewards App – Functional Requirements Document

2. Technical Specification
The technical architecture describes the proposed and ideal concept of how the loyalty and rewards
app will be developed. It is intended to showcase the interaction of loyalty and rewards mobile app
(interface) between other modules and third-party applications.

2.1. Technical Architecture and Concept Design

The image above shows the abstraction of how the Cedezone service applications (modules ) and
external applications and websites connects to the mobile app or consumer application.

The idea is to develop stand-alone Cedezone applications that connects to the merchant Till
application or can be integrated directly to other 3 rd party applications (tills, POS, merchant’s
loyalty and rewards system, or it could be any merchant’s retail applications and external
websites). An example of why Cedezone apps connects to an external website via APIs is – for

Cedezone Limited
5
Loyalty & Rewards App – Functional Requirements Document

instance, the mobile requires a real-time currency foreign exchange. This is where API
connection will be leveraged in a way that the mobile constantly connects to the foreign
exchange website to get the latest exchange value. All this connectivity will be made possible
through the front-end application, which in this case – the mobile app.

The following stand-alone applications covered in this requirement document are as follows:

 Loyalty and Rewards Application


 Customer Management Application
 Mobile App (Consumer App)
 Inventory Management System
 Reservation System

The idea of Loyalty and Rewards Application is for merchants to enable their customers to use
loyalty and rewards program. This will allow their customer to earn points for pre-determined
behavior or get discounts when they buy certain products or shop at a merchant outlet. Loyalty
and rewards applications will be interoperable with other merchant systems using Application
Programming Interface (API). API endpoint connectors will be used to enable data exchange
between Merchant stand-alone applications and merchant systems, that includes third-party
applications and their corresponding databases.

Customer Management Application is another side of Cedezone offerings where it enables the
merchants and other 3rd parties to seamlessly collect and manage their customer information,
data, and corresponding records. This application can also be used by merchants as a Customer
Relationship Management (CRM) tool for whatever purpose it may serve them.

The customer management application comes with its own database to warehouse big data. An
Application Programming Interface (API) will be developed and will be bundled with it. It is to
allow the customer management application to be integrated with other stand-alone
applications (Loyalty and Rewards, Mobile App, Reservation System, Reservation System, and
Inventory System).

Merchants and 3rd parties will also be able to collect and onboard customers without them
physically coming to the merchant locations. Merchants and 3 rd parties can send out a unique
link to customers who populate a webpage and are authenticated by the platform, before being
added to a merchant and 3rd party’s database.

The Mobile app or the Consumer App provides the interface for consumers (merchant
customers) where they can manage their loyalty points anywhere and anytime through their
mobile phones. The mobile app is also a medium for merchants to increase their customer reach
– the mobile app will be used as a platform to extend merchant services (e-commerce),
redemption of points, coupons and gift cards, as well as a platform for merchants to engage
their customers.

Cedezone Limited
6
Loyalty & Rewards App – Functional Requirements Document

The later part of this project would be the development of the Inventory Management System
and the Reservation Management System.

Inventory Management System is an application of Cedezone designed for merchants to


seamlessly manage the inventory and procurements of their products and commodities. This
application can be integrated with other Cedezone apps through API endpoint connectors.

Reservation Management System is a stand-alone application of Cedezone intended to connect


the merchant customers (consumers) to different service providers such as restaurants, hotels,
and transportation. The Reservation application comes with a built-in API that enables it to be
integrated with external platform owned by 3 rd parties (restaurants, hotels, transportation
service providers, etc.).

Generally, the modules above are stand-alone. This means that merchants can opt to taking just
one or two modules leaving the others they do not need. This is the main reason why every
application have their own APIs.

Example Scenario:
The merchant have an existing application they use to manage their customer records.
They only wanted a solution that allows them to implement loyalty points program. In
this case, Cedezone can provide them with just Loyalty and Rewards module. It will be
integrated into the merchant existing systems through API. The module will provide the
merchant and backend interface where they can log in to the Loyalty and Rewards
application and configure points earning criteria, points redemptions, products,
campaigns, and many more.

Whatever the merchant’s case maybe, Cedezone must be able to frame all the modules
above as a “Software as a Service”.

2.2. Application Programming Interface (API) Interoperability


Onboarding customer from a third-party application is possible. APIs are required for merchants
and third parties to call for them to create customers on the Cedezone platform. This enable the
third-party to onboard customers from other channels like websites and mobile apps using their
own look and feel.

Example Scenario

A use case example is a bank customer and is about to create a virtual gift card for a
friend within his bank app, the APIs makes this possible without the customer seeing the
Cedezone brand. The Cedezone platform can generate customized template (form) for
third-party customers to create a gift card that is tied with Cedezone’s Loyalty and
Rewards application. The Gift card and its beneficiary will need to be authenticated
before redemption. Authentication is done at merchant locations or within the

Cedezone Limited
7
Loyalty & Rewards App – Functional Requirements Document

consumer mobile app. The gift card beneficiary will need to be registered to avail the
loyalty service from the Cedezone platform.

3. Functional Requirements
The functional requirements describe the core functionality of the application. This section includes
the functional requirements, its description, and additional notes that may apply for Cedezone to
achieve the ideal features for the applications.

3.1. Summary of Functions – Customer Management (Onboarding)

Functional
Functional Description Notes
Requirements
In-Store This will allow customers to sign up and  
Registration create an account with a merchant within the
store premise. They can be assisted by a
merchant during the registration process. In
some cases, merchant can setup a self-service
kiosk that host the registration app/process
for customer onboarding.
After Sale The process of onboarding customers from A popup will appear on the
Registration the merchant outlets after completing the merchant's till asking them if
transaction. they wanted to onboard a
customer. The popup will only
appear after the merchant has
finished processing the
customer transaction.
Subsequently, if the customer
has paid the transaction by
credit card – a card token (card
has number) will be generated.
The card number will be used
to identify the customer on his
next transaction as the till app
always calculates using this
hash number as a point of
reference in awarding points
and cash backs
Cedezone Website A web-based channel of registration for  
Registration customers. They can visit Cedezone hosted
web pages and do the registration process
from there.
Customized A customized template (registration form) is Issued via API calling.
Templates issued to a third-party. The third-party can
onboard a customer in behalf of their

Cedezone Limited
8
Loyalty & Rewards App – Functional Requirements Document

participating partners.
Registration Form A registration form is required for merchants Details:
to onboard their customers from any medium
or channels. The registration form must Name, First Name, Last Name,
capture the necessary customers details. Email, Mobile, Birthday,
Marital status, Country, State,
City, Pin code, Address, and
Point of Interest
Customer Upload A portal is required for merchants to upload Name, Phone Number, and
Portal their customer database into the Cedezone Email are the customer details
platform. The portal will be used to upload that needs to be existing during
customer records and for merchants to do the upload.
bulk onboarding.
Merchant A feature is required for new merchants to
Registration register with Cedezone to access any of the
solutions being offered. Registration will be
via the Cedezone website or can be done back
end after a merchant has filled a physical form
by an administrator.
Third-party A feature is required to accommodate
Registration merchant partner entities such as Banks or
Loyalty solution providers to register on the
platform and participate to the merchants’
loyalty and rewards program hosted within
the Cedezone platform. This will enable any
3rd parties to have the same capability of a
participating merchant within loyalty and
rewards application.

3.2. Summary of Functions – Customer Management

Functional
Section Functional Description Notes
Requirements
The system shall allow the merchant to
Login  
login.
The system shall allow the merchant to
Logout  
logout.
The application shall allow the
Password merchant to login through their  
Security password.
The system shall allow the users
(merchants) to specify a secret
Forgot
question and secret answer. This shall  
Password
enable them to retrieve their
credentials.
Email The application shall allow the users Most applicable during

Cedezone Limited
9
Loyalty & Rewards App – Functional Requirements Document

the “Forgot Password”


process and to other
critical functionalities
(merchants) to receive an email during
Notification that requires notification.
the process of retrieving the account.
E.g. Campaign
notification
Customer The system shall allow the merchants
Account Administration
a section or an interface for them to  
Administration Interface
manage customer accounts.
The application shall allow the
Add New
merchant to create or add new  
Customer
customers.
Update The application shall allow the
Customer merchant to edit existing customer  
Records records.
The application shall allow the
Save Records merchant to updated customer  
records.
The application shall allow the
merchant to cancel any unsaved
Cancel  
changes in managing customer
records.
Search The application shall allow the
Customer merchant to search for customer  
Record records.
Filter The application shall allow the
Customer merchant to filter search results when  
Record searching customer records.
The merchant shall be
View
The application shall allow the provided with a view only
Customer
merchant to view customer records. form that displays
Record
customer records.
Customer The application shall allow the This feature is intended
Profile merchant to have an interface when for merchants to view
Interface viewing customer records. customer’s details in a
pop-up window or to
another page rather than
viewing it on the same
search page. For
example, I am the
merchant. I searched for
a customer using the
keyword “Chris”. The
application will then
display all the customers
records associated with

Cedezone Limited
10
Loyalty & Rewards App – Functional Requirements Document

“Chris” and the search


results will look like a list
of accounts. I as a
merchant can double to a
customer record and a
pop-up window will
appear to display the
customer account
information/record.
Unlock The application shall allow the Locked accounts that
Customer merchant to unlock customer violates the account
Account accounts. locking threshold.
View All The application shall allow the
Subscribed merchant to view all their subscribed  
Customers customers.
Customer Details:

Customer First Name


Customer Last Name
In-store The system shall allow the onboard Mobile Number
Registration customers in store. Email
Address
Bank Account Details
(Optional)
Profile Picture (Optional)
After successful
transaction, the till
The system shall allow the merchant to
After Sale application pop up a
onboard customers after each sale or
Registration message to alert sales
post transaction.
staff to onboard the
customer.
Onboarding The system shall allow the customers
to onboard themselves via Cedezone
platform.
Cedezone Customer can access
Website Cedezone website and
Customers will show under a
Registration register from there.
merchant’s report where the customer
is enrolled with that merchant via the
website.
A customized template or
registration form is issued
The system shall allow the customers to a third-party's website.
Third-Party
to onboard themselves via third-party Third-party merchants
Registration
websites. can proactively onboard
customer using this
method.
Registration The application shall allow the Registration Form

Cedezone Limited
11
Loyalty & Rewards App – Functional Requirements Document

Details:

Customer First Name


merchant to have a registration form Customer Last Name
for them to input their customer Mobile Number
Form
details during the Email
registration/onboarding process. Address
Bank Account Details
(Optional)
Profile Picture (Optional)
Clicking on the link will
open the customer
onboarding page, where
registration information
is collected, and the
The application shall allow the merchant customer
Invite
merchant to send onboarding links via database updated. The
Customer
email or SMS. generated links must
reflect details of the
merchant onboarding the
customer. Registration
links will support social
media logins.
Merchants and 3rd
parties can publish a link
to a customized
registration page. E.g. a
The application shall allow the system
3rd party can onboard its
administrator to create and
members using a
customized registration form for
customized page that has
merchants.
its branding elements.
Customized
3rd parties can customize
Templates
System their own instance of the
Administration onboarding page.
The customized templates must
support email notification for these
instances will also be customized. Easy
 
to setup SMTP integrations must also
be put in place to enable 3rd parties
engage their base.
The application shall allow the system
Password
administrator to reset account  
Reset
password.
For instance, a user
Social Media The customer management
decided to onboard
Others Logins and application will support third-party
themselves by signing up
Registrations website and social media registrations.
to the mobile app

Cedezone Limited
12
Loyalty & Rewards App – Functional Requirements Document

interface of the loyalty


and rewards. The
customer management
shall support this the
same way with how the
logging works. The
customers shall be able
to login using their social
media accounts and
other third-party
websites.
Shows the merchant user
logs for:

Non editable audit trail of all activities  Account Changes


Audit trails of merchant user visible to merchant  Issuing Coupon
user with rights to view audit trail and Gift Card
 Merchant User
last Login and
Logout
Ideal type of reports:

Coupons & Gift Cards


Reports – Shows how
many coupons and gift
cards were issued,
exchanged, and
redeemed.
Merchant user to be able to generate
reports of users and their activities Customer Reports –
from the portal. List of enrolled Shows the numbers of
Report customers, allotted points, redemption customer enrolled to the
Reporting Generation/ report, coupons issued, etc. merchant. Ideally, this
downloads report should also show
Ideally, a report can be exported into the numbers of how
an excel file for further reporting many customers were
purposes. enrolled and how many
unsubscribes.

Points Reporting – Shows


how many points were
earned by subscribing
customers and how many
points were burned down
in exchange for coupons.

Cedezone Limited
13
Loyalty & Rewards App – Functional Requirements Document

Message can be blasted


Merchant to be able to send out to the consumers
Messaging
Messaging information to consumers on the (merchant customers) via
console
platform. different channels (e.g.
SMS and Email)

3.3. Summary of Functions – Loyalty and Rewards Application

Functional
Section Functional Description Notes
Requirements
Login The system shall allow the  
merchant to login.
Logout The system shall allow the  
merchant to logout.
Password The application shall allow  
the merchant to login
through their password.
Forgot The system shall allow the  
Password users (merchants) to
Security specify a secret question
and secret answer. This
shall enable them to
retrieve their credentials.
Email The application shall allow Most applicable during the
Notification the users (merchants) to “Forgot Password” process and to
receive an email during other critical functionalities that
the process of retrieving requires notification.
the account.
E.g. Campaign notification
Merchant is able to view
dashboard showing points
available, allotted or
Merchant
redeemed. Same applies
Merchant Account
to Coupons and Gift cards
Accounts Interface/
dashboard
Merchant also able to see
3rd party coupons, gift
cards etc. redeemed
Promotions Promotions The application shall allow
User Interface the system
admin/merchants to
create and manage their
promotions.

Cedezone Limited
14
Loyalty & Rewards App – Functional Requirements Document

Promotion The application shall allow The merchants have a drop-down


Categories the system admins and menu where they can select what
merchants to categorize type of promotion they want to
the promotion they are publish. Some categories are as
creating. follows:

 Products and Services


Discount – typical
discounted products and
services.
 Double Points – products
and services when
purchased by consumer
will have earn them
double points.
 Freebie – a purchased
product, or a service
comes with a freebie
(could be another product
or discounted service or a
promotional voucher/gift
card).
Promotion The application shall allow Details:
Details the merchants to publish
their promotions and its Name of Promotion
details. Promo Description
Discount Value
Validity of Promotion
Merchants

Campaigns User The application shall allow  


Interface the system
admin/merchants and
interface to manage their
campaigns.
Publish The application shall allow Campaign Details:
Campaigns the merchants to publish
Campaigns campaigns for advertising Merchant Category (e.g. Fashion,
and customer retention. Sport Goods, etc.)
Participating Merchants
Brand (Merchants)
Geolocation (Merchant Location)
Campaign The application shall allow  
Search the merchants to search
for campaigns.

Cedezone Limited
15
Loyalty & Rewards App – Functional Requirements Document

Campaign The application shall allow Search Filters:


Search Filters the merchants to filter
their campaign searches. Merchant Category (e.g. Fashion,
Sport Goods, etc.)
Participating Merchants
Brand (Merchants)
Geolocation (Merchant Location)
Campaign The application shall allow Picture editor is required to edit
Banners the merchants to edit the banner. A text that shows the
banners for theirrecommended image resolution
corresponding campaigns. and size is required as well.
Campaign Texts The application shall allow Text editor should be
the merchants to include implemented with editing
texts for theirfeatures e.g. Font Formatting,
corresponding campaigns. Insert Link, Insert Image, Bulletin
points, Numbering, Indention,
Alignment, etc.
Campaign The application shall allow  
Duration the merchants to put a
timeline schedule for
campaign duration.
Campaign The application shall allow Campaigns sent to multiple
Notification the merchants to push channels of messaging:
their campaigns into their
customers and resellers. Mobile SMS
Email
In-app Notification
Push Notification
Campaign The application shall allow Audience Preference:
Audience the merchants to target a
specific audience. Customers ages 21 to 30.
Customer Location

Preference can
Ongoing The application shall allow Default number of campaigns per
Campaign Limitthe system admin to limit merchant is 4. It can be the
the merchants in minimum and maximum can be
publishing too many around at 10.
campaigns.
Digital Coupons The application shall allow Merchants must be able to
Issuance the merchants to issue a customize the digital voucher.
Coupons, Gift digital voucher to the They must be able to change the
Cards, Points, customer. design of the barcode, add image
and Cashbacks to it, and customized texts, etc.

Merchants can link the Issued

Cedezone Limited
16
Loyalty & Rewards App – Functional Requirements Document

voucher to customer accounts via


Consumer Mobile app.

Validity of the coupons to be


issued is a must. Merchants needs
to have a UI where they can
create voucher and specify its
validity and other details.
Gift cards The application shall allow Gift cards can be sent to
Issuance the merchants to issue and customers via EMAIL or SMS.
sell a gift card to the
customer, or 3rd party, Validity of the gift cards to be
which can be redeemed in issued is a must. Merchants needs
store or at other merchant to have a UI where they can
locations.. create gift cards and specify its
validity and other details.
Issue Cashback The application shall allow Merchants should be able to
the merchants to manage create a cashback for customers
a cashback. and link it with their products.
Cashbacks are credits granted to
the customers after the
transaction. Customers are
entitled to have cashback should
they purchased a merchant's
products that are under Managed
cashback.
Register and The application shall allow This is to enable the usage of
Add Third-Party the merchants to register a third-party digital and physical
Coupons and third-party application. coupons or vouchers.
Gift Cards
Third-Party The application shall allow Issued third-party gift cards and
Coupons and the merchants to issue coupons can be sent to customers
Gift Cards third-party coupons and via EMAIL or SMS.
Issuance gift cards to the customer,
or 3rd party, which can be Validity of the gift cards to be
redeemed in store or at issued is a must. Merchants needs
other merchant locations. to have a UI where they can
create gift cards and specify its
validity and other details.
Grant Cashback The application shall allow  
the merchants to issue a
cashback directly to the
customer accounts.
Manage The application shall allow Merchants have UI to manage
Cashback the merchants to manage criteria for customers in earning
Criteria the criteria for cashback. points.

Cedezone Limited
17
Loyalty & Rewards App – Functional Requirements Document

Password Reset The application shall allow  


the system administrator
to reset account password.
Block Account The application shall allow  
the system administrator
to block a customer
account.
Unblock The application shall allow  
Account the system administrator
Administration to unblock a customer
account.
Language The application shall allow  
the system administrator
to manage the application
language localization.
Currency The application shall allow  
the system administrator
to manage the application
currency.
Generate The application shall allow For invoice purposes and
Report the merchants/system accounting.
Reporting
admins to generate a
report.

3.4. Summary of Functions – Mobile Application (Consumer App)

Functional
Section Functional Description Notes
Requirements
The system shall allow the
Login  
user to login.
The system shall allow the
Logout  
user to logout.
Up to three failed login
The application shall lock
attempts only. The threshold
Account Locking any users that commits
will refresh in case the
Threshold three failed login
customer successfully logged
attempts.
Security in.
The application shall allow
Password the customers to login  
through their password.
The system shall allow the
Face ID user to login through Face  
ID.
The system shall allow the To target potential users of
Fingerprint
user to login via newer version of Android

Cedezone Limited
18
Loyalty & Rewards App – Functional Requirements Document

Fingerprint. phones.
The system shall send an
To target potential users of
SMS with OTP code as
iOS phones.
account security. This is to
One-Time-Password
verify customers
(OTP). OTP code can be used to
transaction e.g. Points
verify one-time account
Redemption, Account
registration.
Changes, etc.
Anti-robot security
Captcha implemented for  
registration purposes.
The system shall allow the
customers to specify a
secret question and secret
Forgot Password  
answer. This shall enable
them to retrieve their
credentials.
Accounts Customer Details:

Customer First Name


The system shall allow the
Customer Last Name
users (customers) to
Mobile Number
Account Creation create an account via
Email
mobile application user
Address
interface.
Bank Account Details
(Optional)
Profile Picture (Optional)
The application shall allow
the users (customers) to
Register by Facebook create an account using  
their Facebook
profile/account.
My Account The system shall allow the The following account details
users (customers) to view needs to the displayed in the
their accounts. Account Section:

Account Name
Account Number
Loyalty Points (per Merchant
e.g.
Grocery A Loyalty Points:
XXX.XX
Grocery B Loyalty Points:
XXX.XX
Grocery C Loyalty Points:
XXX.XX)

Cedezone Limited
19
Loyalty & Rewards App – Functional Requirements Document

Customer Details:

Customer First Name


Customer Last Name
The system shall allow the
Mobile Number
My Profile users (customers) to view
Email
their profiles.
Address
Bank Account Details
(Optional)
Profile Picture (Optional)
The application shall allow
the customers to view
Coupons  
their coupons and
vouchers.
The system shall allow the
users (customers) to
Points Redemption redeem their loyalty  
points into various
coupons for commodities.
The application shall allow Transaction History Details:
the users (customers) to
have a transaction history Points Balance
Transaction History the list down all their Payment Transaction
transactions and any Payment Method
movements of the Commodity
account. Merchant
To allow customer to do
shopping in the marketplace
section of the mobile app or
The application shall allow
when making reservations for
the users (customers) to
hotel, transportation,
set up their payment
restaurant etc.
method. This is for them
Payment Setup to pay for the shopping
Payment Method:
activities in the
marketplace section of
Host Card Emulator (Debit
the app or to pay for
Card/Credit Card)
reservation transaction.
QR Code
Direct to Bank Link
PayPal
The application shall allow
View Subscribed the users (customers) see
 
Merchants the merchants they have
subscription with.
The application shall allow
Rewards Reward User Interface customers to navigate to  
a section where they can

Cedezone Limited
20
Loyalty & Rewards App – Functional Requirements Document

view products/services as
rewards.
Product Details:
The application shall allow
customers to view Product Availability
merchant products Product Image
Reward Product Details displayed in the Reward Product Name
section and products Product Description
should have the necessary Product Specification/Reviews
details. Merchant Aggregator
Cost in loyalty points
Sample Products/Services
Category:
The application shall allow
customers to have a
Reward Product Dining
categorized view of
Categorization Fashion
products/services as
Lifestyle
rewards.
Entertainment
Travels
The application shall allow
customers to search for a Search field required in the
Reward Product Search
products/services as Reward section of the app.
reward.
Filters:
The application shall allow
customers to filter their
By Merchant and their
Reward Product Search search results when
location
Filter searching for a
By Category
products/services as
Cost of Product in Loyalty
reward.
Points
The application shall allow
Subscribing to the merchant
customers to subscribe
allow the customers to earn
Subscribe/Unsubscribe and unsubscribe to the
points and redeem their
merchants and their
products.
partners.
The application shall allow Customers can only review a
Product Review the customers to leave a product after they have
review for the product. redeemed it.
Marketplace Marketplace User The application shall allow  
Section (E- Interface customers to navigate to
commerce) a section where they can
view products/services as
rewards.

Cedezone Limited
21
Loyalty & Rewards App – Functional Requirements Document

Product Details:
The application shall allow
customers to view Cost of Product
merchant products Product Availability
Marketplace Product
displayed in the Product Image
Details
Marketplace section and Product Name
products should have the Product Description
necessary details. Product Specification/Reviews
Merchant
Sample Products/Services
Category:
The application shall allow
customers to have a Dining
Product Categorization
categorized view of Fashion
products/services. Lifestyle
Entertainment
Travels
The application shall allow
Search field required in the
Product Search customers to search for a
Reward section of the app.
specific product.
Filters:
The application shall allow
customers to filter their By Merchant and their
Product Search Filter search results when location
searching for a specific By Category
product. Cost of Product in Loyalty
Points
The application shall allow
Promotions and customers to view
 
Offerings products and services that
are on sale.
The application shall allow
customers to add
Add to Cart  
products and goods they
are eyeing to purchase.
The application shall allow
customers to checkout
Checkout  
their cart and proceed to
payments.
Use Voucher/Coupons The application shall allow  
customers to use their
redeemed
coupons/voucher during
the checkout process.

Cedezone Limited
22
Loyalty & Rewards App – Functional Requirements Document

The application shall allow


Product Review the customers to leave a  
review for the product.
The application shall allow Service Providers:
customers to navigate to
Reservation User
a section where they can Hotel
Interface
book reservation to Restaurants
various service providers. Transportation
Details of the service provider
The application shall allow shall be displayed along with
customers to make the available services being
Lodging and
bookings for hotel offered. Cost of service should
Accommodation
accommodation and be displayed as well along
lodging. with the Availability Schedule
of the service.
Details of the service provider
The application shall allow shall be displayed along with
customers to make the available services being
Restaurant reservation for offered. Cost of service should
restaurants and dining be displayed as well along
places. with the Availability Schedule
of the service.
Example of Transportation
Reservation The application shall allow Services:
customers to make
Transportation
bookings for a ride and Taxis
transportation services. Car for Hires
Flights
Filters:
The application shall allow
By Service Provider and their
Search for Reservation customers to search for a
location
reservation service.
By Category
Cost of Reservation
The application shall allow Filters:
customers to filter their
Reservation Search search results when By Service Provider and their
Filter searching for a location
reservation service By Category
provider. Cost of Reservation
The application shall allow
customers to make a
Book a Service booking for a reservation  
service and proceed to
payments.

Cedezone Limited
23
Loyalty & Rewards App – Functional Requirements Document

The application shall


support HCE Payments to
HCE Payments allow customers to pay HCE solutions
with their linked cards
(credit card/debit card).
A QR Code technology needs
The application shall
to be implemented, allowing
support QR Code
QR Code customers to generate their
Payments to allow
Interoperability own unique QR code for them
customers to pay via QR
to make QR code
code.
transactions.
Payments The application shall Payments will be debited
support Direct to Bank directly from the customer's
Direct to Bank
Payments to allow linked bank account should
Payments
customers to pay for their they choose to pay using this
goods and services. method.
The application shall
Similar function to function to
support Peer-to-Peer
Peer-to-Peer Payments e-wallet p2p payments. User
Payments (P2P) Payments
(P2P) A can transfer fund or money
to allow users to pay to
to User B or vice versa.
each other.
The application shall
Bill & Utility Payments support bills and utility  
payments.
The application shall allow
the customers to contact
Contact Merchant  
the merchant should they
have any inquiry.
The application shall allow
the customers to contact
Contact Support the merchant should they  
have concerns related to
mobile app.
The application shall allow
Receiving in-app notifications
the customers to receive
Messaging In-app Notification only if the customers are
in-app notifications
active/online on the app.
directly to their device.
The application shall allow
the customers to receive
Push Notification  
push notifications directly
to their device.
The application shall allow
the customers to have a
Message Inbox  
section where they can
view their messages.
Notification Interface The application shall allow  

Cedezone Limited
24
Loyalty & Rewards App – Functional Requirements Document

the customers to have a


section where they can
view account
notifications.
Recommended to receive
The application shall allow
such notifications in case of
the customers to receive
SMS Notification any account movement. Nice
SMS notifications directly
to have for added account
to their device.
security.
Recommended to receive
The application shall allow
such notifications in case of
the customers to receive
Email Notification any account movement. Nice
email notifications directly
to have for added account
to their device.
security.
Information The application shall allow
the customer to have a
FAQs view where they can see  
the frequently asked
questions.
The application shall allow
the customer to have a
view where they can see
Merchants  
the list of participating
merchants and
aggregators.
The application shall allow
the customer to have a
Terms and Conditions  
view where they can see
the terms and conditions.
The application shall allow
the customer to have a
Data Privacy view where they can see
 
Policy/GDPR the Data Privacy Policy
and General Data Privacy
Regulations (GDPR).
Social Media The application shall allow Icons with links to the
the customer to have a following social media
view of the social media platforms:
information of the mobile
app. Facebook
Instagram
Twitter
LinkedIn

When clicked, the user is


redirected to the social media
page.

Cedezone Limited
25
Loyalty & Rewards App – Functional Requirements Document

The application shall allow


Information to be displayed:
the customer to have a
About view of the About
Powered by Cedezone
information of the mobile
Mobile app version
app.
The languages used in the
African Region are the top
The application shall allow
priorities.
the customers/users to
Language Translation
specify their desired
Country Flag should be
language within the app.
displayed right next to the
language.
The currencies circulating in
the African Region are the top
The application shall priorities.
Currency support currencies
worldwide. Currency Sign should be
Others
displayed right next to the
currency.
The application shall allow
customers to have quick
Quick links  
links button for easier
navigations.
The application shall allow
the customers to see
Banners and Promotion promotions, offerings,
 
Placeholders discounts, ads, and
campaigns posted by
participating merchants.
Views The application shall allow
the customers to have an
interface to select/choose
their interests and have
My Interest  
an option to receive all
offers OR only those
offers basis the selected
interest
The application shall allow
the customers to have an Clicking this section will show
My Offers
interface to view of the offer details
available offers.
My Merchants The application shall allow Clicking this section will
the customers to have an display full merchant list
interface to view the
count and summary of
merchant interests.

Cedezone Limited
26
Loyalty & Rewards App – Functional Requirements Document

The application shall allow


the customers to have an
interface to show offers
Other Offers from other merchants the  
consumer isn’t subscribed
to, aligned to the
consumer interests.
The application shall allow
the customers to have an
Clicking this section drills
interface to display
Merchant Categories down to categories,
number of categories
merchants in categories.
consumer merchants
belongs.
The application shall allow
the customers to have an
My Rewards interface to display shows  
coupons, cash backs, and
points accrued.
The application shall allow
Contact Us the customers to contact  
support.
The application shall allow
the customers to have
Settings interface for app settings  
for them to localize their
application preference.
Additional The application shall allow
Menus the customers to have
interface for them to
leave a feedback for a
Leave Merchant or
merchant or for a specific
Merchant Products and  
product or service. With
Services Feedback
this interface, the
customers can view
merchant reviews posted
by other customers.
The application shall allow
Social Media
Share Product the customers to share  
Integration
product via social media.
The application shall allow
the customers to
Predictive
Predictive Analysis automatically display new  
Analysis
products based on their
customers.

Cedezone Limited
27
Loyalty & Rewards App – Functional Requirements Document

The splash screens can be


The application shall allow
utilized as a medium that
Splash the users to have a splash
Splash Screens makes it easy for customers
Screens screen while the app is
to understand how the
loading or initializing.
rewards program works.
Incentivizing referral program
to boost customer retention
and customer reach.

The application shall allow Please note that invite link


the users to generate an and referral code is different
Referral Generate Invite Link or invite link or referral code and both should be
Program Referral Code for them to refer another implemented. The referral
potential user of the code will be used by
application. customers who signup via
mobile app while the invite
link are for customers who
are signing up via web
application.
The application shall allow The feature will show the
Delivery the consumers to track status of the delivery as to
Real-Time Delivery Tracking down their purchased where it is, who is handling
Monitoring goods/products while in the delivery, and the
transit (delivery). estimated time of delivery.

Cedezone Limited
28
Loyalty & Rewards App – Functional Requirements Document

4. User Requirements
This section highlights the ideal business process that Cedezone wanted to achieve. This section also
provides high-level business use cases and scenarios that describe what the users are expecting with
their corresponding process flows. These use cases will provide the basis for the application
development and a guideline for processes that will be incorporated within the system. Use Cases in
this section are used in system analysis to identify, clarify, and organize system requirements, and
consists of a set of possible sequences of interactions between systems and users in an environment
and related to a goal through primary and alternate flows. This Use Case section also highlights
navigational mappings of how a user can navigate from one page to another (application homepage
to a different section of the app

4.1. Web App Interface User Stories


A website is required and regarded to be a pre-requisite for users to do a web-based
registration. This section highlights the ideal views (webpages, sections, tabs, etc.) in the web
user interface that Cedezone wanted to achieve. A high-level description is also provided along
with the list of desired views.

4.1.1. Pre-Login View

User Story
Requirements User Story Note(s)
Pre-Login View As a user, I want to have a view of the
website interface even without logging
in or without an account at all.  
As a user, I want to see in the interface Merchants Tab with the following
the list of participating merchants, their details:
details, and their ongoing promotions.
i. List of Participating Merchants
ii. Merchant details
iii. Their program promotions

Cedezone Limited
29
Loyalty & Rewards App – Functional Requirements Document

About Us that displays:

As a user, I want to be able to see i. About Cedezone


information about the platform owner. ii. Company Profile
As a user, I want to be able to see
information about the loyalty and
rewards program.  
Contact Us page where it displays the
following:

i. Cedezone mailing address (location


address)
ii. Cedezone email address
As a user, I want to have a Contact Us iii. Cedezone customer service contact
page. number
As a user, I want to see the register
button within the interface so I could
 
have access to the registration page
should I opt to participate.
Details:

Name, First Name, Last Name, Email,


As a user, I want to have a registration Mobile, Birthday, Marital status,
page where it asks for my personal Country, State, City, Pin code, Address,
details. and Point of Interest

Scenario:
On the assumption that the user does not yet have a loyalty and rewards account – at the
homepage of the website, the customers can see the following options on the page:

a) Merchants
i. List of Participating Merchants
ii. Merchant details
iii. Their program promotions

b) Register
i. Registration page with the onboarding form
ii. The registration form must have the following fields:
 Name
 First Name
 Last Name
 Email
 Mobile
 Birthday
 Marital status

Cedezone Limited
30
Loyalty & Rewards App – Functional Requirements Document

o Country
o State
o City
o Post code
 Address
 Point of Interest

c) Program Details
i. Details about the loyalty and rewards program

d) Contact Us
i. Cedezone mailing address (location address)
ii. Cedezone email address
iii. Cedezone customer service contact number

e) About Us
i. About Cedezone
ii. Company profile

4.1.2. Post Login View


User Story
Requirements User Story Note(s)
E.g.
As a user, I want to have an interface where I can see the Merchants
merchants I am associated with. Page
E.g.
As a user, I want to have the ability to view merchants and enroll Enrollment
or subscribe to them. Page
As a user, I want to have an interface where I can see my profile E.g. User
information in case, I need to update them. Profile page
Post-Login View
As a user, I want to have web page that displays all my activities
especially my transactions. The page should also display other
information that corresponds to my transactions. Filtering my E.g. Activity
transaction for easy backtracking would be ideal. Page
As a user, I want to have a dedicated page for Rewards that E.g. Rewards
displays my coupons, points, cashbacks. Page
As a user, I want to have a page where I can see the campaigns I
am participating with.  

Scenario:
On the assumption that the user already have a loyalty and rewards account. The user after
successful login can access the following:

Cedezone Limited
31
Loyalty & Rewards App – Functional Requirements Document

a. Merchants – This section displays all the merchants that the customer is associated
with. Additionally, the users can:
i. View all Merchants
ii. View Enrolled Merchants
iii. View Visited Merchants

b. Enroll – The customer can enroll with a new merchant.


i. This section also displays all the merchants along with the Merchant category.
ii. This section allows the customer to select any merchant to register himself with
the merchant.

c. User Profile – The customer can enter, view all his fields with an option edit his personal
details:
i. First Name – Mandatory
ii. Last Name – Mandatory
iii. Email – Mandatory
iv. Mobile – Mandatory
v. Birthday – Mandatory
vi. Marital status
vii. Address – Mandatory
 Country
 State
 City
 Post Code
viii. Point of Interest or Merchant Categories (Optional)
ix. Profile Picture (Optional)
x. Language

d. Activity
i. This section will display all the transactions done by the customer at various
merchant outlets. The following activity details that will displayed are as follows:
 Transaction Date
 Merchant Name
 Card number
 Purchase Amount
 Redemption applicable

ii. The customer can search their activities and filter them by:
 Merchant name
 Date range (Activity dates)

e. Rewards – This section shows all the rewards the customers have earned from various
merchants. Rewards can be earned in following three ways:

Cedezone Limited
32
Loyalty & Rewards App – Functional Requirements Document

i. Coupons – this tab displays all the coupons from various merchants that the
customer can select OR avail.
ii. Points/Cashbacks – this tab displays all the Points/Cashbacks that the customer
can have.
iii. Campaigns
 This tab displays all the campaigns the customer is associated with.
 Every campaign displays the stats of the customer and the reward that
he may win after “X” visits.
iv. The coupons, points/cashbacks/campaigns are seen by the customers when the
merchant selects OR publishes these to the customers.

4.2. Onboarding User Stories


The onboarding scenarios describes the channels and instances wherein a customer is
onboarded to the merchant’s loyalty and rewards program.

4.2.1. Onboarding Channels


These are different channels that have been identified to be a medium for customer to be
onboarded to the merchant’s loyalty and rewards program.

Merchant Outlets
User Story
Requirements User Story Note(s)
In-Store As a merchant, I want customers to be
Registration able to register and create an account  
within the merchant store.
Details:
As a merchant, I want to have an
Name, First Name, Last Name, Email,
interface where my customers can
Mobile, Birthday, Marital status,
register and enter their personal details.
Country, State, City, Pin code,
Address, and Point of Interest
Details:
As a merchant, I want to have an
interface where I can onboard my Name, First Name, Last Name, Email,
customers by signing them up and Mobile, Birthday, Marital status,
entering their details. Country, State, City, Pin code,
Address, and Point of Interest
As a merchant, I want to be able to
mark/map/tag the customer accounts
 
I've created under my name (merchant
store name).
As a merchant, I want the customer
details to be synchronized with Cedezone  
platform.

Cedezone Limited
33
Loyalty & Rewards App – Functional Requirements Document

Scenario:
A customer can do an in-store registration through merchant outlets where a sales staff (or
could be any merchant partners) can assist them through the onboarding process.

The abstraction above shows the high-level process of in-store registration for customers. A
sales staff or a merchant can access the merchant till app, where they can manage their
customers in a sense of onboarding of them.

For the customer to be onboarded, they will need to provide their details. The required
customer details to be captured are as follows:

a) First Name – Mandatory


b) Last Name – Mandatory
c) Email – Mandatory
d) Mobile – Mandatory
e) Birthday – Mandatory
f) Marital status
g) Address – Mandatory
i. Country
ii. State
iii. City
iv. Post Code
h) Point of Interest or Merchant Categories (Optional)
i) Profile Picture (Optional)
j) Language

The merchant will capture the customer details and enter those into the application through a
registration form.

Cedezone Limited
34
Loyalty & Rewards App – Functional Requirements Document

Upon completing the form, the merchant will provide the customer their account number which
can be used as reference number for the customer to earn points in the future.

In parallel, the customer will receive a registration notification via SMA or Email, at times, it
could be both – regarding the registration they made to the merchant’s loyalty and reward
program.

All customer data captured will be stored into the merchant’s CRM application (could be
Cedezone’s CRM App or a third-party application). The merchant’s CRM application will
synchronize with the Cedezone platform () in updating customer detail.

Post-Sales/Transactions Registration

User Story
Requirements User Story Note(s)
Post-Sale As a merchant, I want to have a popup message Popup box with 2 options: Yes
Registration that will appear on the merchant till asking me and No. Clicking Yes,
to onboard a customer - every time I finished registration form will come up

Cedezone Limited
35
Loyalty & Rewards App – Functional Requirements Document

processing customer transaction.


As a merchant, I want to have an interface
where my customers can register and enter
their details.
As a merchant, I want to be able to to onboard the customer.
mark/map/tag the customer accounts I've
created under my name (merchant store name).
As a merchant, I want the customer details to be
synchronized with Cedezone platform.

Scenario:
For every post-sales/transaction, the merchant will ask the customer if they have a loyalty
account. If the customer does not have an account, the merchant have the capability to onboard
the customer.

The process abstraction above shows how a customer can be onboarded after their transaction
with a merchant.

After a successful transaction, the merchant till application pops up an alert asking the merchant
if they wanted to onboard their customer (the customer who just completed the transaction).

For instances that the customer paid the transaction by card, a card hash number will be
generated as a token. The token will be used to mark and identify as a customer’s stored
payment method. Subsequent use of this card will automatically identify the customer. This will
save the merchant the time in pulling up the customer accounts in the future.

Cedezone Limited
36
Loyalty & Rewards App – Functional Requirements Document

If the customer does not have a loyalty and rewards account, the merchant can click “YES”, on
the assumption that the customer opted to be onboarded. Upon clicking the “YES” button, the
onboarding registration form will come up enabling the merchant to assist the customers in
filling in their details.

The generated card hash number will be automatically associated with the customer account
has been created. All customer records under an account will be saved into the merchant
database and will then be in synchronize with the Cedezone platform. In parallel, an SMS or
Email will be sent to the onboarded customers for onboarding confirmation and notification.

Cedezone Limited
37
Loyalty & Rewards App – Functional Requirements Document

The registration form will serve as a medium to capture customer details and will be stored into
the loyalty and reward application. The required customer details to be captured are as follows:

a) First Name – Mandatory


b) Last Name – Mandatory
c) Email – Mandatory
d) Mobile – Mandatory
e) Birthday – Mandatory
f) Marital status
g) Address – Mandatory
i. Country
ii. State
iii. City
iv. Post Code
h) Point of Interest or Merchant Categories (Optional)
i) Profile Picture (Optional)
j) Language

The merchant will provide the customer their account number which can be used as reference
number for the customer to earn points in the future.

In parallel, the customer will receive a registration notification via SMA or Email, at times, it
could be both – regarding the registration they made to the merchant’s loyalty and reward
program.

All customer data captured will be stored into the merchant’s CRM application (could be
Cedezone’s CRM App or a third-party application). The merchant’s CRM application will
synchronize with the Cedezone platform () in updating customer detail.

Registration Links/Website Integration


User Story
Requirements User Story Note(s)
Cedezone As a merchant, I want my customers to
Website be able to access the Cedezone
 
Registration website and from there they can do a
registration.
Details:
As a merchant, I want to have an
Name, First Name, Last Name, Email,
interface where my can register and
Mobile, Birthday, Marital status,
enter their details.
Country, State, City, Pin code, Address,
and Point of Interest
As a merchant, I want to be able to  

Cedezone Limited
38
Loyalty & Rewards App – Functional Requirements Document

access the web-based application right


away after the registration process

Scenario:
A web-based mode of registration for customers whereby customers can register and create an
account.

The abstraction above shows the high-level process of how customer onboarding works from a
web-based perspective.

The customers can directly log on to the Cedezone website and do the registration from there.
The customers can also access the Cedezone website from clicking the ads and external website
links (which redirects them to the page with the customized template/registration).
Alternatively, the customers can scan a QR code or barcode to quickly access the registration
form.

At the homepage of the website, the customers can see the following options on the page:

a) Merchants – List of Participating Merchants


b) Register – Registration page with the onboarding form
c) Program Details
d) Contact Us
e) About Us

Cedezone Limited
39
Loyalty & Rewards App – Functional Requirements Document

Regardless of the where the customers are coming from to register, they need to supply the
following details:

k) First Name – Mandatory


l) Last Name – Mandatory
m) Email – Mandatory
n) Mobile – Mandatory
o) Birthday – Mandatory
p) Marital status
q) Address – Mandatory
v. Country
vi. State
vii. City
viii. Post Code
r) Point of Interest or Merchant Categories (Optional)
s) Profile Picture (Optional)
t) Language

The captured customer records and account information will be then stored in the Cedezone
platform.

At the later part of the registration process, a notification will be sent out to the customers, via
SMS or EMAIL, at times, it can be both. In parallel, the customer is directed to the Loyalty and
Rewards Web app homepage.

Mobile App Self-Registration


User Story
Requirements User Story Note(s)
Mobile App As a customer, I want to have an  

Cedezone Limited
40
Loyalty & Rewards App – Functional Requirements Document

Registration interface where I can register


myself via mobile app.
Details:
As a customer, I want to have an
Name, First Name, Last Name, Email,
interface where I can input my
Mobile, Birthday, Marital status, Country,
personal details.
State, City, Pin code, Address, and Point of
Interest
As a customer, I want to be able to
Notification or confirmation via SMS or
receive a confirmation to know that
Email.
I have successfully registered.

Scenario:
This is another channel of customer onboarding where the customer can register themselves
and participate to merchant’s loyalty and rewards program.

The customer can create an account by downloading the mobile app into their mobile phones.
Once the mobile app have been downloaded, the app will launch and initialize itself on the
customer’s mobile phone. The customer will be routed to the mobile app login page where they
can register and create an account from there. An interface via registration form is provided to
the customers during the onboarding process. The customers are required to the supply their
details and submit their personal information to complete the process. The following required
customer details are as follows:

a) First Name – Mandatory


b) Last Name – Mandatory
c) Email – Mandatory
d) Mobile – Mandatory
e) Birthday – Mandatory
f) Marital status
g) Address – Mandatory
i. Country
ii. State
iii. City
iv. Post Code
h) Point of Interest or Merchant Categories (Optional)

Cedezone Limited
41
Loyalty & Rewards App – Functional Requirements Document

i) Profile Picture (Optional)

Cedezone is also eyeing another option for self-registration of customers. This is through social
media integration, particularly customer can “Register by Facebook”. This lets the consumers to
register using their Facebook account. What happens is that when customer have successfully
downloaded the app and they have selected this option, their Facebook account information
will be ported and used. This results to the customer registration form to populate the relevant
and necessary information taken from the customer Facebook account. The customer has to
validate and check their information that has been populated automatically. Most importantly,
the users still need to supply some details that were left blank – meaning these details were
unable to find in the user Facebook account by the application. Once all information were
supplied and validated, the user can submit their details and proceed to completing the
onboarding. The later part of the process mainly involves registration confirmation.

Customer Uploads
User Story
Requirements User Story Note(s)
Customer A web-based interface that can be
Upload As a merchant, I want to have an interface accessible for merchants and their
where I can upload my customer records third-party partners where they
externally directly to the Cedezone platform. can upload their customer
database and onboard them.
As a merchant, I want to upload my customer
 
database in a form of csv or xml file.
Details:

Name, First Name, Last Name,


Email, Mobile, Birthday, Marital
As a merchant, I want to upload as many status, Country, State, City, Pin
details as possible of my customers externally code, Address, and Point of
directly into the Cedezone platform. Interest

Name, Mobile Phone Number,


and Email are the critical fields for
the Cedezone platform.
As a merchant, I want the system to  
crosscheck the customers I am uploading if
they are associated with any other merchants.

Cedezone Limited
42
Loyalty & Rewards App – Functional Requirements Document

As a merchant, I want to have my customers


automatically enrolled to me after uploading  
their details into the Cedezone platform.
As a merchant, I want my customers to receive
an SMS or Email notification as soon as their
customer records has been uploaded and they  
be able to confirm it and further complete
their registration through this process.
As a merchant, I want my customers to have
an option to opt out from being onboarded  
through this process.
As a merchant, I want my customers to receive
a reminder via SMS or Email regarding the
 
registration they need to complete after their
records has been uploaded.

Scenario:

A web-based portal for onboarding customers is made available for merchant and retail
partners. The portal is expected to enable the merchant to import their customer database into
the Cedezone platform, thus, giving the ability to do bulk customer onboarding.

The portal should be capable of handling few imports to bulk uploads whether it is in XML or
CSV format.

On the assumption that the merchants only has few customers to be imported into the
Cedezone database, they can manually import their customer through the portal contact form.
The contact form requires the merchant to input their customer details. The following customer
details can be as many as possible, but it is critical for Cedezone to have the following:

a) Name – Text field that accepts alphanumeric values


b) Phone Number – Field that accepts only numeric values
c) Email Address – Field that accepts valid email domain (Gmail, Yahoo Mail, iCloud, etc.)

Note: Customer name, phone number, and email address are the details the platform Cedezone
need to run the customer validation and to crosscheck their existing enrollment with other
merchants.

Cedezone Limited
43
Loyalty & Rewards App – Functional Requirements Document

The image above shows the assumption of the representation of customer upload portal where
the merchants can upload their customer database. The portal immediately checks any data
inconsistencies. As shown from the image, there are warnings. This shows that there are
characters inserted into the fields where they are treated as invalid.

Once the customer data are saved, all the records are uploaded to the Merchant Data
Warehouse. The Merchant Database or Data Warehouse is outside the Cedezone platform
(Customer Management) and on a separate server. The customer/contact data are also
synchronized with Cedezone platform (Customer Management).

Cedezone Limited
44
Loyalty & Rewards App – Functional Requirements Document

The image above shows the abstraction of the high-level process of customer upload. Every time
the merchant upload a contact, there will always be a data validation that will take place. On the
assumption that the uploaded contact records are already existing within the Cedezone
database, the data validation will run and crosscheck the data that were uploaded to the
existing customer/contact database. The validation will check if the customers are already
associated with a merchant. If there are any matches (a customer is already enrolled with a
merchant), the application will then proceed to associating that customer to the new merchant.
There will be no overwriting of data that will be made, only new association, hence, the existing
association of customers to other merchants will be retained. This is to keep those customers
who are enrolled to multiple merchants.

Note: Merchant association will enable the merchant (who is uploading the file) to see the other
merchants the customers are associated with.

At some point of the customer upload process, the customers are notified and informed about
the association (their details are being imported into the system and they are being onboarded
into the merchant’s retail activities (Loyalty and Rewards program etc.). The customers needed
to authenticate themselves via OTP – it could be either SMS or Email.

In parallel, a link will be sent to these customers where they can access the registration form.
The customers needed to supply the rest of their details. Those details in which were not
included during the customer upload process (e.g. Profile photo, etc.).

Cedezone Limited
45
Loyalty & Rewards App – Functional Requirements Document

There will be a reminder notification that will be sent out to the customers who haven’t
completed the registration. The reminder notification will be sent out to these customers days
after the customer upload has finished.

Note: Once the customer database has been uploaded, the merchants can have the option to
have their list of customers to be activated first by their merchant system administrator. Once
customers are activated, a notification will be sent out to the customers. The notification can be
either in a form of SMS or email. The notification contains OTP as well. If the customer wishes
not to participate from the onboarding process (customer upload), then they can opt out
anytime within the process and the merchant or Cedezone will take action to remove them from
the list.

Merchant Registration
User Story
Requirements User Story Note(s)
Merchant As a merchant, I want to have
Registration an interface where I can
register. This is for me to
access any of the solutions
being offered by Cedezone
Details:

 First Name (Mandatory)


 Last Name (Mandatory)
 Company Name (Mandatory)
 Country & Currency (Mandatory)
 Tax ID Number (Mandatory)
As a merchant, I want to have
 Nature of Business/Industry/Merchant
a registration form where I
Category
can enter my details.
 Company Contacts (Name, Email, phone
number and designation)
 Outlet Details (Outlet Name, Address,
Manager, Phone Number, Geolocation
(Google Map integration), Outlet Image,
etc.)
 Upload Logo
As a merchant, I want to have
the capability to register
 Merchant provides details of system users, assign
other employees of mine and
their roles (admins and other users roles) so they
assigned their user roles,
can manage the retail business within the app.
rights, access, and
permissions.

Cedezone Limited
46
Loyalty & Rewards App – Functional Requirements Document

Scenario:

For every new merchant, this will be the onboarding process. New merchants have to undergo
this onboarding process for them to have access to any of the solutions being offered Cedezone.
This registration can be done in two ways – either through front-end (via Cedezone website) or
through back-end whereby a merchant has filled in a physical form by an Cedezone
administrator.

The abstraction above shows the ideal flow for merchant registration. Merchants have two
options to for onboarding, either back-end registration through filling out a physical form with
the help of an administrator or logging into the Cedezone website. Either of t he two options, the
onboarding merchant needs to provide their details. The required details are as follows:

 Merchant selects if business entity is an individual or a corporate entity (Mandatory


field).
 Merchant states First name and last name, or company name as appropriate
(Mandatory fields).
 Selects country and currency. (Mandatory field and merchants have the option to select
multiple countries).
 Merchant states tax ID number (Mandatory field).
 Merchant selects nature of business/ Merchant category (Drop-down menu that list
down all the merchant category. Merchant also have the capability to add more than
one nature of business)
 Merchant types details of key company contacts (Name, email, phone number and
designation). Name, email, and phone number are mandatory fields as they are used by
the application as unique user identifier.
 Merchant enters details of sales outlets. (Outlet name, address, manager, phone
number, etc.) Google map integration here will help. Outlet image upload to be
included.
 Merchant assigns users. The merchant needs to provide details of the assigned system
users and specify their roles.
 Merchant to upload their logo.

Cedezone Limited
47
Loyalty & Rewards App – Functional Requirements Document

Third-Party Registration

Scenario:

The third-party registration accommodate merchant partner entities such as Banks or Loyalty
solution providers to register on the platform and participate to the merchants’ loyalty and
rewards program hosted within the Cedezone platform. This will enable any 3rd parties to have
the same capability of a participating merchant within loyalty and rewards application.

The method for onboarding third parties can be done in two ways, either through front-end (via
Cedezone website) or through back-end whereby a merchant has filled in a physical form by an
Cedezone administrator.

The ideal flow for 3rd party registration above shows that a third party have two options to for
onboarding, either back-end registration through filling out a physical form with the help of an
administrator or logging into the Cedezone website. Either of the two options, the onboarding
merchant needs to provide their details. The required details to be entered are as follows:

 Third-party to declare company name as appropriate (Mandatory field)


 Selects country and currency. (Mandatory field and merchants have the option to select
multiple countries).
 Third-party states tax ID number (Mandatory field).
 Details of 3rd party company contacts such as name, email, phone number, and
designation are required and thus needs to be provided by the onboarding third-party.
 3rd -party needs to select existing merchant outlets for consumer redemption.

Cedezone Limited
48
Loyalty & Rewards App – Functional Requirements Document

 3rd party provides details of system users (Admin and other users, also assigns rights to
users.
 3rd to upload their representing company logo.

4.2.2. Registration Form


User Story
Requirements User Story Note(s)
As a merchant, I wanted to have
an interface where the
registration form is.  
Registration Details:
Form
As a merchant, I wanted to have Name, First Name, Last Name, Email, Mobile,
the registration form to capture Birthday, Marital status, Country, State, City,
my customer details. Pin code, Address, and Point of Interest

Scenario:
The ideal registration form is required containing all the necessary data fields capture the
customer details as accurate as possible.

Cedezone Limited
49
Loyalty & Rewards App – Functional Requirements Document

a) First Name – Mandatory


 Text field maximum of 256 characters
b) Last Name – Mandatory
 Text field maximum of 256 characters
c) Email – Mandatory
 The field must be formatted to accept valid email (Gmail, Yahoo Mail, iCloud,
etc.)
d) Mobile – Mandatory
 There should be separate drop-down menu for users to select their
corresponding country code.
 The field is configured accept numeric values only.
e) Birthday – Mandatory
 Date picker
f) Marital status
 (A drop-down menu that selects the user statues either Married or Single)
g) Address – Mandatory
 Country – Drop-down menu that lists all the countries
 State – Drop-down menu that lists all the state for the selected country. This
field is changing/adjusting its content automatically if the user is changing their
selected country.
 City – Text field maximum of 256 characters
 Post code
h) Point of Interest or Merchant Categories (Optional)
 Drop-down menu that list down all the merchant categories (Lifestyle and
Leisure, Travels, Fashion, etc.)
 The content of the drop-down menu is customizable by the merchants
 The selected points of interests or merchant categories selected by users affect
platform merchant lists that are displayed to the users in-app
i) Profile Picture (Optional)
 Suggested profile picture size is 180 x 180 px
 Suggested image file type is JPEG

4.2.3. Customized Templates (Customized Registration Form)


User Story
Requirements User Story Note(s)
As a merchant, I want to have the provision to create and customized
registration forms before integrating it to a third-party website or
application.  
Customized
As a merchant, I want to be able to specify which customer fields are
Templates
necessary to use for the customized registration form.
 
As a merchant, I want to be able to personalize registration forms, its
cosmetics, and even add banners or logos in it.  

Cedezone Limited
50
Loyalty & Rewards App – Functional Requirements Document

Scenario:

For merchants to extend their onboarding reach, a customized templates feature is required. A
customized template means that a merchant can customized a registration form in a sense of
changing its cosmetic. That would mean that the merchant can add their logo, change the
colors, and even use only the appropriate and necessary details. The merchants after
customizing a registration form can issue the customized form itself to their retail partners.
Issuing means that the customized form can be integrated into a third-party platform. A third-
party platform can be website or mobile app.

4.2.4. Third-Party Registration Integration


User Story
Requirements User Story Note(s)
As a user, I want to be able to register using my
Facebook Account or from any other third-party E.g. Facebook, Google,
Third-Party applications. etc.
Integration
As a user, I want to have my information from the E.g. Email Address,
Registration
third-party application I used to register to be Profile Photo, Name,
ported into the Cedezone application. Birthday, etc.

Scenario:
On the assumption that the customers are doing the self-registration process via website or
mobile app – the customers can register by:

a) Social Media e.g. Facebook


b) Google

4.2.5. SMS and Email Interoperability and In-App Notifications


User Story
Requirements User Story Note(s)
As a user, I wanted to receive
SMS notifications via SMS regarding
Interoperability critical activities on my account. Transaction verifications, OTP codes, etc.
As a user, I wanted to receive
Email notifications via Email regarding Registration confirmation, password reset
Interoperability critical activities on my account. confirmation, Updates, etc.
Notifications regarding application updates,
account movement, security, merchant
updates, etc.

Ideally, there is an icon somewhere that lets


As a user, I wanted to receive the user views all the notifications in-app
In-app app notifications in-app of (similar to how notifications are displayed in
Notification updates. Facebook for instance).

Cedezone Limited
51
Loyalty & Rewards App – Functional Requirements Document

Scenario:
The web app and mobile app requires the interoperability with SMS and email. SMS and emails
are required during the registration process for the following reasons:

a) Registration verification – at times, email can be used to verify registration


b) Registration notification – the users are notified of the successful registration

In-app notifications on the other hand is implemented within the customer management
application. Ideally, an icon exists for users to click and that will display all the notifications
whether it is related to security, account changes and movement, application updates, etc.

4.2.6. Onboarding Processes & Flows


This section highlights the desired process flows of customer onboarding and its functional
requirements which will be the point of reference during the application development in terms
of the interface and behavioral logic of the system

Use Case Number Onboarding – Use Case 001


Process Name Merchant Outlets (In-Store Registration)
Description The process of onboarding customers from the merchant outlets.
Consumers, Merchant’s Customers, Merchants, Merchant’s Retail
Actor(s) Partners
The customers wanted to participate in the merchant’s loyalty and
rewards program. The customer is within the store premise and about to
register. The merchant is with the customer to assist during the
Pre-conditions onboarding process.
The merchant uses Cedezone platform to onboard a customer. The
merchant is assisting the customer to fill up the registration form and
enter their details and personal information.

Alternatively, merchants can setup self-service kiosks for customers to do


the registration themselves. The customers will be subjected to fill up the
registration form to complete the process.

A confirmation registration will be sent out to the customers via SMS or


Flow of Events email as part of the Cedezone KYC and security process.
The customers were able to register and create an account within the
store premise. The customer account will be tagged and mapped under
the store merchant upon creation (customer is enrolled with the
Post-conditions merchant who assisted during the onboarding process).
This case is complete when the customer is onboarded and have created
Exit Criteria their account.

Cedezone Limited
52
Loyalty & Rewards App – Functional Requirements Document

Use Case Number Onboarding – Use Case 002


Process Name Post-Sales/Transactions Registration
The process of onboarding customers from the merchant outlets after
Description completing the transaction.
Consumers, Merchant’s Customers, Merchants, Merchant’s Retail
Actor(s) Partners
Pre-conditions The merchant successfully completed the customer’s transaction.
The merchant just finished processing the customer transaction. An
onboarding message will appear in a form of a pop-up box asking the
merchant if they wanted to onboard the customer. If the merchant clicked
yes (given the customer agreed to be onboarded), a registration form will
appear. Merchant will assist the customer to enter their details into the
application. Subsequently, if the customer has paid the transaction by
credit card – a card token (card has number) will be generated. The card
number will be used to identify the customer on his next transaction as
the till app always calculates using this hash number as a point of
reference in awarding points and cash backs. Identifying the customers
via card hash number is practically works as stored payments.

The customers who were onboarded and, in the future, they transacted
using cash, they can provide their account details to merchants to be able
to pull up their records and award the points to their accounts.

Additionally, customers account created in this process are mapped under


the merchant who assisted the customers during the registration process.
Mapped – meaning “this customer was created by merchant “X” – where
is “X” is the name of the merchant.

Once the customer account has been created, their data and account
information will be synchronized and stored in the Cedezone platform.

A confirmation registration will be sent out to the customers via SMS or


Flow of Events email as part of the Cedezone KYC and security process.
The customer is onboarded by the merchant after they completed their
transaction. Their account has been created and their details are now
stored in the Cedezone platform. The customer account will be tagged
and mapped under the store merchant upon creation. A card hash
number is created for every customer that will be used to automatically
Post-conditions identify them on their succeeding transactions.
This case is complete when the customer has been successfully onboarded
by the merchant after the transaction. Customer data are stored and
Exit Criteria reflects in the Cedezone platform.

Cedezone Limited
53
Loyalty & Rewards App – Functional Requirements Document

Use Case Number Onboarding – Use Case 003


Process Name Registration Links/Website Integration
Description The process of onboarding customers from the Cedezone website.
Consumers, Merchant’s Customers, Merchants, Merchant’s Retail
Actor(s) Partners
The registration form is made available in the Cedezone website. Several
ads, and merchant advertisement are posted in different third-party
Pre-conditions websites.
The registration form in the Cedezone website can be accessed by
customers via scanning a QR code or could be clicking the merchant
advertisements. A registration form will be provided via the Cedezone
platform where customer can fill in their details and information. The
customers can submit the form to complete the registration and create
their account. Customer records and account information will be then
stored in the Cedezone platform.

A confirmation registration will be sent out to the customers via SMS or


Flow of Events email as part of the Cedezone KYC and security process.
The customers can register and create an account via Cedezone website.
The customers have verified their registration from the confirmation
registration sent via SMS and email. Their account details will be stored in
Post-conditions the Cedezone platform.
This case is complete when successfully registered and created an
Exit Criteria account via Cedezone website.

Use Case Number Onboarding – Use Case 004


Process Name Mobile App Self-Registration
The process of onboarding customers from the Cedezone mobile
Description application.
Actor(s) Consumers, Merchant’s Customers
The merchant’s customers (consumers) already downloaded the
Pre-conditions Cedezone Website.
Flow of Events The registration form in the Cedezone website can be accessed by
customers via scanning a QR code or could be clicking the merchant
advertisements. A registration form will be provided via the Cedezone
platform where customer can fill in their details and information. The
customers can submit the form to complete the registration and create
their account. Customer records and account information will be then

Cedezone Limited
54
Loyalty & Rewards App – Functional Requirements Document

stored in the Cedezone platform.

A confirmation registration will be sent out to the customers via SMS or


email as part of the Cedezone KYC and security process.
The customers can register and create an account via Cedezone mobile
application (consumer app). The customers have verified their registration
from the confirmation registration sent via SMS and email. Their account
details will be stored in the Cedezone platform. The customer upon
Post-conditions successfully registration will end up logged into the mobile app.
This case is complete when successfully registered and created an
Exit Criteria account via Cedezone website.

Use Case Number Onboarding – Use Case 005


Process Name Customer Uploads
Description The process of onboarding customers from the Customer Upload Portal.
Consumers, Merchant’s Customers, Merchants, Merchant’s Retail
Actor(s) Partners
The customers wanted to participate in the merchant’s loyalty and
rewards program. The customer is within the store premise and about to
register. The merchant is with the customer to assist during the
Pre-conditions onboarding process.
The merchant uses Cedezone platform to onboard a customer. The
merchant is assisting the customer to fill up the registration form and
enter their details and personal information.

Alternatively, merchants can setup self-service kiosks for customers to do


the registration themselves. The customers will be subjected to fill up the
registration form to complete the process.

A confirmation registration will be sent out to the customers via SMS or


Flow of Events email as part of the Cedezone KYC and security process.
The customers were able to register and create an account within the
store premise. The customer account will be tagged and mapped under
the store merchant upon creation (customer is enrolled with the
Post-conditions merchant who assisted during the onboarding process).
This case is complete when the customer is onboarded and have created
Exit Criteria their account.

Use Case Number Onboarding – Use Case 006

Cedezone Limited
55
Loyalty & Rewards App – Functional Requirements Document

Process Name Registration Form


Description The process of onboarding customer using the registration form interface.
Consumers, Merchant’s Customers, Merchants, Merchant’s Retail
Actor(s) Partners
Pre-conditions The actors are in the onboarding process regardless of the channel.
Regardless of the onboarding the channel, they are filling up the following
details:

First Name, Last Name, Email, Mobile, Birthday, Marital status, Address
(Country, State, City, Post Code), Point of Interest or Merchant Categories
(Optional), Profile Picture (Optional), and Language

Once all the necessary details are entered, the actors to submit the
entered details and will be then saved into the Cedezone platform. Once
submitted, they will receive a notification via SMS or email regarding the
Flow of Events registration notification.
The actors were able to register and create an account using the
Post-conditions registration form.
This case is complete when the customer is onboarded and have created
Exit Criteria their account.

Use Case Number Onboarding – Use Case 007


Process Name Third-Party Registration Integration
The process of onboarding customers from any third-party platforms e.g.
Description Websites, third-party mobile apps, etc.
Consumers, Merchant’s Customers, Merchants, Merchant’s Retail
Actor(s) Partners
The registration form (registration process) of participating merchants
and Cedezone are integrated with a third-party application through
Pre-conditions customized templates (via APIs).
Flow of Events Loyalty and Rewards program are advertised and posted in a third-party
application (either web-based or mobile app). Customers can register on
a third-party (could any third-party registration process is integrated to)
and create an account. A registration form will be provided in an interface
where customer can fill in their details and information. The customers
can submit the form to complete the registration and create their
account.

Customer records and account information will be then stored in the

Cedezone Limited
56
Loyalty & Rewards App – Functional Requirements Document

Cedezone platform.
The user can register and create an account via third-party applications.
Their account details will be stored in the Cedezone platform. The
customer account will be tagged and mapped under which merchant
Post-conditions campaign (registration form) belongs to upon account creation.
This case is complete when successfully registered and created an
Exit Criteria account via third-party registration channel.

Use Case Number Onboarding – Use Case 008


Process Name SMS and Email Interoperability
The process of receiving an SMS or email
Description notification/verification/confirmation.
Consumers, Merchant’s Customers, Merchants, Merchant’s Retail
Actor(s) Partners
Pre-conditions The actors have successfully registered and created their account.
Upon successful registration of the actors, irrespective of the onboarding
channel, they will receive a notification via SMS or email notify, verify and
Flow of Events authenticate their registration.
The actors were able to receive an SMS or email for registration
Post-conditions verification and notification.
This case is complete when the actors received a notification via SMS or
Exit Criteria email – that means they were successfully onboarded.

4.3. Customer Management User Stories


The customer management scenarios describes the instances wherein a merchant is using the
customer management application as their CRM medium in managing customer records and
accounts.

4.3.1. Customer Management Usage Scenarios


This section identifies the scenarios and states the stories and requirements from the user
perspective as to where the Customer Management (CRM) application of Cedezone will be
utilized by merchants and potential customers.

Customer Upload Portal


User Story
Requirements User Story Note(s)

Cedezone Limited
57
Loyalty & Rewards App – Functional Requirements Document

As a merchant, I want to have an


interface that I can access via web
browser to import my customer E.g. Interface that is accessible via web
database. link.
As a merchant, I want to have a
capability to upload my customer
Customer database in a form of a CSV or XML file.  
Upload Portal
As a merchant, I want to have a
complete visibility of records that I am E.g. Interface that shows the customer
uploading into the application. records that I am about to upload.
As a merchant, I want to have the E.g. Phone Number fields only accept
customer record fields to accept only numeric values, Email Address field
valid inputs. only accept valid email format, etc.

Scenario:

For the customer upload to be possible as one of the medium in onboarding customers, an
interface is required for the merchants to make it happen. The interface can be in a form a web
page, connected in a sense to the Cedezone platform.

For more details about the Customer Upload requirements from the onboarding perspective,
refer to Customer Upload of 4.2.1 Onboarding Channels.

Cedezone Limited
58
Loyalty & Rewards App – Functional Requirements Document

Data Capture
The customer management can capture customer records and will be the primary tool for
merchants to manage and maintain their customer database. The customer management is also
intended to be the medium in onboarding merchant customers regardless of the channel. The
customer management platform shall house all the customer data and information within the
Cedezone app cluster (mobile app, customer management, loyalty and rewards, reservation,
and inventory management).

For the data capture to be possible, the requirements from 4.2.2 Registration Form of
onboarding customers must be met.

Integration to External Systems


The customer management platform will be integrated into external systems such as:

a) Merchant tills and kiosks – The customer management can be used at merchant
locations or using the merchant till apps. Customer information will be fetched from
this platform for transactions executed on the Merchant till application. This allows
viewing of customer account history from a single solution.

b) Third-party websites – The merchants and their third parties can publish a link to a
customised registration page. For instance, the third-party can onboard its members
using a customised page that has its branding elements (their own log and corporate
colours). The third parties can customise their own instance of the onboarding page.
Email notification for these instances will also be customised. Easy to setup SMTP
integrations must also be put in place to enable third parties in engaging their base.

This requirement is the same as the requirements from the 4.2.3 Customized Templates
(Customized Registration Form) of onboarding customers.

c) Social Media Logins and Registrations – The customer management application will
support third-party website and social media registrations. For instance, a user decided
to onboard themselves by signing up to the mobile app interface of the loyalty and
rewards. The customer management shall support this the same way with how the
logging works. The customers shall be able to login using their social media accounts
and other third-party websites.

Cedezone Limited
59
Loyalty & Rewards App – Functional Requirements Document

This requirement is the same as the requirements from the 4.2.4 Third-Party
Registration Integration of onboarding customers.

4.3.2. Login and Logout


User Story
Requirements User Story Note(s)

As a merchant, I want to be able to have an interface where I can login


to the customer management app.  

As a merchant, I want the login interface to have necessary fields for


Login me to enter my credentials (username and password fields).  
As a merchant, I want my password to be protected in a way that every
time I type my password into the password text field, the characters
are masked.  
As a merchant, I want the interface to have the necessary buttons for
me to login.  
As a merchant, I want to be able to logout from the mobile anytime
regardless of what section of the application I am in.  
As a merchant, I want to have a message that notify me of my
Logout
successful logout.  
As a merchant, I want to be reverted into the login page after logging
out from the application successfully.  

Scenario:

A login interface is made available for users to login to the application. Users must input their
credentials to access the application. The login button is existing for users to complete the login
process.

Cedezone Limited
60
Loyalty & Rewards App – Functional Requirements Document

Once the users are successful in logging into the application, the users have the option to logout
from the system.

4.3.3. Security
User Story
Requirements User Story Note(s)
As a merchant, I want to be able to login using my
password.  
Password As a merchant, I want my password to be protected in a
way that every time I type my password into the password
text field, the characters are masked.  
As a merchant, I want to have a way to retrieve my
password in case I forgot to remember it.  
As a merchant, I want to have an interface where I can
retrieve my password.  
As a merchant, I want to be able to retrieve my password
by answering my secret question.  
Forgot Password As a merchant, I want to be able to receive my newly
generated password either email.  
E.g. Secret Question
As a merchant, I want to have a way to securely retrieve and Secret Answer,
my password. etc.
As a merchant, I want to receive my newly generated
password via email  

Scenario:

On the assumption that the users are already registered and have their credentials, they can
login into the application by entering their username and password. Every time the user enter
their password into the password field, it is protected by the application by masking it – making
the password not visible to third-party.

Cedezone Limited
61
Loyalty & Rewards App – Functional Requirements Document

There are cases where customers are unable to access the system. For whatever that maybe,
they can retrieve their access by clicking on the “Forgot Your Password” button or link. By doing
so, the customers are redirected to a page where they need to answer their security secret
question. The users when typing their secret answer are then masked by the system for added
security

The users upon submitting their secret answer to their account’s secret question, the application
will then email their newly generated password. Typically, users are required to change their
newly generated password upon firs successful login using it.

Cedezone Limited
62
Loyalty & Rewards App – Functional Requirements Document

Another simple option for users to retrieve their application access which Cedezone must decide
is to ask the user’s registered email address. When the users supplied their email address that
are tied with their access, they will be receiving an email from the system with their password in
it.

4.3.4. Customer Details


User Story
Requirements User Story Note(s)
As a merchant, I want to capture
the full names of my potential
customers.  
As a merchant, I want to capture
the emails of my potential
customers.  
As a merchant, I want to capture
the mobile numbers of my
potential customers.  
Customer Details
As a merchant, I want to capture
the birthdate of my potential
customers.  
As a merchant, I want to capture
the other relevant information of E.g. Address, Point of Interest or Merchant
my potential customers. Categories, Profile Picture, etc.
As a merchant, I want to have the E.g. Mobile Number and Post Code should
application to accept only valid only accept numeric values, Email should
customer records. only accept valid email format, etc.

Scenario:

Cedezone Limited
63
Loyalty & Rewards App – Functional Requirements Document

Cedezone is eyeing to have the following customer fields implemented within the Customer
Management application the capture the customer details as accurate as possible.

a) First Name – Mandatory


 Text field maximum of 256 characters
b) Last Name – Mandatory
 Text field maximum of 256 characters
c) Email – Mandatory
 The field must be formatted to accept valid email (Gmail, Yahoo Mail, iCloud,
etc.)
d) Mobile – Mandatory
 There should be separate drop-down menu for users to select their
corresponding country code.
 The field is configured accept numeric values only.
e) Birthday – Mandatory
 Date picker
f) Marital status
 (A drop-down menu that selects the user statues either Married or Single)
g) Address – Mandatory
 Country – Drop-down menu that lists all the countries
 State – Drop-down menu that lists all the state for the selected country. This
field is changing/adjusting its content automatically if the user is changing their
selected country.
 City – Text field maximum of 256 characters
 Post code
h) Point of Interest or Merchant Categories (Optional)
 Drop-down menu that list down all the merchant categories (Lifestyle and
Leisure, Travels, Fashion, etc.)
 The content of the drop-down menu is customizable by the merchants
 The selected points of interests or merchant categories selected by users affect
platform merchant lists that are displayed to the users in-app
i) Profile Picture (Optional)
 Suggested profile picture size is 180 x 180 px
 Suggested image file type is JPEG

4.3.5. Customer Record Administration


User Story
Requirements User Story Note(s)
Administration As a merchant, I want to have an interface where I can manage my
Interface customer data.  
As a merchant, I want to be able to add customer and able to enter
Add New Customer
their record into the system.  

Cedezone Limited
64
Loyalty & Rewards App – Functional Requirements Document

As a merchant, I want to have form that asked for the customer


details e.g. Name, First Name, Last Name, Email, Mobile, Birthday,
Marital status, Country, State, City, Pin code, Address, and Point of
Interest.  

As a merchant, I want to have the registration form the ability to save


records into the application database and can pulled anytime.
 
As a merchant, I want to be able to edit a customer profile and their
records.  
Edit Customer
Records As a merchant, I want to view existing records and update anything in
it and be able to save them to the customer database.
 
As a merchant, I want to save any changes I make to the customer's
Save Records records. I want to have the same provision when adding new records
of new customers.  
As a merchant, I want to be able to terminate or cancel the process of
Cancel
adding and even updating customer records.  
As a merchant, I want to have an interface where I can search for
Search Customer customer.  
Record As a merchant, I want to be able to search for customer using their
details (e.g. Name, account number, etc.)  
As a merchant, I want to have an interface where I can search for
customer.  
Filter Customer As a merchant, I want to be able to filter customer records when
Record searching.  
As a merchant, I want to be able to sort customer records when
searching.  
View Customer As a merchant, I want to be able to view customer records when
Record searching.  
As a merchant, I want to have an interface where it display customer
profile every time, I view their profile.  
Customer Profile As a merchant, I want to have the customer profile to display their
Interface account information.  
As a merchant, I want to have the provision to view customer
activities somewhere in their profile.  
As a merchant, I want to be able to unlock customer accounts.  
Unlock Customer
As a merchant, I want to be able to determine locked accounts right
Account
away.  
As a merchant, I want to have an interface where I can view all my
View All Subscribed subscribing customers.  
Customers As a merchant, I want to have the interface to be able to list all
subscribing customers and filter or even sort them.  

Cedezone Limited
65
Loyalty & Rewards App – Functional Requirements Document

As a merchant, I want to have the interface to have the provision of


viewing customer profile and their activities (transactions,
participating campaigns, etc.).  

Scenario:

From the merchant perspective, who will be the primary benefactor and user of the customer
management – they main activity revolves around end-to-end management and administering
customer records.

All these are possible if the requirements for an administration interface are met. With the
interface, merchants can add new customer records by manually creating an account. Manually
creating an account means merchants will enter all the necessary details of their customers. For
more details regarding the customer details, reference to 4.3.2 Customer Details of Customer
Management.

In parallel to adding new customers, merchants also require having the capability to edit their
customer records. Editing customer records would mean that merchant must search for a
customer – using either their names, mobile phone numbers, or email addresses.

For instances that the merchants is dealing with a large pool of customer records, a search filter
is recommended to be implemented within the system. This is for merchants to filter out
customer accounts with ease and accurately pinpoint an account that needs editing.

A feature that enable the merchant to view customer accounts is a must. This will be the
prerequisite when a merchant is trying to edit an information from a specific account. An
interface that displays customer account/profile is needed. That customer account/profile
interface will display the customer records that are saved within the application database. The
merchants will view this interface and perform the changes within it.

Merchants needs to commit such changes; therefore, they will be needing to have a “Save”
button. In contrast to this, a “Cancel” button is also a requirement for merchants not to push
through such changes when necessary.

On such cases where customer accounts are locked – due to multiple incorrect login attempts,
“Unlock Customer Account” should be in place. This is to empower merchants, which is our
primary users for customer management application to assist their customers who need
account unlocking services.
Cedezone Limited
66
Loyalty & Rewards App – Functional Requirements Document

Part of the administration suite of customer management application is the interface where
merchants can view all their subscribers. Subscribers means those customers who are
associated and enrolled with merchants.

The newly generated password is only temporary, and it requires the users to change and
update their password upon successfully login (first time login using the new password). This
requirement is similar temporary password rule specified in 4.3.4 Security of customer
management.

4.3.6. User Administration


User Story
Requirements User Story Note(s)
As a merchant administrator, I want to have an
interface where I can manage merchant
accounts.  
As a merchant administrator, I want to be able
to create new merchant accounts.  
As a merchant administrator, I want to be able
User to edit merchant accounts information.  
Administration Deactivating merchants is
Interface As a merchant administrator, I want to be able necessary when an employee
to deactivate merchant accounts. of merchant resigned.
As a merchant administrator, I want to be able
to search and filter merchant accounts.  
As a merchant administrator, I want to be able
to specify role and permission to merchant E.g. Administrator, Normal
accounts. level of access, etc.
As a merchant administrator, I want to have an
interface where I can manage merchant account
passwords.  
As a merchant administrator, I want to have the
provision to search for a merchant account that I
want to do a password reset with.  
As a merchant administrator, I want to be able
Password Reset to reset password by simply clicking a button
and a new password will be generated by the
system automatically.  
As a merchant administrator, I want to have a
confirmation that ask me if I wanted to push
through in resetting the merchant account
password.  
As a merchant administrator, I want the system  

Cedezone Limited
67
Loyalty & Rewards App – Functional Requirements Document

to send the newly generated password to emails


that are tied with merchant accounts.

Scenarios:

User accounts is different from customer accounts. User accounts pertains to merchant accounts who
are the primary benefactor of the application. Administrating the merchant accounts is only available for
users who have administrator-level of access.

In this case, the system administrator can create new merchant accounts. They can specify the role and
permission. The administrator have the authority revoke an account in case an employee (merchant
employee) already resigned or no longer connected to the merchant. The administrator is given the
provision to modify and edit information to merchant accounts.

Part of this section requires a call-to-action buttons (e.g. Save and Cancel) for system administrators to
commit and omit changes of information into the merchant accounts.

This administration module also grant the system administrators manage merchant account passwords.
Administration of access requires a feature that notify that administrators of successfully resetting a
merchant account password. When the administrator successfully generate a new password, the newly
generated password will be sent out to the user’s email address. Hence, email interoperability is
required.

4.3.7. Customized Template Administration


User Story
Requirements User Story Note(s)
As a merchant administrator, I want to have
an interface where I can create and manage
customized templates (registration forms).  
As a merchant administrator, I want to
personalize the customized templates by
adding logos and images, and can even
Customized change the color.  
Templates The merchant can opt fields that
As a merchant administrator, I want to be they think are irrelevant. There
able to specify which customer fields is are certain fields that merchant
necessary for the customized template cannot opt out. These fields are:
(registration form).
Name
Mobile Number

Cedezone Limited
68
Loyalty & Rewards App – Functional Requirements Document

Email
As a merchant administrator, I want to be
able to publish the customized template
(registration form) into a third-party platform,
either a website or to a mobile application.  
As a merchant administrator, I want to be
able to enable email notification for
customized templates.  
As a merchant administrator, I want to be
able to configure and customize email
notification for my third-party partners.  

4.3.8. Logging
An interface for history logs is a requirement that needs to be implemented within the loyalty
and rewards application. History logs will be used by application users to backtrack and
reference user activities, changes, actual login and logout, etc.

User Story
Requirements User Story Note(s)
As a user, I wanted to have
an interface that displays System logging is required for backtracking
history logs that records purposes, Account-level history logs is also
system activities, user mandatory for investigating account issues and
activities, account changes, other customer management/customer account
History Logs etc. related disputes.

Scenario:

On the assumption that the users, which are the merchants are having an issue related to
account changes disputes, the merchant users shall utilize the history logs within the customer
management application. This feature will give the merchants the provision to view all the
changes that has transpired within the system. The logs record account changes, who did the
changes, when was the account changed, etc. Having all this information would help the
merchant resolve anything related from the said issue.

4.3.9. Email Interoperability


User Story
Requirements User Story Note(s)
As a user, I wanted to receive notifications Registration confirmation,
Email via Email regarding critical activities on my password reset confirmation,
Interoperability account. Updates, etc.

Cedezone Limited
69
Loyalty & Rewards App – Functional Requirements Document

Scenario:
The web app requires the interoperability with email. SMS and emails are required during the
registration process for the following reasons:

a) Registration verification – at times, email can be used to verify registration


b) Registration notification – the users are notified of the successful registration

4.3.10. Customer Management Processes & Flows


This section highlights the desired process flows of customer management and its functional
requirements which will be the point of reference during the application development in terms of the
interface and behavioral logic of the system

Use Case Number Customer Management – Use Case 001


Function Name Logging In
The process of logging in into the Customer Management web
Description application.
Actor(s) Merchants, Merchant’s Retail Partners, Merchant Account Owners
Pre-conditions The users are in the login web page of the application.
Login process if successful results to users successfully logged into the
application, otherwise they will be prompted of “incorrect password” if
Flow of Events they failed to supply their correct credentials to login.
Post-conditions The user is successfully logged into the web application.
This case is complete when the users are successfully logged into the web
Exit Criteria application.

Use Case Number Customer Management – Use Case 002


Function Name Logging Out
Description The process of logging out from the Customer Management application.
Actor(s) Merchants, Merchant’s Retail Partners, Merchant Account Owners
Pre-conditions The users are logged into the application.
Logout process if successful results to users successfully logged out from
Flow of Events the application.
Post-conditions The user is successfully logged out from the web application.
This case is complete when the users are successfully logged out from the
Exit Criteria application.

Cedezone Limited
70
Loyalty & Rewards App – Functional Requirements Document

Use Case Number Customer Management – Use Case 003

Function Name Password


A security feature that that protects registered account from unauthorized
Description logins.
Actor(s) Merchants, Merchant’s Retail Partners, Merchant Account Owners
The users are creating an account in the customer management
Pre-conditions application.
The users are in the process of creating a customer management account.
During the account creation process, the users can specify and set up their
Flow of Events password for them to implement account security.
The users can specify and set up their account password. The specified
Post-conditions account password is working for users when logging in.
This case is complete when the users were able to specify and set up their
Exit Criteria password and were able to login using it.

Use Case Number Customer Management – Use Case 004


Function Name Forgot Password
Description The process of retrieving user account password via the forgot password.
Actor(s) Merchants, Merchant’s Retail Partners, Merchant Account Owners
The users are into the login page of the application. The user cannot access
Pre-conditions the application because they cannot remember their correct credentials.
The users are in the login page of the application. They click the linked
forgot password and redirected to a page where they can retrieve their
password by identifying secret answer to their account secret question. If
the user was able to get the secret answer to their secret question, an
email will be sent out for their randomly generated password. They will
use that password to login to the application. Upon successful login after
the password retrieval, the application will require the customers to
Flow of Events change and update their password.
The user accounts can retrieve their account access through forgot
password. New password is requested and sent out to the user email
Post-conditions address.
This case is complete when the users retrieved their credentials and able to
Exit Criteria access to the application.

Cedezone Limited
71
Loyalty & Rewards App – Functional Requirements Document

Use Case Number Customer Management – Use Case 005


Function Name Email Notification
Description The capability of the application to send out email notification to its users.
Actor(s) Merchants, Merchant’s Retail Partners, Merchant Account Owners
The users are already registered with the customer management
Pre-conditions application.
Forgot Password: The users are in the login page. They have selected the
forgot password. An email notification will be sent out to users to
Flow of Events authenticate and confirm their password retrieval activity.
Post-conditions The users were able to receive an email notification.
This case is complete when the users able to receive an email notification
regarding the password retrieval or could be any critical account
Exit Criteria movement.

Use Case Number Customer Management – Use Case 006


Function Name Administration Interface
An interface for customer management users (merchants) that enables
Description them to manage their customers and their records.
Actor(s) Merchants, Merchant’s Retail Partners, Merchant Account Owners
The users are already registered with the customer management
Pre-conditions application and can login to the application.
The users are logged into the application. From the application homepage,
the merchants can see the menu and from there, they can select Account
Flow of Events Administration.
The merchants have the menu option and an interface to administer
Post-conditions customer accounts.
This case is complete when the users can navigate and access the
customer account administration interface to manage their customer
Exit Criteria database.

Use Case Number Customer Management – Use Case 007


Function Name Add New Customer Record
This function shows the process of how the actors can add new customer
Description record.
Actor(s) Merchants, Merchant’s Retail Partners, Merchant Account Owners
Pre-conditions The users are into the login page of the application. The user is in the

Cedezone Limited
72
Loyalty & Rewards App – Functional Requirements Document

Customer Account Administration page of the app and trying to add new
customer record.
The users are in the Customer Account Administration page. From there
they can add new customer by collecting their information and entering it
to the system. Saving customer record gets their data stored in the
application database. They can also choose not to continue with adding
Flow of Events the new customer record.
Post-conditions The user can add new customer record. They can also cancel the process.
Exit Criteria This case is complete when the users can add new customer record.

Use Case Number Customer Management – Use Case 008


Function Name Edit Customer and Saving Record
This function shows the process of the user can edit and update customer
Description records.
Actor(s) Merchants, Merchant’s Retail Partners, Merchant Account Owners
The users are into the login page of the application. The user is in the
Customer Account Administration page of the app and trying to edit and
Pre-conditions update customer records.
The users are in the Customer Account Administration page. From there
they can edit and update customer records. Saving the changes updates
the customer record. They can also choose not to continue with adding the
Flow of Events customer record.
The user can edit and update customer records. They can also cancel the
Post-conditions process.
This case is complete when the users can edit and update customer
Exit Criteria records.

Use Case Number Customer Management – Use Case 009


Function Name Cancel
This function shows the process of the user can cancel any updates or
Description changes in the customer record within the application.
Actor(s) Merchants, Merchant’s Retail Partners, Merchant Account Owners
The users are into the login page of the application. The user is in the
Customer Account Administration page of the app and trying to edit and
Pre-conditions update customer records.
Flow of Events The users are in the Customer Account Administration page. From there
they can edit and update customer records. The users have the option not
to continue with the changes or updates they are trying to make; hence,

Cedezone Limited
73
Loyalty & Rewards App – Functional Requirements Document

the users have the cancel button.


The user can cancel any changes or updates they are making into the
Post-conditions customer records.
This case is complete when the users can cancel any changes or updates
Exit Criteria within the customer records.

Use Case Number Customer Management – Use Case 010


Function Name Search and Filter Customer Records
This function shows the process of how the user can search and filter a
Description customer record.
Actor(s) Merchants, Merchant’s Retail Partners, Merchant Account Owners
The users are into the login page of the application. The user is in the
Customer Account Administration page of the app and trying to search for
Pre-conditions customer records.
The users are in the Customer Account Administration page. From there
they can search customer records. Alternatively, they can also do a filter of
Flow of Events search results.
The user can search customer records. They can also filter their search
Post-conditions results.
Exit Criteria This case is complete when the users can search customer records.

Use Case Number Customer Management – Use Case 011


Function Name View Customer Record
This function shows the process of how the user can view a customer
Description record after doing a search.
Actor(s) Merchants, Merchant’s Retail Partners, Merchant Account Owners
The users are into the login page of the application. The user is in the
Customer Account Administration page of the app and trying to search
Pre-conditions and view customer records.
The users are in the Customer Account Administration page. From there
they can search customer records. From the search results, they need to
select a customer record. For the user to view the records in detail, they
Flow of Events need to view the record.
Post-conditions The user can view customer records.
Exit Criteria This case is complete when the users can view customer records.

Cedezone Limited
74
Loyalty & Rewards App – Functional Requirements Document

Use Case Number Customer Management – Use Case 012


Function Name Customer Profile Interface
This explains how the user can view a customer records via their profile
Description interface.
Actor(s) Merchants, Merchant’s Retail Partners, Merchant Account Owners
The users are into the login page of the application. The user is in the
Customer Account Administration page of the app and trying to search
Pre-conditions and view customer records and profiles.
The users are in the Customer Account Administration page. From there
they can search customer records. From the search results, they need to
select a customer record. For the user to view the records in detail, they
need to view the record to see their actual profiles. Alternatively, there is
already a preloaded list of customer records, if the user sees the customer
Flow of Events – they can just view their record from there.
Post-conditions The user can view customer records and profiles.
This case is complete when the users can view customer records and
Exit Criteria profiles.

Use Case Number Customer Management – Use Case 013


Function Name Unlock Customer Account
This explains how the user can unlock a customer account through the
Description feature unlock customer account.
Actor(s) Merchants, Merchant’s Retail Partners, Merchant Account Owners
The customer account is locked due to exceeding the numbers of login
Pre-conditions attempts. The user is in the Customer Account Administration page.
The users are in the Customer Account Administration page. From there
they can search customer records or their account that has been locked
Flow of Events out. The user can view locked out and lift the barring.
Post-conditions The user can unlock customer accounts.
Exit Criteria This case is complete when the users can unlock a customer account.

Use Case Number Customer Management – Use Case 014


Function Name View Subscribers
This explains how the merchants can view all their subscribers in an
Description interface through View Subscribers feature.
Actor(s) Merchants, Merchant’s Retail Partners, Merchant Account Owners

Cedezone Limited
75
Loyalty & Rewards App – Functional Requirements Document

The merchants account is logged in into the application and must have at
Pre-conditions least one subscriber customer.
The users are in the Customer Account Administration page. From there
they can select View Subscriber to navigate into an interface where the
Flow of Events merchants can see all their subscribed customers.
Post-conditions The user can access View Subscribers page.
This case is complete when the users can navigate freely into View
Exit Criteria Subscribers page and can see all their subscribers.

Use Case Number Customer Management – Use Case 015


Function Name Invite Customer
This shows the Invite Customer feature and explains the process of how
Description the user can onboard customers by sending them an invite link.
Actor(s) Merchants, Merchant’s Retail Partners, Merchant Account Owners
The merchant’s customer does not have an account yet with the Loyalty
and Rewards application. They will be a new customer. The merchant is
logged in into the Customer Management application and is about to send
Pre-conditions the customer an invite.
The merchant users are in the application home page. They navigated into
the Customer Account Administration page. From there they can send out
invite to customers to onboard them. Merchants have 2 modes to send
invites to customers – either via SMS (Mobile Phone Number) or through
the customer email address. When the customer received the invite, a link
is included and when customer tap/click on the link – they will be routed
the Playstore or App Store (if invite was sent via mobile SMS) to
automatically download the app. Once the download is complete, the
mobile app opens and proceed to registration form.

If the invite has been sent via customer’s email address, then they will be
Flow of Events directed to the web-based version of the app.
The user can send out invite to customers via SMS or Email address. The
customer can do a registration and they will be automatically enrolled
Post-conditions under the merchants who invited them
This case is complete when the merchant can send out invite to customer
Exit Criteria and customer can register via invitation link sent by the merchants.

Use Case Number Customer Management – Use Case 016


Function Name Customized Templates
Description This shows the Invite Customer feature and explains the process of how

Cedezone Limited
76
Loyalty & Rewards App – Functional Requirements Document

the administrators can navigate to the interface where they can customize
templates.
Actor(s) Merchants, Merchant’s Retail Partners, Merchant Account Owners
The merchants have access to the web application of customer
management, and they have the rights and permissions to customize and
Pre-conditions issue a customized template.
The users can access a section of the customer management application
where they can create a registration form and customize it. Upon creating
a form, the are three fields that are predefined and cannot be removed by
the users. These fields are: Customer Name, Mobile Phone, and Email.

Any other fields can be removed by users. The user can also change the
cosmetics of the form. The users can save their customized templates, and
have it issued to a third-party or to their retail partners.

Another must have for the customized templates is, it should be capable of
supporting email notifications, therefore, it should be integrated with easy
Flow of Events to use mailing plugins or applications.
The administrator can navigate to the Customized Template page and can
Post-conditions customized registration forms and other templates from there.
This case is complete when the administrators can access the Customized
Exit Criteria Template page and can customized forms and templates.

Use Case Number Customer Management – Use Case 017


Function Name Password Reset
This explains how the application administrators can reset an account
Description password.
Actor(s) Application Administrators
The merchants are unable to access their account because they forgot
Pre-conditions their password details.
The application administrator can access an interface where they can
manage application user accounts. From there, they can reset an account
password. A new password will be generated automatically, and details
will be sent out to the email address associated with the account. When
the user used the new password to log into the system for the first time,
the application will prompt the customer and require them to change their
Flow of Events password for security reason.
Post-conditions The user can access View Subscribers page.
Exit Criteria This case is complete when the users can navigate freely into View

Cedezone Limited
77
Loyalty & Rewards App – Functional Requirements Document

Subscribers page and can see all their subscribers.

4.4. Loyalty and Rewards User Stories


This section identifies the scenarios and states the stories and requirements from the user
perspective as to where the Loyalty and Rewards application of Cedezone will be utilized by
merchants and potential customers.

4.4.1. Loyalty and Rewards Usage Scenarios

Merchant and Third-Party Participation


Merchant and third parties register for the Loyalty service from the Cedezone platform to
participate to merchant loyalty and rewards program. Merchants will run their loyalty and
rewards program via loyalty and rewards application. Rules and criteria in earning points will be
decided. Merchant retail partners and affiliates can setup campaigns for their subscribers to
enjoy.

Merchant Campaigns and Promotions


Loyalty and Rewards application can be used by merchants to setup their campaigns and
promotions. These campaigns and promotions are enjoyed by customers through the mobile
application interface as a service via API connectors. Campaigns and promotions can also be
extended to third-party applications and to merchant partners.

User Story
User Story Note(s)
Requirements
Offerings User As a merchant, I want to have an interface
Interface where I can manage and publish my Offerings are merchant products.
offerings.
As a merchant, I want to the interface
where I can manage and publish my
 
offerings to have list of offerings with their
corresponding details.
As a merchant, I want to be able to search
 
for an offering.
As a merchant, I want to be able to filter out
 
my offering searches.
As a merchant, I want to be able to sort out
 
my offering searches.
As a merchant, I want to be able to view  
offerings in a product page interface
together with its details.

Cedezone Limited
78
Loyalty & Rewards App – Functional Requirements Document

As a merchant, I want to be able to


 
deactivate any offerings.
As a merchant, I want to have a message
 
that confirms of any offering deletion.
Details:
As a merchant, I want to be able to add
Product Image Photo, Product
details to my offerings.
Name, Product Description,
Product Specification, etc.
As a merchant, I want to be able to edit or
 
change details to my offerings.
As a merchant, I want to be able to publish
 
my offerings.
Message saying, "Are you sure
As a merchant, I want to have a message
Publish want to publish this offering?" will
that ask me or confirm if I wanted to push
Offerings show when an offering is to be
through in publishing an offering.
published.
As a merchant, I want to be able to
 
unpublished any active offerings.
As a merchant, I want to be able to add
 
promotional discounts to my offerings.
Promotions
As a merchant, I want to be able to specify
 
validity dates of my promotions.

Scenario:

The merchants are provided an interface within the Loyalty and Rewards application that
enables them to manage their campaigns and promotions as well as their offerings.

Merchants can post a product that will be made available for their subscribing customers to
redeem. These products will be in a form of offerings. Merchants can add description and
necessary information every time they create a product offering. In parallel, merchants can also
add discounts in a form of promotions.

Campaigns management interface is also provided for merchants to create, setup, and manage
their campaigns. Merchants have the capability to widen and extend their reach to maximize
customer retention. The application enables the merchants to do a campaign blast to their
customers. These customers shall receive these campaigns details via mobile SMS, push
notification, or email. The customers can participate to such campaigns anytime they wishes to.

Cedezone Limited
79
Loyalty & Rewards App – Functional Requirements Document

Please note that the application does have a limitation as to how many campaigns merchants
can run at a time. Cedezone will have to define this. The proposed campaign limit per merchant
is 10.

Loyalty and Rewards Management


Loyalty and Rewards primary purpose is to provide users – in this case merchants, the capability
to manage their loyalty and reward program. The application provide end-to-end management
of customer’s loyalty points and corresponding rewards a customer can redeem should they
choose to do so. Vouchers and gift cards, regardless if issued by merchants or by a third-party
can be managed as well in this module.

User Story
User Story Note(s)
Requirements
As a merchant, I want to be able to search for a
 
customer account and issue digital coupons.
As a merchant, I want to be able to create a digital
 
coupon.
Adding, personalized
As a merchant, I want to be able to personalize QR/Barcode image,
digital coupons. banners, logos, and some
Digital Coupons cosmetics
Issuance As a merchant, I want to be able to add details to
 
digital coupons.
As a merchant, I want to be able to
 
update/edit/change details to digital coupons.
As a merchant, I want to be able to specify validity
 
to digital coupons.
As a merchant, I want to be able to specify the
 
worth of digital coupons.
As a merchant, I want to be able to search for a
 
customer account and issue gift cards.
As a merchant, I want to be able to create gift cards.  
Adding, personalized
As a merchant, I want to be able to personalize gift QR/Barcode image,
cards. banners, logos, and some
Gift cards
cosmetics
Issuance
As a merchant, I want to be able to add details to
 
gift cards.
As a merchant, I want to be able to
 
update/edit/change details to gift cards.
As a merchant, I want to be able to specify validity
 
to gift cards.

Cedezone Limited
80
Loyalty & Rewards App – Functional Requirements Document

As a merchant, I want to be able to specify the


 
worth of gift cards.
As a merchant, I want to be able to issue cash back
to a product. The issued cash back will the cash back
 
the customers are getting when they purchased the
product.
Issue Cashback As a merchant, I want to have a cash back form
 
when issuing cash back to a product.
As a merchant, I want to have a cash back form to
have a product field that allows me to search for a  
product and link it to it.
As a merchant, I want to be able to register third-
 
party coupons.
As a merchant, I want to have an interface where I
 
could register them.
Register Third- As a merchant, I want to be able to register third-
Party Coupons party coupons into the system entering the third-  
party coupon details.
As a merchant, I want to be able to register third-
party coupons into the system by scanning its QR  
code/barcode.
As a merchant, I want to be able to grant cash back
 
directly to the customers.
As a merchant, I want to have a cash back form
 
Grant Cashback when granting cash back.
As a merchant, I want to have a cash back form to
have a customer field that allows me to search for a  
customer and grant them the cash back.
As a merchant, I want to have an interface where I
 
can manage cash back criteria.
As a merchant, I want the criteria to listed in options
 
or checkboxes.
Manage As a merchant, I want some criteria to be in drop-
 
Cashback Criteria down menus.
As a merchant administrator, I want to be able to
 
edit/update/change existing cash back criteria.
As a merchant administrator, I want to be able to
 
add cash back criteria.

Scenario:
Merchants and their retail partners can administer digital coupons and gift cards, loyalty points
of their customers and their rewards. Criteria for earning points can be administered as well by
merchants. Merchants need to define these criteria which will be the guidelines for their
customers to earn points.

Cedezone Limited
81
Loyalty & Rewards App – Functional Requirements Document

Merchants can also issue coupons and vouchers. Specifying the amount and customizing the
vouchers and coupons information (validity etc.) is also part of the loyalty and rewards
management suite.

This module also offers the ability for merchants to grant cashback or points directly to their
customers in case any dispute arises and a need for manual cashback is required.

Additionally, merchants can register third-party gift cards, vouchers, and coupons. This will allow
the merchants to accept gift cards, vouchers, and coupons issued by their partners. Registering
the third-party gift cards, vouchers, and coupons can be done by merchants at their tills – on the
assumption that these merchants already have access to the Loyalty and Rewards program.

4.4.2. Login and Logout


User Story
Requirements User Story Note(s)

As a merchant, I want to be able to have an interface where I can login


to the customer management app.  

As a merchant, I want the login interface to have necessary fields for


Login me to enter my credentials (username and password fields).  
As a merchant, I want my password to be protected in a way that every
time I type my password into the password text field, the characters
are masked.  
As a merchant, I want the interface to have the necessary buttons for
me to login.  
As a merchant, I want to be able to logout from the mobile anytime
regardless of what section of the application I am in.  
As a merchant, I want to have a message that notify me of my
Logout
successful logout.  
As a merchant, I want to be reverted into the login page after logging
out from the application successfully.  

Scenario:

A login interface is made available for users to login to the application. Users must input their
credentials to access the application. The login button is existing for users to complete the login
process.

Cedezone Limited
82
Loyalty & Rewards App – Functional Requirements Document

Once the users are successful in logging into the application, the users have the option to logout
from the system. Ideally, the logout button should be found and existing at the right corner of
the page.

4.4.3. Security
User Story
Requirements User Story Note(s)
As a merchant, I want to be able to login using my
password.  
Password As a merchant, I want my password to be protected in a
way that every time I type my password into the password
text field, the characters are masked.  
As a merchant, I want to have a way to retrieve my
password in case I forgot to remember it.  
As a merchant, I want to have an interface where I can
retrieve my password.  
As a merchant, I want to be able to retrieve my password
by answering my secret question.  
Forgot Password As a merchant, I want to be able to receive my newly
generated password either email.  
E.g. Secret Question
As a merchant, I want to have a way to securely retrieve and Secret Answer,
my password. etc.
As a merchant, I want to receive my newly generated
password via email  

Scenario:

Cedezone Limited
83
Loyalty & Rewards App – Functional Requirements Document

On the assumption that the users are already registered and have their credentials, they can
login into the application by entering their username and password. Every time the user enter
their password into the password field, it is protected by the application by masking it – making
the password not visible to third-party.

There are cases where customers are unable to access the system. For whatever that maybe,
they can retrieve their access by clicking on the “Forgot Your Password” button or link. By doing
so, the customers are redirected to a page where they need to answer their security secret
question. The users when typing their secret answer are then masked by the system for added
security

The users upon submitting their secret answer to their account’s secret question, the application
will then email their newly generated password. Typically, users are required to change their
newly generated password upon firs successful login using it.

Cedezone Limited
84
Loyalty & Rewards App – Functional Requirements Document

Another simple option for users to retrieve their application access which Cedezone must decide
is to ask the user’s registered email address. When the users supplied their email address that
are tied with their access, they will be receiving an email from the system with their password in
it.

4.4.4. Merchant Adding Gift Cards or Coupons


User Story
User Story Note(s)
Requirements
As a merchant, I want to be able to create a
  
digital coupon.
Adding, personalized
As a merchant, I want to be able to
QR/Barcode image, banners,
personalize digital coupons.
logos, and some cosmetics 
As a merchant, I want to be able to add
details to digital coupons.
Add Coupons As a merchant, I want to be able to
update/edit/change details to digital coupons.
As a merchant, I want to be able to specify
 
validity to digital coupons.
As a merchant, I want to be able to specify the
 
worth of digital coupons.
As a merchant, I want to be able to search for
 
a customer account and issue gift cards.
As a merchant, I want to be able to create gift
 
cards.
Add Gift Cards Adding, personalized
As a merchant, I want to be able to
QR/Barcode image, banners,
personalize gift cards.
logos, and some cosmetics 

Cedezone Limited
85
Loyalty & Rewards App – Functional Requirements Document

As a merchant, I want to be able to add


 
details to gift cards.
As a merchant, I want to be able to
 
update/edit/change details to gift cards.
As a merchant, I want to be able to specify
 
validity to gift cards.
As a merchant, I want to be able to specify the
 
worth of gift cards.
As a merchant, I want to be able to add and
register third-party coupons and vouchers
As a merchant, I want to be able to add and
register third-party coupons.
Details:

As a merchant, I want to be able to add Amount


Add Third-Party
information and details of the third-party Merchant
Coupons
coupons I am adding. Validity
Terms and Conditions
QR Code/Bar Code (If possible)
As a merchant, I want to be able to
update/edit/change third-party coupons.
As a merchant, I want to be able to add and
register third-Gift cards.
Details:

As a merchant, I want to be able to add Amount


information and details of the third-party gift Merchant
Add Third-Part cards I am adding. Validity
Gift Cards Terms and Conditions
QR Code/Bar Code (If possible)
As a merchant, I want to be able to
update/edit/change third-party gift cards.
As a merchant, I want to be able to register
 
third-party coupons.

Scenario:

Merchants login to the system and navigates to the interface where they can manage gift cards,
coupons, and vouchers. Merchant can create a digital gift cards, coupons, and vouchers. During
the process of creating a coupon, the system will generate a secure and unique bar code or QR
code. The bar code or the QR code will be used as a medium for the coupons to be scanned by
merchants and their partners during the checkout process.

Cedezone Limited
86
Loyalty & Rewards App – Functional Requirements Document

Additionally, customization of gift cards, coupons, and vouchers are possible for merchants.
More importantly, merchants can specify the value of the coupons they are creating and other
information of it e.g. Validity, Terms and Conditions, etc.

In contrast to creating gift cars or coupons, merchants are given the ability to update or change
any gift card information.

The ideal process for merchants creating and adding gift cards would be:

i. In the Add gift card dialog, select the initial value of the card, or click Other to enter a
custom amount.
ii. To add the details, the merchant needs to add the following:
a. Gift/Coupon details
b. Amount
c. Validity/Set an expiry date
iii. Click on Issue gift card which generate a code for the gift card or a coupon.
iv. The merchant will have an option to import/upload the gift cards/coupons in bulk via a
CSV.
v. The merchant also have the option to add and register third-party gift cards and
vouchers issued by their retail partners and affiliates.
vi. The merchant or 3rd party needs to pay the face value of the Gift cards. Payment
integration would be set up at this end.

Please note that when merchants are creating or adding gift cards or coupons, they must pay
for the front face value of the gift cards.

4.4.5. Merchant Issuing Gift Cards or Coupons


Issuing gift cards or coupons is what comes after merchants created or added a gift card. Issuing
a gift card means that the merchants can grant the customers these coupons.

Cedezone Limited
87
Loyalty & Rewards App – Functional Requirements Document

User Story
User Story Note(s)
Requirements
As a merchant, I want an
interface that enables me
to issue gift cards or
coupons to customers.  
Merchant should have the provision to issue digital or
physical coupons. Issuing digital coupons can be done
right away using the loyalty and rewards application.
Issuing physical coupons may require the merchant to
have a third-party hardware for card/coupon printing.
Although, the application can be used to document
such cases wherein customers are issued a physical
card. The application can be used to track down
instances like these.

As a merchant, I want to Within the application, the merchant could select


be able to issue gift cards from the dropdown menu if they wanted to issue the
Issue Gift Card or coupons to customers. customer a digital or physical coupon.
or Coupons As a merchant, I want to
be able to search for a
customer and locate the
right person easily to A search features is implemented within the interface
issue them a coupon or of issuing a gift card or coupon. The merchants can
gift card. filter their search results.
As a merchant, I want to
have my customers to be
notified via SMS or Email
every time they were
issued a gift card or
coupon.  
As a merchant, I want the
application to keep
record of digital coupons
and gift cards issued to
customers.  
Issue third-party As a merchant, I want an
gift cards or interface that enables me
coupons. to issue third-party gift
cards or coupons to
customers.  
As a merchant, I want to Merchant should have the provision to issue third-
be able to issue third- party digital or physical coupons. Issuing third-party
party gift cards or digital coupons can be done right away using the
coupons to customers. loyalty and rewards application. Issuing third-party
physical coupons may require the merchant to have a

Cedezone Limited
88
Loyalty & Rewards App – Functional Requirements Document

third-party hardware for card/coupon printing.


Although, the application can be used to document
such cases wherein customers are issued a third-party
physical card (gift cards/coupons). The application can
be used to track down instances like these.

Within the application, the merchant could select


from the dropdown menu if they wanted to issue the
customer a digital or physical coupon.
As a merchant, I want to
be able to search for a
customer and locate the
right person easily to A search features is implemented within the interface
issue them a third-party of issuing a third-party gift card or coupon. The
coupon or gift card. merchants can filter their search results.
As a merchant, I want to
have my customers to be
notified via SMS or Email
every time they were
issued a gift card or
coupon.  
As a merchant, I want the
application to keep
record of digital coupons
and gift cards issued to
customers.

The ideal process for merchants issuing gift cards or coupons would be:

1. The merchant accessing the interface for issuing gift cards or coupons. The interface
consist of the following options:
a. Search customers – the merchant will search for a customer using this feature.
b. Search filters – the merchant have the capability of filtering their search results, on
the assumption that the search results returned too many customer names.
2. Once the customer list loads up, the merchant select a coupon or the gift cards to be
issued to a customer along with the value or amount of the gift card.
a. If digital or physical
i. If digitally issued – Email and phone number are mandatory.
ii. If physically issued – customer name is printed on the gift card/coupon.
3. Upon selecting a customer(s) as coupon or gift card recipient, the merchant will need to
save the changes.
4. These contacts are eligible for gift cards or coupons which the customers can redeem at
the merchant stores.

Cedezone Limited
89
Loyalty & Rewards App – Functional Requirements Document

5. The customers receives email notification, informing that they are entitled to claim a
coupon or gift card from the merchant. The details of the coupon or the gift card is sent
to the customers as well via email.
6. Once the gift card or coupon is issued by the merchant to the customer, the loyalty and
rewards application database is updated.
7. The merchant has the provision to issue a physical coupon or a gift card.
a. Every card or a coupon will have a unique code, bar code, or QR Code.
b. The merchant needs to enter the coupon, or the gift card amount provided to the
customer.

Please note that the difference between issuing a digital and physical is that:

Issuing digital coupons or gift cards can be done right away inside the loyalty and rewards
application.

Issuing physical coupons or gift cards can be done in using the application as a documentation,
however, the application itself cannot issue the physical card to the customer. A third-party
hardware for printing cards is required to do just that.

4.4.6. Manage Cashback Criteria


Cashback or from the merchant consumer’s perspective – loyalty points are points accrued by
customers every time they patronize a merchant product. There are guidelines, set of rules, and
criteria for consumer to earn points. These criteria can be created, managed, and configured by
merchants in-app.

From the merchant’s perspective, some of the criteria are as follows:

 For every “$XX.XX” spent by customers, “X” loyalty point will be awarded to them.
 Purchasing promotional merchant products will have the customer earned “XX” points.
 Purchasing merchant products during campaign duration will have customers earned
“XX” points.
 Spending at least “$XXXX.XX” will have the customers accrued double points.

Cedezone Limited
90
Loyalty & Rewards App – Functional Requirements Document

There are a lot of criteria that can incorporated within the loyalty and rewards application. The
criteria above are just basic examples. Merchants can define their set of rules and have them
implemented.

User Story
User Story Note(s)
Requirements
As a merchant, I want to have an interface where I
can manage cash back criteria.  
As a merchant administrator, I want to be able to
add/create new cash back criteria.  
As a merchant administrator, I want to be able to
edit/update/change existing cash back criteria.  
Manage Deactivating criteria is
As a merchant administrator, I want to be able to
Cashback Criteria preferred rather than
deactivate a cash back criteria.
deleting.
As a merchant administrator, I want to be able to
specify an amount of cash back that customers can
earn every time they met the criteria.  
Validity works best during
As a merchant administrator, I want to be able to merchant promotions or
specify a validity dates for cash back criteria. campaigns.

Scenario:

Merchants are provided an interface where they can create criteria for customer to meet and
earn points. A merchant can create any criteria that meets their business rules. The merchants
have the provision of end-to-end management.

When creating criteria, the merchants can specify criteria information. Some of the information
Cedezone is eyeing to implement in-app are as follows:

 Name of Criteria – Tile of the criteria


 Status (ACTIVE or INACTIVE) – The status of criteria. Active means criteria is in effect.
Inactive means criteria is no longer valid for some reasons. Reasons such as past validity
dates specified.
 Criteria Rules – These are rules specified by the merchants and needed to be met by
customers to accrue points.
 Award or Points Earned upon meeting the criteria – These are points specified and can
be earned by customers every time they meet the criteria.
 Validity Dates – Validity dates are set of values that govern a criterion for a duration.
 Created Date – Date as to when was the criteria was created. This field is automatically
populated right away after a merchant created the criteria.

Cedezone Limited
91
Loyalty & Rewards App – Functional Requirements Document

 Created By – Field that specifies the one who created the criteria. This field is
automatically populated right away after a merchant created the criteria.

After a merchant already provided all criteria information, they can save their work. The created
criteria is saved within the system and application database. Merchants can edit or cascade any
changes should a need arises.

For every created or active criteria, merchants have the provision to view their details. They can
deactivate a criterion by either hitting the deactivate button or specifying a past validity date.
They can even extend its validity date to a merchant preferred duration.

Deleting criteria is not allowed to avoid user error, therefore, status active and inactive are
preferred. Inactive criteria which are no longer in use will still be listed and available within the
system. This method offers merchants the capability to reuse old criteria instead of creating a
new one.

4.4.7. Issue Cashback


A feature that enable merchants to issue and grant cashback to their consumers is required. This
is a critical feature that grant customer points manually should there be an issue with regards to
automated points earning. At times, issue cashback feature is utilized by merchants to give out
compensation to customers for whatever reason that may be.

User Story Requirements User Story Note(s)


Issue As a merchant, I want to have an
Cashback/Coupon/Voucher interface where I can manage and
issue cashbacks/coupon/voucher to
customers.  
As a merchant, I wanted the Search functions comes with the
interface to have a capability to issue cashback interface with
search for a customer so I can locate set of search filters and sorting
the one I needed to grant cashback features.
or issue a voucher or coupon.

Cedezone Limited
92
Loyalty & Rewards App – Functional Requirements Document

Cashback form should have the


necessary fields:

Name of Customer
Email
Phone Number
Commodity: Voucher/Coupon
or Loyalty Points (Cashback)
Reason (drop down menu)
Issuing merchant name
Issuing merchant id/employee
id

Note: If Loyalty points has been


selected as a commodity to be
issued to a customer, the field
for Loyalty Points Value shall be
As a merchant, I wanted the enabled. This is for the
interface to have a form I can fill up merchant to specify how much
when issuing cashback or points or cashback will issued
vouchers/coupons to customers. and granted to the customer.
Customers shall be notified of
As a merchant, I want my customers successful cashback issued by
to be notified when I granted them a the merchant either via SMS or
cashback. Email.

Scenario:

The most common way for customers to earn points is through patronizing merchant products.
Customers are asked to show their loyalty and rewards mobile app so merchants can scan their
account bar code/QR code. When scanned, the system shall automatically credit loyalty points
when checkout process is completed. There will be times that this process may not work due to
technical difficulties or whatever issue may arises in the future.

As a fail-over solution, a feature issue cashback is provisioned to merchants. The issue cashback
feature will be used by merchant to grant customers cashback or loyalty point that they
should’ve earned when the checkout process was completed. The merchant when granting and
issuing cashback or loyalty points shall first search for a customer. They must verify the
customer by selecting their profile and viewing its interface.

When the merchant located the record of the customer they are looking for, then a button will
be existing (e.g. Issue Cashback button). When clicked, a form will appear on the merchant’s
screen. The merchant shall fill up the form request when issuing a cashback to customer. When
the form has been filled up, the merchant shall submit the information. When the request has

Cedezone Limited
93
Loyalty & Rewards App – Functional Requirements Document

been submitted and completed, the end process will be – the customer is granted the cashback
or the amount of loyalty points they should be getting. In parallel, they will received a
notification via SMS or email regarding the issued cashback.

4.4.8. Campaigns

User Story
User Story Note(s)
Requirements
Campaigns As a user, I want to have an
Management interface where I can create,
publish, and manage my A dedicated page for managing campaigns is
campaigns. required.
Categories:

Fashion
Lifestyle
As a user, I want to have the Health
capability to categorize and Sports
publish my campaigns. Entertainment
As a user, I want to be able to
search for campaigns and filter Search and search filter is necessary for users to
them. find a specific campaign.
Details:

Campaign Name
Campaign Descriptions
As a user, I want to be able to Campaign Details
enter the details of my Validity/Duration
campaigns. Banners and Logos
As a user, I want to be able to Picture editor is required to edit the banner. A
upload a banner and logo for text that shows the recommended image
my campaign. resolution and size is required as well.
As a user, I want to be able to Text editor should be implemented with editing
enter text in the campaign features e.g. Font Formatting, Insert Link, Insert
fields e.g. campaign names, Image, Bulletin points, Numbering, Indention,
description, details, etc. Alignment, etc.
As a user, I want to be able to
specify a campaign duration or A calendar button is required to setup the
validity. timeframe duration of campaigns.
As a user, I want to be able to A customer filter is necessary for merchants to
select a target audience and target their audience and viewers. Some filters
viewers. can be:

Customer Location

Cedezone Limited
94
Loyalty & Rewards App – Functional Requirements Document

Customer Age
Customer Phone Number
A checkbox is implemented that users can check
As a user, I want to be able to so that the merchant consumers (subscribing
have my customers notified of customers) can receive a notification regarding
new campaigns. the newly created campaigns.

Scenario:

A dedicated page with an interface provided to the users, which in this case the merchants. The page
lets the users create, manage, and published their campaigns. Within the page, the user is capable of:

 Add/Create Campaigns
 Update/Edit Campaigns
 Deactivate Campaigns
 Search and Filter Campaigns
 View Campaigns

When creating a Campaigns, the merchant can enter its details in a separate form or page that asks for
the campaign details. The ideal details are as follows:

 Campaign Name
 Campaign Descriptions
 Campaign Details
 Validity/Duration
 Banners and Logos

4.4.9. Promotions

User Story
User Story Note(s)
Requirements
Promotions As a user, I wanted to have A page is required to manage promotions. The page
Management an interface where I can consists of functions that allows the user to
create, manage, and publish create/add, edit/update, and deactivate
my promotions. promotions.
As a user, I want to be able  The create promotion form does have a
to categorize my promotions drop-down menu where they can select
when creating them. what type of promotion they want to
publish. Some categories are as follows:
 Products and Services Discount – typical

Cedezone Limited
95
Loyalty & Rewards App – Functional Requirements Document

discounted products and services.


 Double Points – products and services
when purchased by consumer will have
earn them double points.
 Freebie – a purchased product, or a service
comes with a freebie (could be another
product or discounted service or a
promotional voucher/gift card).
Details:

Name of Promotion
Promo Description
Discount Value
As a user, I want to be able Validity of Promotion
to enter promotional details Creation Date of Promotions
when creating them. Created by/Published by (Merchants Name)
As a user, I want to be able A checkbox is implemented that users can check so
to notify my subscribing that the merchant consumers (subscribing
customers of my customers) can receive a notification regarding the
promotions. newly created promotion.
Additional rules and logic needs to be
As a user, I want to be able implemented. For instance, having a promotional
to manage promotional discount has a certain capping. For every $500.00
criteria. spent, the customer only avail up to $50.

Scenario:

A merchant can access a dedicated page where they can fully manage their promotions. This page
consist of an interface where they can:

 Add/Create Promotions
 Update/Edit Promotions
 Deactivate Promotions
 Search and Filter Promotions
 View Promotions

When creating a promotion, the merchant can enter its details. The ideal details are as follows:

 Name of Promotion
 Promo Description
 Discount Value
 Validity of Promotion
 Creation Date of Promotions
 Promotional Banner and Design Cosmetics
 Created by/Published by (Merchants Name)

Cedezone Limited
96
Loyalty & Rewards App – Functional Requirements Document

Please note that the validity of promotions dictates the promotion status (e.g. Active or Inactive). Active
means that promotion is ongoing, and any configuration made in it will still be in effect within the
application. A promotion that exceeded its due date (validity date) will be automatically be disabled.

A feature to manage promotional criteria is also a requirement. This will enable the merchants to
configure their promotions, especially when creating discounts,

4.4.10. Merchant Account Administration


User Story
User Story Note(s)
Requirements
As a merchant, I want to have an
Merchant interface where I can manage
 
Account Interface merchant accounts for my retail
partners.
As a merchant, I want to be able to
Merchant
search for a merchant account using  
Account Search
their account details.
Merchant As a merchant, I want to have a
Account Search search filter whenever I am  
Filter searching for merchant accounts.
Merchant As a merchant, I want to be able to
Account Search sort out the list of merchants and  
Sort even the search results.
Details:
As a merchant, I want to be able to
Merchant
view merchant profiles and accounts Account Details, Account Date Created,
Account Profile
in an interface with their Account status: Active/Inactive, etc.
Interface
corresponding details.

As a merchant, I want to be able to


Merchant
edit, change, and update merchant  
Account Edit
accounts.
As a merchant, I want to have a Message saying "Account Updated" will
Edit Notification
message that notify me of a show when an account is updated, or any
Box
successful account update/edit. changes has been saved.
Deactivate
As a merchant, I want to be able to
Merchant  
deactivate merchant accounts.
Account
As a merchant, I want to have a
Deactivate Message saying "Account Deactivated"
message the inform me if I was able
Account will show when an account is
to deactivate or activate merchant
Confirmation Box deactivated.
accounts.

Cedezone Limited
97
Loyalty & Rewards App – Functional Requirements Document

As a merchant, I want to have a Message saying, "Are you sure want to


Edit Confirmation message that ask me or confirm if I Activate/Deactivate this account?" will
Box wanted to push through in activating show when an account is about to be
or deactivating merchant accounts. activated or deactivated.
As a merchant, I want to have the
 
provision to add merchant accounts.
As a merchant, I want to have a form
every time I need to create an
 
additional account for my retail
Add Merchant partners.
Account As a merchant, I want to be able to
 
save merchant account details.
As a merchant, I want to have a
Message saying "Account Created" will
message that notify me of a
show when an account is created
successful account creation for my
successfully.
merchant and retail partners.

Scenario:

Managing merchant accounts is possible and available only to application administrators.


System administrators are provided the interface which grant them the provision of managing
merchant accounts. They are given the authority to create or add a new account. In parallel,
they can also edit or update an information for a specific account if needed.

An interface is also provided for admins to view of accounts after searching. The profile interface
displays all the account information of the merchant. There are buttons that exists which gives
the admins the provision to edit or update an account. Some of the must have buttons are
Cancel, Save, etc.

Changing or updating an account will have the application notify the administrator in a form of a
confirmation and notification pop up.

Searching, filtering, and sorting search results is possible for administrators for effective account
management.

On the event that the merchant employee resigns, the system administrators can deactivate an
account when requested.

Cedezone Limited
98
Loyalty & Rewards App – Functional Requirements Document

4.4.11. Logging
An interface for history logs is a requirement that needs to be implemented within the loyalty
and rewards application. History logs will be used by application users to backtrack and
reference user activities, changes, actual login and logout, etc.

User Story
Requirements User Story Note(s)
As a user, I wanted to have an System logging is required for backtracking
interface that displays history logs purposes, Account-level history logs is also
that records system activities, user mandatory for investigating account issues
History Logs activities, account changes, etc. and other loyalty related disputes.

Scenario:

A customer disputing about their loyalty points were deducted. In this case, history logs will be
utilized by merchants in investigating issues related to loyalty points and account disputes.
History logs records all activities on an account-level and system level. Account-level means that
per customer account, it records how customers earn and spend their loyalty points, their
transaction, etc. On the other hand, system-level means that the history logs record system
logging, user sessions, running processes, throughput, debugging logs, system errors, etc.

History logs also double as a container of data and information for displaying history logs of
loyalty and rewards program via third-party application. For instance, in the consumer app, the
consumer when viewing their account history logs – all information displayed in it are being
fetched from the history logs of the loyalty and rewards web application.

4.4.12. Email Interoperability


User Story
Requirements User Story Note(s)
As a user, I wanted to receive notifications Registration confirmation,
Email via Email regarding critical activities on my password reset confirmation,
Interoperability account. Updates, etc.

Scenario:
The web app requires the interoperability with email. SMS and emails are required during the
registration process for the following reasons:

c) Registration verification – at times, email can be used to verify registration


d) Registration notification – the users are notified of the successful registration

Cedezone Limited
99
Loyalty & Rewards App – Functional Requirements Document

4.4.13. Loyalty and Rewards Processes & Flows


This section highlights the desired process flows of Loyalty and Rewards application and its
functional requirements which will be the point of reference during the application
development in terms of the interface and behavioral logic of the system.

Use Case Number Loyalty and Rewards – Use Case 001


Function Name Logging In
Description The process of logging in into the Loyalty and Rewards web application.
Actor(s) Merchants, Merchant’s Retail Partners, Merchant Account Owners
Pre-conditions The users are in the login web page of the application.
Login process if successful results to users successfully logged into the
application, otherwise they will be prompted of “incorrect password” if
Flow of Events they failed to supply their correct credentials to login.
Post-conditions The user is successfully logged into the web application.
This case is complete when the users are successfully logged into the web
Exit Criteria application.

Use Case Number Loyalty and Rewards – Use Case 002


Function Name Logging Out
Description The process of logging out from the Loyalty and Rewards web application.
Actor(s) Merchants, Merchant’s Retail Partners, Merchant Account Owners
Pre-conditions The users are logged into the Loyalty and Rewards web application.
Logout process if successful results to users successfully logged out from
Flow of Events the Loyalty and Rewards web application.
Post-conditions The user is successfully logged out from the mobile application.
This case is complete when the users are successfully logged out from the
Exit Criteria web application.

Use Case Number Loyalty and Rewards – Use Case 003


Function Name Password
A security feature that that protects registered account from unauthorized
Description logins.
Actor(s) Merchants, Merchant’s Retail Partners, Merchant Account Owners
Pre-conditions The users are creating an account in the loyalty and rewards application.
Flow of Events The users are in the process of creating a customer management account.

Cedezone Limited
100
Loyalty & Rewards App – Functional Requirements Document

During the account creation process, the users can specify and set up their
password for them to implement account security.
The users can specify and set up their account password. The specified
Post-conditions account password is working for users when logging in.
This case is complete when the users were able to specify and set up their
Exit Criteria password and were able to login using it.

Use Case Number Loyalty and Rewards – Use Case 004


Function Name Forgot Password
Description The process of retrieving user account password via the forgot password.
Actor(s) Merchants, Merchant’s Retail Partners, Merchant Account Owners
The users are into the login page of the application. The user cannot access
Pre-conditions the application because they cannot remember their correct credentials.
The users are in the login page of the application. They click the linked
forgot password and redirected to a page where they can retrieve their
password by identifying secret answer to their account secret question. If
the user was able to get the secret answer to their secret question, an
email will be sent out for their randomly generated password. They will
use that password to login to the application. Upon successful login after
the password retrieval, the application will require the customers to
Flow of Events change and update their password.
The user accounts can retrieve their account access through forgot
password. New password is requested and sent out to the user email
Post-conditions address.
This case is complete when the users retrieved their credentials and able to
Exit Criteria access to the web application.

Use Case Number Loyalty and Rewards – Use Case 005


Function Name Email Notification
Description The capability of the application to send out email notification to its users.
Actor(s) Merchants, Merchant’s Retail Partners, Merchant Account Owners
Pre-conditions The users are already registered with the web application.
Forgot Password: The users are in the login page. They have selected the
forgot password. An email notification will be sent out to users to
Flow of Events authenticate and confirm their password retrieval activity.
Post-conditions The users were able to receive an email notification.
Exit Criteria This case is complete when the users able to receive an email notification

Cedezone Limited
101
Loyalty & Rewards App – Functional Requirements Document

regarding the password retrieval or could be any critical account


movement.

Use Case Number Loyalty and Rewards – Use Case 006


Function Name Merchant Account Administration Interface
An interface for loyalty and rewards merchant account interface that
enables merchant administrators to manage their merchant accounts and
Description their records.
Actor(s) Merchants, Merchant’s Retail Partners, Merchant Account Owners
The users are already registered with the loyalty and rewards application
Pre-conditions and can login to the application.
The users are logged into the application. From the application homepage,
the merchants can see the menu and from there, they can select Merchant
Flow of Events Account Administration.
The merchants have the menu option and an interface to administer
Post-conditions merchant accounts.
This case is complete when the users can navigate and access the
merchant account administration interface to manage merchant accounts
Exit Criteria and their records.

Use Case Number Loyalty and Rewards – Use Case 007


Function Name Add New Merchant Account
This function shows the process of how the actors can add new merchant
Description account.
Actor(s) Merchants, Merchant’s Retail Partners, Merchant Account Owners
The users are into the login page of the loyalty and rewards application.
The user is in the Merchant Account Administration page of the web app
Pre-conditions and trying to add new merchant account.
The users are in the Merchant Account Administration page of the Loyalty
and Rewards application. From there, they can add new merchant by
entering their account information. Saving the new account information
gets their data stored in the application database, therefore, account
creation is successful. They can also choose not to continue with adding
Flow of Events the new merchant account by hitting the cancel button.
Post-conditions The user can add new merchant account. They can also cancel the process.
Exit Criteria This case is complete when the users can add new merchant account.

Cedezone Limited
102
Loyalty & Rewards App – Functional Requirements Document

Use Case Number Loyalty and Rewards – Use Case 008


Function Name Edit Customer and Saving Record
This function shows the process of how the merchant administrator can
Description edit and update merchant accounts.
Actor(s) Merchants, Merchant’s Retail Partners, Merchant Account Owners
The users are into the login page of the loyalty and rewards application.
The user is in the Merchant Account Administration page of the web app
Pre-conditions and trying to edit and update merchant account.
The users are in the Merchant Account Administration page. From there
they can edit and update merchant account. Saving the changes updates
the merchant account. They can also choose not to continue with adding
Flow of Events the customer record by simply hitting the Cancel button.
The merchant administrator can edit and update merchant account. They
Post-conditions can also cancel the process by hitting the cancel button.
This case is complete when the merchant administrator can edit and
Exit Criteria update merchant accounts.

Use Case Number Loyalty and Rewards – Use Case 009


Function Name Cancel
This function shows the process of the merchant administrator can cancel
any updates or changes in the merchant account within the loyalty and
Description rewards application.
Actor(s) Merchants, Merchant’s Retail Partners, Merchant Account Owners
The merchant administrator is into the login web page of the loyalty and
rewards application. The user is in the Merchant Account Administration
Pre-conditions page of the web app and trying to edit and update merchant accounts.
The users are in the Merchant Account Administration page. From there
they can edit and update merchant account details. The users do have the
option not to continue with the changes or updates they are trying to
Flow of Events make; hence, the users have the cancel button.
The merchant administrator can cancel any changes or updates they are
Post-conditions making into the merchant account.
This case is complete when the users can cancel any changes or updates
Exit Criteria within the merchant account.

Use Case Number Loyalty and Rewards – Use Case 010


Function Name Search and Filter Merchant Accounts

Cedezone Limited
103
Loyalty & Rewards App – Functional Requirements Document

This function shows the process of how the merchant administrator can
Description search and filter merchant accounts.
Actor(s) Merchants, Merchant’s Retail Partners, Merchant Account Owners
The merchant administrator is in the login page of the application. The
user is in the Merchant Account Administration page of the app and trying
Pre-conditions to search for a merchant account.
The users are in the Merchant Account Administration page. From there
they can search a merchant account. Alternatively, they can also do a filter
Flow of Events of search results.
The user can search merchant accounts. They can also filter their search
Post-conditions results.
Exit Criteria This case is complete when the users can search customer records.

Use Case Number Loyalty and Rewards – Use Case 011


Function Name View Merchant Account
This function shows the process of how the merchant administrator can
Description view a merchant account after doing a search function.
Actor(s) Merchants, Merchant’s Retail Partners, Merchant Account Owners
The merchant administrator is in the login page of the application. The
user is in the Merchant Account Administration page of the app and trying
Pre-conditions to search and view merchant account.
The users are in the Merchant Account Administration page. From there
they can search merchant account. From the search results, they need to
select a merchant account. For the user to view the records in detail, they
Flow of Events need to view the merchant account.
Post-conditions The merchant administrator can view merchant account.
This case is complete when the merchant administrator can view merchant
Exit Criteria accounts.

Use Case Number Loyalty and Rewards – Use Case 012


Function Name Merchant Account Interface
This explains how the user can view a merchant account via their profile
Description interface.
Actor(s) Merchants, Merchant’s Retail Partners, Merchant Account Owners
The merchant administrator is in the login page of the web application.
The user is in the Merchant Account Administration page of the web app
Pre-conditions and trying to search and view merchant account.

Cedezone Limited
104
Loyalty & Rewards App – Functional Requirements Document

The merchant administrator is in the Merchant Account Administration


page. From there they can search merchant accounts. From the search
results, they need to select a merchant account. For the user to view the
account in detail, they need to view the merchant account to see their
actual profiles. Alternatively, there is already a preloaded list of merchant
accounts, if the merchant administrator sees the merchant account – they
Flow of Events can just view their record from there.
Post-conditions The merchant administrator can view merchant account details.
This case is complete when the merchant administrator can view merchant
Exit Criteria accounts.

Use Case Number Loyalty and Rewards – Use Case 013


Function Name Deactivate Customer Account
This explains how the merchant administrator can deactivate a customer
Description account through the feature deactivate customer account.
Actor(s) Merchants, Merchant’s Retail Partners, Merchant Account Owners
The merchant employee has resigned. The merchant employee account is
Pre-conditions no longer needed, and access needs to be revoked.
The merchant administrator is in the Merchant Account Administration
page. From there, the admin can search for the merchant account that
needs to be revoked. Upon successful search, the admin needs to view the
Flow of Events merchant account and hit the button deactivate account.
Post-conditions The merchant administrator can deactivate merchant accounts.
This case is complete when the merchant administrator can deactivate a
Exit Criteria merchant account.

Use Case Number Loyalty and Rewards – Use Case 014


Function Name Add/Create New Coupon/Voucher/Gift Card & Third-Party Vouchers
This explains how the merchant administrator can create and add new
Description coupon, voucher, or gift card.
Actor(s) Merchants, Merchant’s Retail Partners, Merchant Account Owners
The merchant is logged into the loyalty and rewards application and is in
Pre-conditions the loyalty and rewards management.
Flow of Events The merchant administrator is in the loyalty and reward management
page. From there, the admin does have an option to create a voucher,
coupon, or a gift card. The merchant must specify its details (e.g. validity,
amount, etc.). The merchant must generate a bar code/QR code for the
voucher to be scanned when used during the checkout process. When all

Cedezone Limited
105
Loyalty & Rewards App – Functional Requirements Document

the details are supplied, the merchant can complete the process of
creating a voucher by simply hitting the save button.

In parallel to all this, merchant admins can also add and register third-
party vouchers, coupons, and gift cards. Registering third-party means
merchant admins need to input the third-party details of the vouchers and
have its unique reference number and bar code/QR code registered as
well.
Post-conditions The merchant administrator can create vouchers, coupons, and gift cards.
This case is complete when the merchant administrator can create
Exit Criteria vouchers, coupons, and gift cards.

Use Case Number Loyalty and Rewards – Use Case 015


Function Name Issue Coupon/Voucher/Gift Card
This explains how the merchant administrator can issue coupon, voucher,
Description or gift card to customers.
Actor(s) Merchants, Merchant’s Retail Partners, Merchant Account Owners
The merchant is logged into the loyalty and rewards application and is in
Pre-conditions the loyalty and rewards management.
The merchant administrator is in the loyalty and reward management
page. From there, the admin does have an option to issue a voucher,
coupon, or a gift card to customers. The merchant must either search for a
customer and then select a voucher to be issued and granted to them or,
the merchant can first select a voucher and then select a customer. Either
way, the merchant next step would be filling out a form regards to issuing
coupons to customers. The forms collate information as to who issued the
coupon (merchant name, employee id, etc.), name of customer, reason for
Flow of Events issuing coupon, and other relevant information.
The merchant administrator can issue vouchers, coupons, and gift cards to
Post-conditions customers.
This case is complete when the merchant administrator can issue
Exit Criteria vouchers, coupons, and gift cards to customers.

Use Case Number Loyalty and Rewards – Use Case 016


Function Name Manage Cashback Criteria
This explains how the merchant administrator can manage cashback
Description criteria.
Actor(s) Merchants, Merchant’s Retail Partners, Merchant Account Owners

Cedezone Limited
106
Loyalty & Rewards App – Functional Requirements Document

The merchant is logged into the loyalty and rewards application and is in
Pre-conditions the loyalty and rewards management.
The merchant administrator is in the loyalty and reward management
page. From there, the admin does have an option to manage criteria.
Managing criteria gives the merchant admins the provision to create new
criteria and fill in their details. In parallel, merchant admins can also edit
existing criteria. In contrast to all of this, the merchant admins do have the
Flow of Events capability to deactivate criteria that are no longer needed.
The merchant administrator can issue vouchers, coupons, and gift cards to
Post-conditions customers.
This case is complete when the merchant administrator can issue
Exit Criteria vouchers, coupons, and gift cards to customers.

Use Case Number Loyalty and Rewards – Use Case 017


Function Name Issue Cashback
This explains how the merchant administrator can issue cashback to
Description customer.
Actor(s) Merchants, Merchant’s Retail Partners, Merchant Account Owners
The merchant is logged into the loyalty and rewards application and is in
Pre-conditions the loyalty and rewards management.
The merchant administrator is in the loyalty and reward management
page. From there, the admin does have an option to issue cashback to
customers. Issuing cashback to customer means that merchant admin can
either search for a customer and issue coupon or vice versa. Issuing
coupon also means that the merchant needed to fill up a form. The form
collates the information such as who issued the cashback (merchant name,
employee id, etc.), timestamp, name of customers, reason for issuing a
Flow of Events cashback, and other relevant information.
The merchant administrator can issue vouchers, coupons, and gift cards to
Post-conditions customers.
This case is complete when the merchant administrator can issue
Exit Criteria vouchers, coupons, and gift cards to customers.

Use Case Number Loyalty and Rewards – Use Case 018


Function Name Merchant Account Administration
This explains how the merchant administrator can manage merchant
Description accounts.
Actor(s) Merchants, Merchant’s Retail Partners, Merchant Account Owners

Cedezone Limited
107
Loyalty & Rewards App – Functional Requirements Document

The merchant is logged into the loyalty and rewards application and is in
Pre-conditions the merchant account management.
The merchant administrator is in the merchant account management
page. From there, the admin does have an option to manage merchant
account. Managing merchant accounts gives the merchant admins the
provision to create new merchant accounts. In parallel, merchant admins
can also edit, make changes, and update any information on merchant
account. In contrast to all of this, the merchant admins do have the
capability to deactivate merchant account whose employee are no longer
Flow of Events connected to merchant.
The merchant administrator can manage merchant accounts. Managing
merchant accounts means admins can create, edit, or even deactivate an
Post-conditions account.
This case is complete when the merchant administrator can manage
Exit Criteria merchant accounts.

Use Case Number Loyalty and Rewards – Use Case 019


Function Name Campaign and Promotions Management
Description This explains how the merchants can manage campaigns and promotions.
Actor(s) Merchants, Merchant’s Retail Partners, Merchant Account Owners
The merchant is logged into the loyalty and rewards application and is in
Pre-conditions the campaigns and promotion management.
The merchant administrator is in the campaigns and promotion
management page. From there, the admin does have the capability to
create a campaign. Creating a campaign will require the merchants to add
the campaign details (description, validity, etc.). The campaign
management suite also extends capability for merchants to edit existing
campaigns and their information. Activating and deactivating campaigns
is also possible for merchants to reuse old campaigns and cancelling
Flow of Events existing ones if needed.
The merchant administrator can create and manage campaigns and
Post-conditions promotions.
This case is complete when the merchants can manage campaigns and
Exit Criteria promotions.

Use Case Number Loyalty and Rewards – Use Case 020


Function Name Campaign and Promotions Management
Description This explains how the merchants can manage campaigns and promotions.
Actor(s) Merchants, Merchant’s Retail Partners, Merchant Account Owners

Cedezone Limited
108
Loyalty & Rewards App – Functional Requirements Document

The merchant is logged into the loyalty and rewards application and is in
Pre-conditions the campaigns and promotion management.
The merchant administrator is in the campaigns and promotion
management page. From there, the admin does have the capability to
create a campaign. Creating a campaign will require the merchants to add
the campaign details (description, validity, etc.). The campaign
management suite also extends capability for merchants to edit existing
campaigns and their information. Activating and deactivating campaigns
is also possible for merchants to reuse old campaigns and cancelling
Flow of Events existing ones if needed.
The merchant administrator can create and manage campaigns and
Post-conditions promotions.
This case is complete when the merchants can manage campaigns and
Exit Criteria promotions.

4.5. Mobile Application User Stories


This section identifies the scenarios and states the stories and requirements from the user
perspective as to where the mobile application (consumer application) of Cedezone will be
utilized by merchants’ subscribing customers.

4.5.1. Mobile Application Usage Scenarios

Loyalty Points Accrual


Customers uses the mobile app (consumer app) for the purpose of participating to merchants’
loyalty and rewards program. Points can be earned by customers through various ways. It can
be earned by customers spending and buying merchant products, paying utility bills and
merchant services, participating in merchant campaigns, offerings, and promotions.

Points Redemption
On the assumption that a customer earned enough points, they can redeem it to various
merchant items and commodities. Redeeming merchant commodities requires customers to
exchange their points into Cedezone points or consumable vouchers and coupons.

E-Commerce
Consumers primary and probably the easiest way to earn points to shop online via consumer
app (Cedezone’s mobile application). The consumer app comes with a marketplace section that
offers merchant customers the provision to procure merchant products, commodities, and
services.

Cedezone Limited
109
Loyalty & Rewards App – Functional Requirements Document

Loyalty Account Management


The loyalty and rewards app is the primary application and the interface for merchant
customers to manage their loyalty points, vouchers/coupons/gift cards. The consumers will have
their own account that displays their account information, loyalty points earning, earned
coupons, vouchers, and gift cards – on the assumption that the consumers are registered users
already.

4.5.2. Mobile App – Pre-Login View


The customers sees after opening the application on their mobile phones are the login screen.
The login screen comprised of the username and password fields.

4.5.3. Mobile App – Post Login View (User Dashboard)


After a successful login, the customers sees the following options within the User Dashboard:

I. View My Merchants – Displays the count and Summary of merchant interests. Clicking this
will display full merchant list.

Cedezone Limited
110
Loyalty & Rewards App – Functional Requirements Document

II. My Offers – Displays the numbers of available offers and clicking this menu option will show
the offer details.
III. My Interests
a. On this page, the customer will have a provision to select/choose their interests and
have an option to receive all offers OR only those offers basis the selected interest.
IV. Other Offers – This will show offers from other merchants the consumer isn’t subscribed to,
aligned to the consumer interests.
V. Merchant Categories – Display number of categories consumer merchants belongs. Clicking
this drill down to categories, merchants in categories.
VI. My Rewards – Shows coupons, Cash backs and Points accrued.

A more detailed structure and hierarchy will be explained at the later part of this document.
Refer to 4.5.6 User Dashboard.

4.5.4. Login and Logout


User Story
Requirements User Story Note(s)

Login As a customer, I want to be able to have an interface where I can login


to the customer management app.  

Cedezone Limited
111
Loyalty & Rewards App – Functional Requirements Document

As a customer, I want the login interface to have necessary fields for


me to enter my credentials (username and password fields).  
As a customer, I want my password to be protected in a way that every
time I type my password into the password text field, the characters
are masked.  
As a customer, I want the interface to have the necessary buttons for
me to login.  
As a customer, I want to be able to logout from the mobile anytime
regardless of what section of the application I am in.  
As a customer, I want to have a message that notify me of my
Logout
successful logout.  
As a customer, I want to be reverted into the login page after logging
out from the application successfully.  

Scenario:
On the assumption that the mobile app has been made available for customers via Google Play
or Apple App Store – and the customers already downloaded the app and install on their phone.
These customers can login to the consumer app to manage their earned loyalty points or
cashbacks, coupons, vouchers, and gift cards.

The customers when logging in to the application, they needed to enter their username. When
they are entering their passwords, a security feature is already in place. Password masking is a
security that protects your password from being seen by others while typing it in the password
field

In contrast, a logout feature is implemented a must. Logout button is existing to safely and
securely end customers’ session.

4.5.5. Security
User Story
Requirements User Story Note(s)
As a merchant, I want to be able to login using my
password.  
Password As a merchant, I want my password to be protected in a
way that every time I type my password into the password
text field, the characters are masked.  
As a merchant, I want to have a way to retrieve my
password in case I forgot to remember it.  
As a merchant, I want to have an interface where I can
Forgot Password
retrieve my password.  
As a merchant, I want to be able to retrieve my password
by answering my secret question.  

Cedezone Limited
112
Loyalty & Rewards App – Functional Requirements Document

As a merchant, I want to be able to receive my newly


generated password either email.  
E.g. Secret Question
As a merchant, I want to have a way to securely retrieve and Secret Answer,
my password. etc.
As a merchant, I want to receive my newly generated
password via email  

Scenario:

On the assumption that the users are already registered and have their credentials, they can
login into the application by entering their username and password. Every time the user enter
their password into the password field, it is protected by the application by masking it – making
the password not visible to third-party.

4.5.6. User Dashboard


The user dashboard is the landing page of the users (customers and consumers) after successful
login into the mobile application.

A. View My Merchants – Displays the count and Summary of merchant interests. Clicking this will
display full merchant list. It also enables the customers to do the following:
i. View My Merchants allows them to view all the merchants that they are associated
with.
ii. Under every Merchant Name – users can view all the offers that they can avail which
has been offered by this merchant.
B. My Offers – Displays the numbers of available offers and clicking this menu option will show the
offer details.
i. This is a list of all offers and its details that the user is entitled to. These offers will pop
up on the consumer app if the customers have qualified for this offer. by the Merchant
to the customers (e.g. a merchant might issue a coupon or offer a discount to
everybody, that will be available for everybody, another merchant might issue a coupon
only for its own customers, that offer won’t be available to everyone).
C. My Interests
i. On this page, the customer will have a provision to select/choose their interests and
have an option to receive all offers OR only those offers basis the selected interest.
D. Other Offers – This will show offers from other merchants the consumer isn’t subscribed to,
aligned to the consumer interests.
E. Merchant Categories – Display number of categories consumer merchants belongs. Clicking this
drill down to categories, merchants in categories.
F. My Rewards – Shows coupons, Cash backs and Points accrued. This section also shows all the
rewards the customers have earned from various merchants. Rewards can be earned in
following three ways:

Cedezone Limited
113
Loyalty & Rewards App – Functional Requirements Document

i. Coupons – this tab displays all the coupons from various merchants that the customer
can select OR avail.
ii. Points/Cashbacks – this tab displays all the Points/Cashbacks that the customer can
have.
iii. Campaigns
a. This tab displays all the campaigns the customer is associated with.
b. Every campaign displays the stats of the customer and the reward that he may win
after “x” visits.
c. The coupons, points/cashbacks/campaigns are seen by the customers when the
merchant selects OR publishes these to the customers

4.5.7. Merchants Section


The merchant section is part of the mobile application (consumer app) that provides the users
an interface where they can view the list of participating merchants. They can also view the list
of merchants they are subscribe with. The interface also aims to display merchant profiles and
details. That includes their merchant name, logos, industry, niche, products, services,
geolocation (store locations), their ongoing campaigns, promotions, offerings, and many more.

User Story
User Story Note(s)
Requirements
As a user, I want to have an
Merchant Section
interface where I can see the list
Interface
of the participating merchants.  
As a user, I want to be able to
Merchant Search search for a merchant.  
As a user, I want to be able to
filter and sort merchant search
Search Filters and Sort results.  
As a user, I want to be able to
see the list of the merchants
Merchant Categories organized by categories.  
Details such as merchant name, logos,
industry, niche, products, services,
As a user, I want to be able to geolocation (store locations), their
view the merchant profiles and ongoing campaigns, promotions,
Merchant Profile their details. offerings, and many more
As a user, I want to be able to
subscribe with a merchant. In Subscribing to a merchant means I can
Merchant contrast, I want to be able to participate to their campaigns and
Subscribe/Unsubscribe unsubscribe as well. promotion and enjoy their offerings.
As a user, I want to be able to
have an interface within the
Merchant Section to have the
list of merchants I am associated
Merchant Association with.  

Cedezone Limited
114
Loyalty & Rewards App – Functional Requirements Document

Scenario:
On the assumption that the customer is already a registered user, the customer can navigate to
the merchant section. The merchant section in-app provide an interface that lists down all the
participating merchants. The customer can also view the list of merchants they are associated or
subscribe with.

The list of merchants are arranged by categories (e.g. Food, Apparel, Health, Entertainment,
etc.). Users can view the merchants when a user selected a merchant by clicking their logos as
shown from the abstraction above. Upon selecting a merchant, their information will be
displayed and will be marked/tagged if the user is subscribed with that merchant.

Additionally, a search function is also implemented. This provides the users a much easier way
to locate a specific merchant.

4.5.8. Rewards Section


The rewards section is a part of the mobile consumer application where users can view and
manage their rewards.

User Story
User Story Note(s)
Requirements
As a consumer (mobile app user), I want to
Reward User
have a My Rewards interface where it shows  
Interface
my coupons, cash backs, and points accrued.
Reward Details As a consumer (mobile app user), I want to  

Cedezone Limited
115
Loyalty & Rewards App – Functional Requirements Document

have a section where it shows the details I


have for coupons, coupons, and gift cards in
the reward section.
As a consumer (mobile app user), I want to E.g. Lifestyle and Leisure,
Reward Product
have all rewards displayed in the app to be Health, Dining, Entertainment,
Categorization
categorized. Sports, Games, Fashion, etc.
As a consumer (mobile app user), I want to be
able to search for a reward that I wanted to  
redeem using my points accrued.
Reward Search
As a consumer (mobile app user), I want to
have interface with search functions for me to  
search rewards and redeem with my points.
As a consumer (mobile app user), I want a
feature that enable me to filter my product  
Reward Product
searches.
Search Filter
As a consumer (mobile app user), I want to be Sort by price, Sort by name, Sort
able to sort my product search results. by category, etc.
As a consumer (mobile app user), I want to be
able to exchange my points into Cedezone
vouchers or to any merchant-specific
Exchange System vouchers and gift cards.  

Scenario:
Rewards can be in a form of vouchers, coupons, and gift cards. In this interface they can also
view their overall loyalty points earned. In the rewards section, it also features the exchange
system which allows the users to exchange their loyalty points into Cedezone voucher/coupon.
The Cedezone voucher/coupon is considered as “international currency” within the application.
This will allow the user to spend their earned loyalty points from merchant “A” to merchant “B”.
The exchange system will also let the users to exchange their loyalty points to various merchant-
specific vouchers, coupons, and gift cards.

In this section, the user are also given the provision to view the detailed information of rewards
they have. Information such as voucher/coupon validity, its value, etc.

4.5.9. Marketplace (E-Commerce) Section


The marketplace section is the e-commerce front face of the consumer application. Here, the
customers can do their shopping activities. All products and commodities displayed in the
marketplace section are configurable from the backend application of the mobile app.
Merchants have the capability to post and update their products, commodities, and services.

User Story
User Story Note(s)
Requirements

Cedezone Limited
116
Loyalty & Rewards App – Functional Requirements Document

As a consumer (mobile app user), I want to have an interface where


 
I can shop for merchant products.
Marketplace User
 
Interface As a consumer (mobile app user), I want to be able to browse the
shopping section

As a consumer (mobile app user), I want to be able to view details of


 
the merchant products I am about to purchase.
As a consumer (mobile app user), I want to be able to view price of
 
the merchant products.
As a consumer (mobile app user), I want to have the merchant
Marketplace Product
details displayed in the product details page for me to have a quick
Details  
access to merchant information for whatever purposes it may serve
me.
As a consumer (mobile app user), I want to have the product
reviews displayed in the product details page of a product for me to  
determine if the product is worth it or not.
Product As a consumer (mobile app user), I want to view the products in a
 
Categorization categorized manner.
As a consumer (mobile app user), I want to have a search field
 
where I can search for a product.
Product Search
As a consumer (mobile app user), I want to be able to see a search
 
icon and when clicked, a search text field will appear.
As a consumer (mobile app user), I want to be able to filter the
 
product searches.
Product Search Filter
As a consumer (mobile app user), I want to be able to sort my
 
product search results.
Promotions and
As a consumer (mobile app user), I want to  
Offerings
As a consumer (mobile app user), I want to have a interface that
 
allows me to manage my cart.
As a consumer (mobile app user), I want to be able to add a product
 
to my cart.
As a consumer (mobile app user), I want to be able to remove a
 
Add to Cart product from my cart.
As a consumer (mobile app user), I want to be able to modify the
 
quantity of the products added to my cart.

As a consumer (mobile app user), I want to be able to see a counter


 
that counts the number of products added in my cart.

As a consumer (mobile app user), I want to be able to checkout and


 
proceed to paying the products added to my cart.
Checkout
As a consumer (mobile app user), I want to see the total price of all
 
products in the checkout process

Cedezone Limited
117
Loyalty & Rewards App – Functional Requirements Document

As a consumer (mobile app user), I want to be able to see the


 
subtotal of all the products during the checkout process.
As a consumer (mobile app user), I want to have the provision to use
 
a discount coupon when checking out.
As a consumer (mobile app user), I want to be able to see a payment
confirmation message in-app to verify and make sure my transaction  
is successful and completed.

As a consumer (mobile app user), I want to be able to receive a


 
notification of the transaction I made via email or SMS.

As a consumer (mobile app user), I want to be able to see the


transaction I just made into the transaction history and ETA delivery  
date.

Use As a consumer (mobile app user), I want to have the provision to use
 
Voucher/Coupons a discount coupon or vouchers when checking out.

As a consumer (mobile app user), I want to be able to see product


Product Review  
reviews when browsing the shopping section.

Scenario:
Customers navigate to the marketplace section to do their shopping activities. Merchant
products, commodities, and services are organized by their categories (e.g. Gadget, Fashion,
Health, Entertainment, etc.)

Cedezone Limited
118
Loyalty & Rewards App – Functional Requirements Document

Products are displayed in their corresponding categories along with their information (e.g.
product name, product description, merchant, availability, price, etc.). Clicking on a specific
product lets the users to view the product page (product profile).

Users can add two or more products into their shopping cart and have the option to proceed to
checkout when done browsing and they are about to make the payments. Customers when
making the payments, the application will provide them payment methods as per their
convenience. Payment methods can be payment credit card, direct to bank payments, cash on
delivery).

During the payment process, the users are given the option to apply vouchers, coupons, and gift
cards they redeemed in exchange of the loyalty points they earned.

Completing the payment transaction will have the application generate an electronic invoice
which will be sent via customers email address. A record of the transaction (transaction history)
will be documented.

4.5.10. Redemption of Gift Cards or Coupons


On the assumption that the customers already have rewards (coupon, vouchers, and gift cards),
they can redeem during the checkout process. Users can redeem via on-premise merchant
transaction or online.

User Story
User Story Note(s)
Requirements
If the balance available on the gift card is
greater than or equal to the order total, then
the customer can click Complete order.
As a user, I want to be able to avail
my rewards (coupon, vouchers, and If the balance available on the gift card is less
gift cards) during checkout. than the order total, then the customer is
prompted to choose a second payment
method for the balance before placing the
Coupon order.
Redemption As a user, I want to have merchants
to be able to scan my rewards
(coupon, vouchers, and gift cards) Merchants can scan coupon, vouchers, gift
during checkout. cards' QR code/bar codes.
As a user, I want to be able to avail Merchants entering coupon, vouchers, or
my rewards (coupon, vouchers, and gift cards unique number means that the
gift cards) during checkout by merchants are unable to scan the bar
having the merchant entering its code/QR code. Entering its unique code is
unique id number. fallback in case scanning does not work.

Cedezone Limited
119
Loyalty & Rewards App – Functional Requirements Document

Scenario:

When customers are making a purchase from merchant store (on-premise) or digital (online),
they can redeem the value of a gift card or coupon by entering its unique code at checkout. This
code isn't case sensitive. Another option for customers is – they can let the merchant scan the
bar code embedded within their gift card our coupon to maximize the checkout speed and limit
errors.

Every issued gift card or coupon holds a value, which can be spent over more than one order.
The customer can view and manage the status of each gift card or coupon after they logged into
the Cedezone platform.

When a customer redeems a gift card, the checkout displays one of the following options:

a) If the balance available on the gift card is greater than or equal to the order total, then
the customer can click Complete order.

b) If the balance available on the gift card is less than the order total, then the customer is
prompted to choose a second payment method for the balance before placing the
order.

4.5.11. Hamburger Menu


The application is required to have a hamburger menu. This is to provide users an easy
navigational experience within the application.

Cedezone Limited
120
Loyalty & Rewards App – Functional Requirements Document

The ideal options that are needed within the hamburger menu are as follows:

Contact Us
Displays the information regarding the contact information of the application customer service.
The contact us must displayed the customer service contact number and email address. It is also
highly recommended that the information includes support operational hours.

Example Contact Us Template:


support@cedezone.com
+234 9492 223 11
<Mailing Location Address>

About Us
Displays the information about the mobile application developers or owner.

Example About Us Template:

Application Powered by Cedezone Ltd.


<Company Headquarters Location Address>
<Company Profile>
<Mailing E-mail Address>

Shopping (Marketplace Section)


Menu that redirects the users to the e-commerce (marketplace) section of the application.

My Account
Menu that redirects the users to my account page where they can view their orders along with
order history. My account page also displays all upcoming orders. The my account page can be
used by customers to track their orders and in this interface, user can cancel their orders as
there is an option that enables the customers to do just that.

Settings
Menu that redirects the users to the settings page where they can localize the application
interface. In this option, the users are capable of personalizing:

 Notification – They can switch ON and OFF their notifications.


 My Profile – View and edit their profile

Frequently Asked Questions (FAQs)


Displays the frequently asked questions that helps the users in many ways (e.g. application
features, application usage, Do’s and Don’ts, and many more).

Cedezone Limited
121
Loyalty & Rewards App – Functional Requirements Document

Feedback
Menu the redirects the customers to an interface where they select a merchant and send a
feedback or review. Sending feedback means it also send it to the Cedezone administrator.

4.5.12. In-App Email Messaging


The consumer application gives the consumer or the merchant customers the provision to
communicate to merchants and application customer service.

Scenario:
The application has built-in email messaging components. An inbox interface is made available
where users can view and manage their in-app messages. The interface gives users the
capability to all email functionalities (e.g. Reply, Reply All, Forward, Send Attachments, etc.)

The application comes with a search function that enables customers to search for a merchant
and start an email conversation with them.

4.5.13. My Account (Order History Page)


An interface that displays the customer’s order history of their orders. The interface will have
the users to be able to check and track the upcoming orders.

In this interface, the users can also cancel their orders that are yet to be fulfilled (upcoming
orders).

Cedezone Limited
122
Loyalty & Rewards App – Functional Requirements Document

4.5.14. Feedback and Review Page

User Story
User Story Note(s)
Requirements
Review and The users are capable of posting reviews for the
Feedback following:
As a user, I want an interface
that allows me to leave a
 Merchant Products and Services (Product
review and feedback
and Services Page)
regarding merchants and their
 Merchants (Merchant Page)
products.

To rate the merchants and their products and


services, rating feature must be implemented.
Rating feature can be in a form of stars.

 5 stars – Being the highest


 4 stars
As a user, I want to be able  3 stars
rate the merchants and their  2 stars
products and services.  1 star – Being the lowest

As a user, I want to be able to


have a field for me to enter
the title of my review.

As a user, I want to be able to


leave any comments, A text field is a must for users to type in their
feedback, and review texts actual review, comments, suggestions, and
when posting them. feedback.

As a user, I wanted to have my The user’s full name is displayed when they
name displayed when I successfully posted their reviews, comments,
successfully posted by review. suggestions, and feedback regarding the merchant
and their products and services.
As a user, I want to be able to When viewing a merchant profile or their
view all the reviews made by products and services, the user have access to
the customers. view the reviews made by other users. When
viewing the review page, it must the display the
following:

 Name of the customer who made the


review
 Time and date as to when the review was
posted
 Text review (actual comments,
suggestion, and feedback)

Cedezone Limited
123
Loyalty & Rewards App – Functional Requirements Document

 Rating (number of stars given to the


merchant or their products and services)

Scenario:

An interface is required that enables the users to make reviews and post them into the following
page:

Merchant page – A user makes a review regarding their experience with a merchant.
Product page – A user makes a review regarding merchant products and services.

The above image shows the ideal and must have features for the posting and leaving ratings and
reviews. The users can rate a merchant, their products, and services by given them up to 5 stars.
In parallel, they can leave texts for their actual comments, suggestions, and feedback.
Additionally, the users can leave a title of their review.

The abstraction above shows how customers can post a review. On the other hand, it also shows
that the posted reviews can be viewed by the users by going into their corresponding pages. For
instance, the products and services page, only show the reviews posted for a specific product or

Cedezone Limited
124
Loyalty & Rewards App – Functional Requirements Document

service. If the review has been made and posted for a merchant, then that review will be posted
in the merchant profile page.

4.5.15. Predictive Analysis


The consumer application features predictive analysis. Predictive analysis is the way the
application displays new products and suggestions based the following criteria:

Customer Activities
Customer Categories (Points of Interest)

Predictive analysis should be implemented within the Marketplace section (Shopping/E-


Commerce) and to banner/ads placeholders.

Predictive analysis can also be applied for customer searches.

4.5.16. Logistics Partner Integration


Partnership with different logistic fulfillment provider is a requirement. This is to enable
customers to have their purchased merchant products and commodities to be delivered to their
location address.

4.5.17. Social Media Integration


Social media integration is part of the requirement for mobile application. This is to enable
customers to share details of merchant products and commodities via social media (e.g.
Facebook, etc.).

Additionally, social media integration is necessary for customers onboarding e.g. Register by
Facebook.

4.5.18. SMS and Email Interoperability and In-App Notifications


User Story
Requirements User Story Note(s)
As a user, I wanted to receive
SMS notifications via SMS regarding
Interoperability critical activities on my account. Transaction verifications, OTP codes, etc.
As a user, I wanted to receive
Email notifications via Email regarding Registration confirmation, password reset
Interoperability critical activities on my account. confirmation, Updates, etc.
In-app As a user, I wanted to receive Notifications regarding application updates,
Notification app notifications in-app of account movement, security, merchant
updates. updates, etc.

Ideally, there is an icon somewhere that lets

Cedezone Limited
125
Loyalty & Rewards App – Functional Requirements Document

the user views all the notifications in-app


(similar to how notifications are displayed in
Facebook for instance).

Scenario:
The mobile app requires the interoperability with SMS and email. SMS and emails are required
during the registration process for the following reasons:

a) Registration verification – at times, email can be used to verify registration


b) Registration notification – the users are notified of the successful registration

Additionally, SMS interoperability will be used to receive One-Time-Passwords (OTP) when


pushing or confirming a transaction. In parallel, email interoperability is utilized as a form of
notification for transaction and any account movements.

In-app notifications on the other hand is implemented within the customer management
application. Ideally, an icon exists for users to click and that will display all the notifications
whether it is related to security, account changes and movement, application updates, etc.

4.5.19. Splash Screens


User Story
Requirements User Story Note(s)
As a user, I wanted to have Splash screens can be utilized as a medium
splash screens showing while that makes it easy for customers to
Splash Screen the game is initializing. understand how the rewards program works.

Scenario:
Whenever the consumers started or loads the application, splash screens will be displayed
during the loading time. These splash screens will have visual that shows how the application
works from the customer’s perspective.

The image below shows the abstraction of how splash screen works and how it looks like.

Cedezone Limited
126
Loyalty & Rewards App – Functional Requirements Document

4.5.20. Referral Program


User Story
Requirements User Story Note(s)
Referral code or an invite link sent by the
referrer will be used by referee when signing
up. Using the link or the code will qualify both
the referee and the referrer in the
application’s referral program and both of the
will be incentivized.

The invite link can be used by potential


As a user, I wanted to have a customers when signing up via web browser
feature in the application that (web app).
enables to generate a referral
Generate Invite code or invite link so I can send it The referral code can be used by potential
Link or Referral to my friends, family, and customers when signing up via mobile
Code relatives. application.

Scenario:
The application is capable having an incentivized referral program. The registered users as a
referrer, can generate a referral code or an invite link which they can send to potential users.
The potential users can register through the invite link or using the referral code. Upon
successful signup, both the referrer and referee will receive incentives.

The image below shows and example of the feature referral program.

Cedezone Limited
127
Loyalty & Rewards App – Functional Requirements Document

4.5.21. Delivery Real-Time Monitoring


User Story
Requirements User Story Note(s)
The delivery tracking feature can be implemented
As a user, I wanted to have a in the delivery history. The customers can click a
feature in the application that button where it shows the status of the update as
allows me to track the to whose logistics is handling the delivery, the
Delivery Real- delivery status of the goods status of the delivery, and estimated time of
Time Tracking and products I purchased delivery.

Scenario:
When a consumer (registered users) purchased a merchant commodity or any product, they can
track their delivery through a feature within the application. Ideally, the delivery tracking
feature can be implemented within the order transaction history. It can be in a form of a button
where users can click, and it will display the following:

 Order Number
 AWB Number
 Delivery Status (In-Transit, Delivered, etc.)
 Logistic Provider
 Estimated Time of Delivery

Cedezone Limited
128
Loyalty & Rewards App – Functional Requirements Document

5. Operational Requirements

5.1. Connectivity
 If the merchant has an internet connection, or in offline mode on any device the merchant is
using – the data can be synced to the Cedezone servers when there is an active connection.

5.2. Security
The security Section describes the need to control access to the data. This includes controlling
who may view and alter application data.

 Consumers only have access to their own mobile app (consumer app) accounts.
 Only merchants have access to Customer Management App
 Only merchants have access to Loyalty and Rewards App
 System Administrator has the highest level of access of authority
 Deleting of records is only available for system administrators. Delete button for records are
grayed out for merchant-level access. For security purposes, the deleted records goes to
another table in the database that will act as an archive or a recycle bin.

5.3. Audit Trail


Mobile App (Consumer App)
 Customer App Activity Logs
 Transaction History Logs
 Last Login Timestamp (Time and Date)

Customer Management
 Customer Account History Logs
 Merchant System Activities
 Account Change Logs
 System Logs (Backend)

Loyalty and Rewards App


 Account Change Logs
 Report Generation Logs
 System Logs (Backend)

5.4. Data Currency


Data currency is a measure of how recent data are. This section answers the question, “When
the application responds to a request for data how current must those data be?”

 A scheduled daily job that runs at night when there is less traffic to synchronize data from
remote client to Cedezone servers.

Cedezone Limited
129
Loyalty & Rewards App – Functional Requirements Document

5.5. Data Accuracy


Data Accuracy pertains to how data relate to customer transactions and merchant records.

 The customer database should be updated with the unique transaction reference number
for each transaction done at merchant locations. This reference helps us determine specific
products bought by the consumer.
 A customer account must have its own unique account number. The account number will be
used by the application to determine which customer to grant cash back or loyalty points in
every transaction.

5.6. Reliability
Reliability is the probability that the system will be able to process work correctly and
completely without being aborted.

 What damage can result from this system’s failure?


o Loss of revenue
o Loss of customer’s trust
o Customer dissatisfaction on our product

 What is the minimum acceptable level of reliability?


o None. The system must have redundancy to ensure system reliability.

5.7. Recoverability
Recoverability is the ability to restore function and data in the event of a failure. Answer the
following questions in this section:

 The failure must be detected at least within an hour.


 In the event the database is corrupted, the database must be capable of being restored to
its condition on no more than one hour before the corruption occurred.
 If the process site (hardware, data, and onsite backup) is destroyed, the application must be
restored in an hour.

5.8. System Availability


System availability requirement is – it must be available 24 hours a day, 7 days a week.

5.9. Fault Tolerance


Fault tolerance is the ability to remain partially operational during a failure. The requirement for
this application is – there should be no fault tolerance. When a portion of the application is
unavailable there is no need to be able to use the remainder for the application. Hence, the
system must be fully operational at all costs.

Cedezone Limited
130
Loyalty & Rewards App – Functional Requirements Document

5.10. Performance
Describe the requirements for the following:

 Response time for queries and updates: less than a second


 Throughput: 90 Mbit/s in a 100 Mbit/s (90% channel efficiency)
 Expected volume of user activity: 15,000 to 20,000 transactions a day. The number varies
and may increase depending on seasons. Factors like merchants having promotional and
offerings may also affect the surge of transactions.

5.11. Capacity
The application is expected to be used by a merchant with 300 to 1,000 employees. The mobile
app (consumer app) is expected to have at least a million of users worldwide.

Cedezone Limited
131
Loyalty & Rewards App – Functional Requirements Document

6. Glossary of Terms

i. Cedezone Platform – These are the applications provided by Cedezone to the Merchants.
These applications can be the Loyalty and Rewards, Customer Management, Mobile App,
Inventory Management, or the Reservation Application.

ii. API – API stands for Application Programming Interface. An API is a software intermediary
that allows two applications to talk to each other. In other words, an API is the messenger
that delivers your request to the provider that you're requesting it from and then delivers
the response back to you.

iii. Loyalty and Rewards Application – This is the application that enable the merchant sector
to manage and run their loyalty and rewards scheme seamlessly.

iv. Customer Management Application – A tool that lets the potential clients of Cedezone to
have a platform of its own for managing records of their customers.

v. Mobile App (Consumer App) – A solution that Cedezone wanted to achieve. It will front face
the merchant customers. This will be the interface that gives access to consumers to
manage their loyalty points and accounts.

vi. Inventory Application System – Is an application that is intended to empower merchants


into having a tool that lets them manage the inventory of their products and commodities

vii. Reservation Application System – An application that taps primarily into the business sector
of hotels, restaurant, and transportation. This allows the consumers to manage a booking
from service providers across the said business sector above.

viii. Points of Interest – These are merchant categories required for the merchant
clients/customers to specify. These will be used as a reference in calculating the predictive
suggestions to customers. E.g. showing suggested offers to customer based on their
interests, etc.

ix. Process Flows – A section of this documentation that is required as a reference for
developing the User Interface & User Experience (UI/UX).

Cedezone Limited
132
Loyalty & Rewards App – Functional Requirements Document

x. Functional Requirements – These are sets and lists of features required for the Cedezone
applications.

xi. User Story – A user story is a way to capture a description of a software feature from an
end-user perspective.

xii. Offerings – Pertain to the merchant products and commodities made available for
consumers to purchase.

xiii. Promotions – These are the products discounts posted by merchants.

xiv. Campaigns –Activities that can be managed within the application for merchants to
promote their products and commodities.

Cedezone Limited
133

You might also like