Professional Documents
Culture Documents
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:
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:
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.
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.
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
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
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.
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.
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:
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.
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”.
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.
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.
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
Cedezone Limited
10
Loyalty & Rewards App – Functional Requirements Document
Cedezone Limited
11
Loyalty & Rewards App – Functional Requirements Document
Details:
Cedezone Limited
12
Loyalty & Rewards App – Functional Requirements Document
Cedezone Limited
13
Loyalty & Rewards App – Functional Requirements Document
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
Cedezone Limited
15
Loyalty & Rewards App – Functional Requirements Document
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.
Cedezone Limited
16
Loyalty & Rewards App – Functional Requirements Document
Cedezone Limited
17
Loyalty & Rewards App – Functional Requirements Document
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:
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:
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
Cedezone Limited
23
Loyalty & Rewards App – Functional Requirements Document
Cedezone Limited
24
Loyalty & Rewards App – Functional Requirements Document
Cedezone Limited
25
Loyalty & Rewards App – Functional Requirements Document
Cedezone Limited
26
Loyalty & Rewards App – Functional Requirements Document
Cedezone Limited
27
Loyalty & Rewards App – Functional Requirements Document
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
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
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
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
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.
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:
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
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:
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.
Cedezone Limited
38
Loyalty & Rewards App – Functional Requirements Document
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:
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:
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.
Cedezone Limited
40
Loyalty & Rewards App – Functional Requirements Document
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:
Cedezone Limited
41
Loyalty & Rewards App – Functional Requirements Document
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:
Cedezone Limited
42
Loyalty & Rewards App – Functional Requirements Document
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:
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:
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:
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:
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.
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
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.
Scenario:
On the assumption that the customers are doing the self-registration process via website or
mobile app – the customers can register by:
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:
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.
Cedezone Limited
52
Loyalty & Rewards App – Functional Requirements Document
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.
Once the customer account has been created, their data and account
information will be synchronized and stored in the Cedezone platform.
Cedezone Limited
53
Loyalty & Rewards App – Functional Requirements Document
Cedezone Limited
54
Loyalty & Rewards App – Functional Requirements Document
Cedezone Limited
55
Loyalty & Rewards App – Functional Requirements Document
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.
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.
Cedezone Limited
57
Loyalty & Rewards App – Functional Requirements Document
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.
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.
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.
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.
Cedezone Limited
64
Loyalty & Rewards App – Functional Requirements Document
Cedezone Limited
65
Loyalty & Rewards App – Functional Requirements Document
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.
Cedezone Limited
67
Loyalty & Rewards App – Functional Requirements Document
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.
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.
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:
Cedezone Limited
70
Loyalty & Rewards App – Functional Requirements Document
Cedezone Limited
71
Loyalty & Rewards App – Functional Requirements Document
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.
Cedezone Limited
73
Loyalty & Rewards App – Functional Requirements Document
Cedezone Limited
74
Loyalty & Rewards App – Functional Requirements Document
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.
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.
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.
Cedezone Limited
77
Loyalty & Rewards App – Functional Requirements Document
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
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.
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
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.
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.
Cedezone Limited
85
Loyalty & Rewards App – Functional Requirements Document
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.
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.
Cedezone Limited
88
Loyalty & Rewards App – Functional Requirements Document
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.
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:
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.
Cedezone Limited
92
Loyalty & Rewards App – Functional Requirements Document
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
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
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,
Cedezone Limited
97
Loyalty & Rewards App – Functional Requirements Document
Scenario:
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.
Scenario:
The web app requires the interoperability with email. SMS and emails are required during the
registration process for the following reasons:
Cedezone Limited
99
Loyalty & Rewards App – Functional Requirements Document
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.
Cedezone Limited
101
Loyalty & Rewards App – Functional Requirements Document
Cedezone Limited
102
Loyalty & Rewards App – Functional Requirements Document
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.
Cedezone Limited
104
Loyalty & Rewards App – Functional Requirements Document
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.
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.
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.
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.
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
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.
Cedezone Limited
111
Loyalty & Rewards App – Functional Requirements Document
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
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.
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
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.
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
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.
User Story
User Story Note(s)
Requirements
Cedezone Limited
116
Loyalty & Rewards App – Functional Requirements Document
Cedezone Limited
117
Loyalty & Rewards App – Functional Requirements Document
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.
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.
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.
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.
About Us
Displays the information about the mobile application developers or owner.
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:
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.
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.
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
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.
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:
Cedezone Limited
123
Loyalty & Rewards App – Functional Requirements Document
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.
Customer Activities
Customer Categories (Points of Interest)
Additionally, social media integration is necessary for customers onboarding e.g. Register by
Facebook.
Cedezone Limited
125
Loyalty & Rewards App – Functional Requirements Document
Scenario:
The mobile app requires the interoperability with SMS and email. SMS and emails are required
during the registration process for the following reasons:
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.
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
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
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.
Customer Management
Customer Account History Logs
Merchant System Activities
Account Change Logs
System Logs (Backend)
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
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.
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:
Cedezone Limited
130
Loyalty & Rewards App – Functional Requirements Document
5.10. Performance
Describe the requirements for the following:
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.
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.
xiv. Campaigns –Activities that can be managed within the application for merchants to
promote their products and commodities.
Cedezone Limited
133