0% found this document useful (0 votes)
22 views21 pages

Ekubify: Digital Group Savings Solution

Ekubify is a web application designed to modernize the traditional Ethiopian Ekub savings system by providing a digital platform for managing group savings, enhancing transparency, and automating contributions. Key features include real-time tracking of payments, random assignment of lotted months, and secure payment integration with Chapa. Future improvements aim to enhance security, scalability, and user engagement through advanced analytics and community features.

Uploaded by

kidusm760
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
22 views21 pages

Ekubify: Digital Group Savings Solution

Ekubify is a web application designed to modernize the traditional Ethiopian Ekub savings system by providing a digital platform for managing group savings, enhancing transparency, and automating contributions. Key features include real-time tracking of payments, random assignment of lotted months, and secure payment integration with Chapa. Future improvements aim to enhance security, scalability, and user engagement through advanced analytics and community features.

Uploaded by

kidusm760
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd

EKUBIF

Y SHOWCASE
INTRODUCTION
1 2 FEATURES AND
FUNCTIONALITIES
CONTENTS

3 4

DEMONSTRATION OF
CHALLENGES FACED AND
HOW THE CODE WORKS
FUTURE IMPROVEMENTS
INTRODUCTION

INSPIRATION

Ekubify is a web application inspired by the


traditional Ethiopian Ekub system.
PROBLEM STATEMENT

Manual management of group


savings is tedious and error-prone.

Lack of transparency in
fund collection and
distribution.

Difficulty in tracking
contributions and lotted
months.
SOLUTION PROVIDED BY EKUBIFY

Digital platform for


organizing and managing
group savings.
01 Real-time tracking of
contributions and
payments.
02
03
04
Automatic assignment
of lotted months for
fairness.
GOAL OF THE PROJECT

To simplify the
management of Ekub
groups. To increase trust and
AUTOMATION
TRUST transparency among
members.
CORE FEATUERS

User Registration and ○ Create and Manage Ekub


Authentication: Groups:
• Custom user model using Django's • Admin users can create and
Abstract User. manage Ekub groups.
• Fields: Username, Full Name, • Each group has a unique name,
Phone Number, Password. duration (in months), and
• Secure login and registration monthly contribution amount.
system.
ADVANCED FEATURES

○ Assign Lotted Months Randomly:


■ Using the [Link]() method for fairness.
■ Each member is assigned a lotted month once the Ekub
starts

○ Track Contributions and Payments:


■ Contributions are tracked monthly.
■ Total contributions and payment history are stored for
each member.
ADVANCED FEATURES

○ Dynamic Status Updates:


■ open: Accepting members.
■ ongoing: Contributions in progress.
■ closed: All members have received their turn.

Payment Integration with Chapa:


■ Secure and reliable payment processing.
■ Members can pay their monthly contributions using
Chapa
BACKEND TECHNOLOGIES

Chapa Payment Gateway:


• Secure payment processing
and contribution tracking.
• Real-time payment status
Django (Python Framework): updates with webhooks.
• Backend development with Soft UI Dashboard Template:
models, views, and forms. • Used as the base template
• Custom User model for for admin interface and
authentication and user dashboards.
management. • Enhanced UX with pre-
• Django ORM for database designed UI components
interactions
CHALLENGES FACED
CHALLENGES

Development Hurdles
Understanding One-to-One and ForeignKey Relationships:
Confusion about OneToOneField vs ForeignKey.
Solution: Detailed study and practical implementation
of both relationships.

TECHNICAL CHALLENGES
Model to database connection
Challenge: Making [Link] interact with the database.
Solution: Step-by-step By researching the terminal codes
to connect [Link] interact with the database .
Beginner-Level Learning Curve:
● Challenge: Learning Django, and payment integration
as a complete beginner.
● Solution: Breaking down tasks into smaller parts and
learning step by step.
Future Improvements
PART 04
Advanced Reporting and Analytics:

Detailed reports on contributions, payment


history, and group performance.
Data visualization using charts and graphs.
Improved Security
and Data Privacy

Implementing two-factor
authentication (2FA).
Ensuring data encryption and
secure payment processing.

Scalable Architecture:

● Refactoring the application to support more users and Ekub groups.


● Implementing microservices architecture for better scalability.
Gamification for User
Engagement:

Introducing gamification elements


like badges and rewards.
Leader boards for most active
members.
Achievement milestones to
encourage consistent participation.
SOCIAL AND COMMUNITY FEATURES:

Enabling social sharing of Ekub


participation for better engagement.
Allowing members to leave feedback or
reviews.
Community forums for members to discuss
and share experiences.
INTEGRATION WITH POPULAR
PAYMENT PLATFORMS:

● Adding support for additional payment gateways like


telebirr, banks.
● Allowing members to choose their preferred payment
method.
DEMONSTRATION OF HOW THE CODE WORKS

Data Models and Relationship

Member Model:
• Links users to specific Ekub CustomUser Model:
Extends Django's AbstractUser
groups.
• Tracks total contributions, lotted to include fullname and
phonenumber.
month, and if they have received
Ensures unique usernames
their turn.
• Uses OneToOneField to ensure a and secure password storage.
user can join only one Ekub at a
time. Ekub Model:
Represents an Ekub group with
Payment Model: fields like duration_months,
Stores payment contribution_per_month,
records for each status.
member. Linked to CustomUser using
Tracks payment status ForeignKey to track the admin
(pending, successful, who created it.
failed) and
transaction reference.
DEMO: BUSINESS LOGIC AND METHODS

DYNAMIC CALCULATIONS Random Assignment of Lotted


WITH PROPERTIES: Months:
Using start_ekub() method to shuffle members and
REGISTRATION_LIMIT: Dynamically assign months.
calculates the total required Ensures fairness by randomizing the order.
amount to start the Ekub.

Status Updates:
update_status() method to automatically change status:
From open to ongoing when registration limit is
met.
From ongoing to closed when all members receive
their turn.

You might also like