priscy-complete-project upload
priscy-complete-project upload
BY
FEBRUARY 2025
1
DESIGN AND IMPLEMENTATION OF AN
BY
FEBRUARY 2025
ii
CERTIFICATION
This is to certify that this research work was carried out by UGBAGBA Priscillia
………………………………. …………………………
Prof. V.V.N Akwukwuma Date
(Project Supervisor)
iii
APPROVAL
This project report written by UGBAGBA Priscillia Funkepere with matriculation number
PSC1712900 in partial fulfillment of the requirement for the award of the University of
Benin Bachelor of Science (B.Sc.) degree in Computer Science, is adequate both in scope
and content and it is hereby approved for presentation.
…………………………… ……………………………
Prof. Godspower Ekuobase Date
(Head of Department)
iv
DEDICATION
This project work is dedicated to God Almighty, for providence, guidance, and grace in
seeing me through this study; I give Him all the glory. I also dedicate this project to my
parents Mr. and Mrs. Ugbagba, I would not have come this far.
v
ACKNOWLEDGEMENT
My sincere gratitude goes to God Almighty, for granting me this grace and mental powers
to complete this project. This project completes another milestone in my academic career. I
Prof. V.V.N Akwukwuma for his support and guidance throughout the course of this
project.
Worthy of special mention are my parents; Mr. and Mrs. Ugbagba who through their
vi
TABLE OF CONTENTS
PRELIMINARY PAGES
CERTIFICATION iii
APPROVAL iv
DEDICATION v
ACKNOWLEDGEMENT vi
ABSTRACT x
CHAPTER ONE: INTRODUCTION 1
1.1 Introduction 1
1.2 Background of Study 1
1.3 Statement of Problem 3
1.4 Aim and Objectives of the Study 4
1.5 Significance of Study 4
1.6 Scope of Study 6
1.7 Limitations of the Study 7
1.8 Definition of Terms 7
CHAPTER TWO: LITERATURE REVIEW 9
2.1 Introduction 9
2.2 Conceptual Review of Electronic Payment System (EPS) 9
2.2.1 Components of EPS 10
2.2.2 Types of Electronic Payment Systems 10
2.2.3 Benefits of Electronic Payment Systems 11
2.2.4 Challenges and Considerations 12
2.2.5 Future Trends and Innovations 12
2.3 Theoretical Framework 13
2.3.1 Technology Acceptance Model (TAM) 13
2.3.2 Diffusion of Innovations Theory 13
2.3.3 Unified Theory of Acceptance and Use of Technology (UTAUT) 13
2.3.4 Institutional Theory 13
2.3.5 Trust Theory 14
2.3.6 Digital Divide Theory 14
2.4 Problems Associated with EPS Utilization 14
2.5 Prospects for the Challenges Affecting EPS 15
vii
2.6 Empirical Studies 16
CHAPTER THREE: SYSTEM DESIGN AND METHODOLOGY 18
3.1 Methodology Adopted 18
3.1.1 Problem Identification Using OOADM 19
3.2 Analysis of the Existing System 20
3.2.1 Dataflow of the Existing System 21
3.2.2 Disadvantages of the Existing System 21
3.2.3 Weakness of the Existing System 22
3.3 Feasibility Study 22
3.3.1 Technical Feasibility 22
3.3.2 Operational Feasibility 23
3.3.3 Economic Feasibility 23
3.4 Analysis of the Proposed System 23
3.4.1 Data Flow Diagram of the Proposed System 24
3.4.2 Advantages of the Proposed System 24
3.4.3 Justification of the Proposed System 25
3.5 Functional Requirements 25
3.5.1 Use Case Diagram of the Admin / User Privileges 26
3.6 Data Requirements 27
3.7 High-Level Model of the Proposed System 28
3.8 Objectives of the Design 29
3.9 Cohesion and Decomposition High level Model 30
3.10 Control Center / Overall Dataflow Diagram 31
3.10.1 Proposed System Operation Flowchart 32
3.11 System Specification and Design 36
3.11.1 Input and Output Specification 36
3.11.2 Database Specification and Design 37
3.11.3 Data Dictionary 38
CHAPTER FOUR: IMPLEMENTATION AND RESULT 39
4.1 Choice and Justification of Programming Language 39
4.2 Program Documentation 40
4.3 Implementation Techniques 41
4.3.1 System Testing 43
viii
4.4 Programming Module Specification 43
4.4.1 Installation 44
4.4.3 System Architecture 46
4.5 Computer Hardware Minimum Requirement 46
4.6 Software Requirement 47
4.7 Personnel / User Training 47
4.8 File Maintenance Module 47
4.9 Discussion of Findings 49
CHAPTER FIVE: SUMMARY, CONCLUSION AND RECOMMENDATION 51
5.1 Introduction 51
5.2 Summary 51
5.3 Conclusion 52
5.4 Recommendation 53
REFERENCES 55
APPENDIX A: SOURCE CODE 61
APPENDIX B: OBJECT PROGRAM 83
ix
ABSTRACT
An Electronic Payment System (EPS) refers to a digital infrastructure enabling the transfer of
money electronically for the purchase of goods and services. The aim of the study is to design
and implement a Electronic Payment System using First Bank Plc Enugu as a case study. In
achieving this aim, the following specific objectives were laid out as follows to develop an
application software that will create an intuitive and accessible user interface for the
Electronic Payment System. The motivation that led to the implementation of the proposed
system is that there is increasing prevalence of cyber attacks and fraud poses significant risks
to the security of electronic payment systems. Electronic Payment System (EPS) are
attractive targets for cyber criminals due to the high value of financial data they handle. Other
motivation issues are outline at the statement of problems section. The methodology adopted
in this study is the object oriented analysis and design methodology (OOADM) which is a
technical approach for analyzing and designing an application or system by applying object
throughout the software development process. The programming language used is HTML,
CSS, JAVASCRIPT, PHP, SQL and JQUERY. The reason why web programming languages
was used is because, it is platform independent and it is a web based application. The
implementation of the proposed system will enable broader access to financial services for
Payment System that will enable iterative improvements and refinements to the electronic
x
CHAPTER ONE
INTRODUCTION
1.1 Introduction
Introduction
1
DPS has significantly impacted the economy by simplifying transactions and
cutting the costs associated with cash handling. It also promotes financial
inclusion, especially in underserved regions, through platforms like M-Pesa in
Kenya (Laudon et al., 2020). Additionally, it has enabled businesses to reach a
broader, global customer base (Wang et al., 2016).
Despite the widespread adoption of DPS, several challenges persist. One major
concern is the increasing vulnerability of these systems to cyberattacks.
Fraudsters target digital platforms due to the sensitive nature of financial data.
Common risks include phishing, identity theft, and malware attacks (Aloul,
2010; Narayanan et al., 2016).
Another issue is the poor compatibility between various digital systems and
existing banking infrastructure, which often results in higher transaction costs
and limited adoption rates (Turban et al., 2015; Rescorla, 2001).
Additionally, the demand for users’ personal and financial data raises
significant concerns about privacy and data protection. Unauthorized access or
sharing of user data remains a critical issue that must be addressed (Wang et
al., 2016).
2
The primary aim of this research is to develop and implement a secure and
efficient Electronic Payment System for Zenith Bank Plc UNIBEN. The
specific objectives are to:
For Consumers:
3
CHAPTER TWO
LITERATURE REVIEW
2.1 Introduction
Digital Payment Systems are platforms that enable secure, cashless financial
transactions. These systems use a variety of tools and technologies to
streamline payments and enhance accessibility (Pereira et al., 2020). From the
introduction of credit cards to today’s mobile apps, DPS have continuously
adapted to meet changing consumer needs and technological progress
(Khanna, 2019).
4
4. Digital Wallets: Applications that store card information securely for
both online and in-person transactions (Yang & Choi, 2020).
5. Blockchain-Based Payments: Cryptocurrencies allow for decentralized
transactions without intermediary banks (Swan, 2019).
5
CHAPTER THREE
3.1 Methodology
The development process for this project follows the Object-Oriented Analysis
and Design Methodology (OOADM), which uses object-oriented principles to
model software systems throughout the development life cycle. It allows for
iterative enhancements and fosters effective communication among
stakeholders.
Analysis of the current system at Zenith Bank Plc UNIBEN identified key
shortcomings such as vulnerability to cyberattacks and limited data
integration. These limitations necessitate the development of a more secure,
interoperable, and user-centric electronic payment system.
6
Input Specification: Describes the nature and format of data entered into
the system, including fields, validation checks, and data types.
Output Specification: Outlines the expected outputs, which may be
physical (e.g., printed receipts) or digital reports.
ELECTRONIC PAYMENT
SYSTEM
Process Analysis
Fill Registration Produce Result
Form
Process Request
Opening Account Generate Report
7
1. Slow and error-prone manual data processing.
LOGIN ACCOUNT
Found / Not Found Login Details
Success / Failure
Success / Failure
Sends Details
Registration Details
REGISTER
The following are the advantages of the proposed Electronic Payment System;
a) Convenience: Allows payments anytime and anywhere, reducing the need for
financial information.
8
d) Accessibility: Promotes financial inclusion by providing banking services to
underserved populations.
EPS enable quick, convenient transactions without the need for physical cash. They offer
faster processing times, advanced security measures, cost reductions, and facilitation of
international transactions. They also provide detailed transaction records and can integrate
with other digital services, promoting innovation and enhancing user experience.
based transactions.
MySQL Database were used in developing the seaport billing software. These languages are
compatible with several operating systems, are object-oriented, and combine features of PHP
The following figure 3.4 shows the various modules involved in the system and available to
users who have limited access and to the Admin who have full access to the system.
9
3.5.1 Use Case Diagram of the Admin / User Privileges
Update Payment
Record
Insert/Delete
Record
Activate Account
ADMIN
Input Username
Input Password
END-USER
Open Account
10
3.6 Data Requirements
The following are the data requirements of new and existing users in the system. New users
must provide the following information during account creation such as:
a) Email Address: The user's email address is required during registration and subsequent
b) Password: The user is required to enter a secured password or pin during registration
c) User Name: The user is required to enter a nickname which he/she will be addressed as
d) Passport: This field contains the photograph or picture of the account holder or system
user.
11
3.7 High-Level Model of the Proposed System
Update Record
Open Account
Insert/Delete Record
Input Bio-Data
Activate Account
Give Feedback
12
3.8 Objectives of the Design
The objectives of the proposed Electronic Payment System (EPS) design are as follows:
1. Integrate the EPS with existing financial infrastructures and payment gateways,
4. Create an intuitive and accessible user interface for the Electronic Payment System.
developers and researchers to understand and build upon the work conducted.
13
3.9 Cohesion and Decomposition High level Model
Admin
Client (User)
Open Account Input Bio-Data Input Username & Send and Receive Give Feedback
Payment
Password
14
3.10 Control Center / Overall Dataflow Diagram
ELECTRONIC
PAYMENT
SYSTEM
Input from
keyboard
Process
Result to
Disk
Report (output) screen
storage
15
3.10.1 Proposed System Operation Flowchart
Description: The diagram below details the proposed system operation flowchart.
Start
Yes
16
Start
SAVE TO
DATABASE
YES
CONTINUE?
NO
End
17
Start
SAVE TO
DATABASE
YES
CONTINUE?
NO
End
18
Start
Enter User ID
Validate User ID
Input Phone
Number
Input Payment
Information
NO Display
Are answers
Error
correct? message
YES
Send Request
Save
Stop
19
3.11 System Specification and Design
Description: The diagram below details the Input and Output Specification of the proposed
system.
Customer ID:
Password:
Enter Password
Login Successful
Or
Login Unsuccessful
20
CHAPTER FOUR
The decision to use these tools was based on their wide adoption in web development, ease of
learning, support for object-oriented programming (OOP), and strong community support.
The languages are platform-independent and offer secure environments for developing and
deploying robust web applications.
Program documentation is vital for describing system design and providing a guide for future
maintenance and upgrades. The documentation for this project includes:
21
A README file containing a summary of the project, installation instructions, and
usage guidelines.
Properly commented code following established programming conventions such as
naming styles, modular design, and file organization.
Version control logs noting major code changes and improvements.
1. Coding
2. File Conversion
The new system requires the conversion of old master files into formats compatible with the
new software. This step involves transforming data and integrating it into the new database
schema.
3. Changeover Procedures
Transitioning from the old system to the new one involved different changeover methods:
Parallel Changeover: Both systems run simultaneously until the new one is
confirmed stable.
Direct Changeover: The old system is completely replaced by the new one at a
specific time.
Phased Changeover: The new system is deployed gradually, department by
department.
4. Commissioning
Commissioning ensures the system is tested, functions correctly, and aligns with the original
design specifications before it becomes fully operational.
22
The system was tested in a controlled lab environment. Test cases included:
This section focuses on evaluating the system post-implementation and ensuring all
objectives are met through continuous monitoring and maintenance.
Types of Maintenance:
Corrective Maintenance: Fixes coding errors and bugs after deployment.
Adaptive Maintenance: Updates system components to accommodate changes such
as new database structures or system environments.
Preventive Maintenance: Enhances performance and minimizes the risk of future
issues.
1. Insert and open the CD or USB flash drive containing the system.
2. Copy the electronic-payment-system folder to the XAMPP server directory:
C:\XAMPP\htdocs\
3. Start Apache and MySQL using the XAMPP Control Panel.
4. Open a web browser (e.g., Chrome, Firefox).
5. Go to localhost/phpmyadmin/
6. Set username as root and password as empty, then click Go.
7. Click Import, browse to locate eps.sql from the directory:
C:\XAMPP\htdocs\electronic-payment-system\db\eps.sql
8. Click Go to import the database.
9. Access the software by typing in the address bar:
http://127.0.0.1/electronic-payment-system/
10. The system is now ready to use.
23
The security design specification is an authentication system that required a valid password to
be input before using the proposed system. Below is a diagram of the Security Design
Specification:
Start
Is
Yes No
Login = Valid
?
Stop
A system architecture or systems architecture is the conceptual model that defines the
description and representation of a system, organized in a way that supports reasoning about
the structures and behaviors of the system. A system architecture can consist of system
24
components and the sub-systems developed, that will work together to implement the overall
Back End
Front End Sends Data
Packer
Server
Receives Data
Packer
Database
The software designed requires the following hardware for effective operation of the newly
designed system:
25
CHAPTER FIVE
5.1 Introduction
This study focused on the design and implementation of an electronic payment system. In the
preceding chapter, the relevant data collected were presented, critically analyzed, and
appropriately interpreted. This chapter offers recommendations that, in the opinion of the
5.2 Summary
An Electronic Payment System (EPS) is a digital infrastructure that enables the transfer of
money electronically for the purchase of goods and services. It includes various technologies
and methods, such as online banking, credit and debit card transactions, e-wallets, and mobile
payment solutions. EPS has revolutionized commerce by providing a convenient, secure, and
efficient means of transaction, reducing the reliance on physical cash and traditional banking
methods. Since their inception, EPS has significantly evolved, driven by technological
advancements, changes in consumer behavior, and the growth of e-commerce. Initially rooted
in the development of credit cards in the mid-20th century, EPS now encompasses a wide
variety of electronic and mobile payment solutions catering to different user preferences and
technological capabilities.
5.3 Conclusion
finance, reshaping how individuals and businesses conduct transactions globally. Empirical
research highlights the widespread adoption of EPS driven by convenience, efficiency, and
regulatory complexities, and disparities in digital access require ongoing attention. Studies
26
emphasize the critical role of user acceptance, supported by factors like perceived usefulness
and ease of use, in driving EPS adoption. Security remains paramount, with ongoing
enhancing user trust. Regulatory frameworks play a pivotal role in shaping EPS development,
Looking ahead, EPS are poised for further evolution with emerging technologies like
blockchain, AI, and IoT promising enhanced security, efficiency, and user experience.
will be essential in maximizing the benefits of EPS while addressing emerging challenges in
In essence, EPS represent not only a technological advancement but also a catalyst for
broader economic inclusion and efficiency in the global financial ecosystem. As these
systems continue to evolve, their impact on commerce, consumer behavior, and regulatory
5.4 Recommendation
to safeguard transactions and protect user data from evolving cyber threats.
27
2. Simplify User Experience: EPS interfaces should prioritize intuitive design and
seamless integration across devices to enhance user convenience and encourage broader
3. Promote Financial Literacy: Initiatives to educate consumers and businesses about the
benefits, risks, and responsible use of EPS can foster greater trust and confidence in
among different EPS platforms and financial institutions can reduce transaction costs,
28
REFERENCES
Case Study of the University of Benin. Journal of African Education, 23(4), 45-60.
Ajayi, K. (2019). Financial Services and Student Satisfaction: An Analysis of Zenith Bank's
Eze, C. (2020). Enhancing Campus Financial Inclusion through Digital Banking: Zenith
Igbinovia, M. (2021). Zenith Bank and University of Benin Partnership: Impact on Student
Financial Literacy. West African Journal of Banking and Finance, 12(3), 102-118.
Initiatives at the University of Benin. African Journal of Business Ethics, 9(1), 78-89.
Okon, E. (2019). The Impact of Zenith Bank on the Financial Management of University of
Osagie, P. (2018). Zenith Bank and Higher Education Financing: A Study of UNIBEN's
Uwaifo, J. (2020). Analyzing the Efficiency of Zenith Bank Branch Operations within
Abidi, S.A.H. (1991). Information and Communication for Development in Africa. Nairobi.
29
APPENDIX A
SOURCE CODE
#Login Page
30
.login-page{
height:100% !important;
}
.login-title{
text-shadow: 4px 4px black
}
img#cimg{
height: 15vh;
width: 15vh;
object-fit: cover;
border-radius: 100% 100%;
}
</style>
<h1 class="text-center py-5 login-title"><b><?php echo $_settings->info('name')
?></b></h1>
<div class="login-box">
<div class="card card-primary card-outline card-tabs bg-dark-gradient">
<div class="card-header p-0 pt-1 border-bottom-0">
<ul class="nav nav-tabs" id="CTab" role="tablist">
<li class="nav-item">
<a class="nav-link active" id="login-tab" data-toggle="pill" href="#login" role="tab"
aria-controls="login" aria-selected="false">Login</a>
</li>
<li class="nav-item">
<a class="nav-link" id="signup-tab" data-toggle="pill" href="#signup" role="tab"
aria-controls="signup" aria-selected="true">Sign Up</a>
</li>
</ul>
</div>
<div class="card-body">
<div class="tab-content" id="CTabContent">
<div class="tab-pane fade active show" id="login" role="tabpanel" aria-
labelledby="login-tab">
31
<div class="input-group-text">
<span class="fas fa-lock"></span>
</div>
</div>
</div>
<div class="row">
<div class="col-8">
</div>
<!-- /.col -->
<div class="col-4">
<button type="submit" class="btn btn-primary btn-block">Login</button>
</div>
<!-- /.col -->
</div>
</form>
</div>
<div class="tab-pane fade" id="signup" role="tabpanel" aria-labelledby="custom-
tabs-three-profile-tab">
<form action="" id="user-register">
<input type="hidden" name="id">
<input type="hidden" name="type" value="2">
<div class="row">
<div class="col-md-6">
<div class="form-group">
<label for="firstname" class="control-label text-info">First
Name</label>
<input type="text" autofocus class="form-control form-control-border"
id="firstname" name="firstname" required>
</div>
<div class="form-group">
<label for="middlename" class="control-label text-info">Middle
Name</label>
<input type="text" class="form-control form-control-border"
id="middlename" name="middlename" placeholder="optional">
</div>
<div class="form-group">
<label for="lastname" class="control-label text-info">Last Name</label>
<input type="text" class="form-control form-control-border"
id="lastname" name="lastname" required>
</div>
<div class="form-group">
<label for="gender" class="control-label text-info">Gender</label>
<select class="form-control form-control-border" id="gender"
name="gender" required>
<option>Male</option>
<option>Female</option>
</select>
</div>
32
<div class="form-group">
<label for="dob" class="control-label text-info">Date of Birt</label>
<input type="date" class="form-control form-control-border" id="dob"
name="dob" required>
</div>
<div class="form-group">
<label for="contact" class="control-label text-info">Contact #</label>
<input type="text" class="form-control form-control-border"
id="contact" name="contact" required>
</div>
</div>
<div class="col-md-6">
<div class="form-group">
<label for="address" class="control-label text-info">Address</label>
<textarea rows="1" class="form-control form-control-border"
id="address" name="address" required></textarea>
</div>
<div class="form-group">
<label for="username" class="control-label text-info">Email</label>
<input type="email" class="form-control form-control-border"
id="username" name="username" required>
</div>
<div class="form-group">
<label for="password" class="control-label text-info">Password</label>
<input type="password" class="form-control form-control-border"
id="password" name="password" required>
</div>
<div class="form-group">
<label for="cpassword" class="control-label text-info">Confirm
Password</label>
<input type="password" class="form-control form-control-border"
id="cpassword" required>
</div>
<div class="form-group">
<label for="" class="control-label">Avatar</label>
<div class="custom-file">
<input type="file" class="custom-file-input rounded-circle"
id="customFile" name="img" onchange="displayImg(this,$(this))">
<label class="custom-file-label" for="customFile">Choose file</label>
</div>
</div>
<div class="form-group d-flex justify-content-center">
<img src="<?php echo validate_image(isset($meta['avatar']) ?
$meta['avatar'] :'') ?>" alt="" id="cimg" class="img-fluid img-thumbnail">
</div>
</div>
</div>
33
<hr class="bg-light">
<div class="row">
<div class="col-md-12 text-center">
<button type="submit" class="btn btn-primary btn-lg rounded-pill w-
50">Register</button>
</div>
</div>
</form>
</div>
</div>
</div>
<!-- /.card -->
</div>
</div>
<!-- /.login-box -->
<script>
function displayImg(input,_this) {
if (input.files && input.files[0]) {
var reader = new FileReader();
reader.onload = function (e) {
$('#cimg').attr('src', e.target.result);
}
reader.readAsDataURL(input.files[0]);
}
}
$(document).ready(function(){
end_loader();
$('#CTab .nav-link').click(function(){
if($(this).attr('aria-controls') == 'signup'){
$('.login-box').addClass('w-75')
}else{
$('.login-box').removeClass('w-75')
}
})
$('#ulogin-frm').submit(function(e){
e.preventDefault()
$('.pop_msg').remove()
start_loader()
34
var _this = $(this)
var el = $('<div>')
el.addClass('pop_msg alert')
el.hide()
$.ajax({
url:_base_url_+'classes/Login.php?f=login_user',
method:'POST',
data:$(this).serialize(),
error:err=>{
el.addClass('alert-danger')
el.text('An Error occured')
_this.prepend(el)
el.show('slow')
$('html,body').animate({scrollTop:0},'fast')
},
success:function(resp){
if(resp){
resp = JSON.parse(resp)
if(resp.status == 'success'){
location.replace(_base_url_);
}else if(resp.status == 'incorrect'){
el.addClass('alert-danger')
el.html("<i class='fa fa-exclamation-triangle'></i> Incorrect username or
password");
_this.prepend(el)
el.show('slow')
$('html,body').animate({scrollTop:0},'fast')
_this.find('input').addClass('is-invalid')
_this.find('[name="username"]').focus()
}
end_loader()
}
}
})
})
35
APPENDIX B
OBJECT PROGRAM
36
Transaction Form Modal Step 1
37
Transaction Details Modal
38
Admin Panel
39
40