📋 User Manual · v4.9.0

MEIMOSI
Sports System

MeiMosi Sports — Mei Mosi Taifa 2026.Web App for tournaments: organisations, payments, teams, players, verification, matches, and results. This guide matches application version 4.9.0APP_VERSION.

Organisations Tournament Staff Players Referees
🌐 Open Live System ↗
01

What Is This System?

MeiMosi Sports (Mei Mosi Taifa 2026) is a web application for managing sports tournaments for Tanzanian ministries, institutions, and partners. It covers organisation registration, payments, teams, players (including self-registration and verification), match scheduling, referee tools, and results.

🏢
Organisations

Ministries, agencies, and companies register, pay fees, enter teams and players.

email login
📅
Tournament Mgmt

Schedule matches, assign referees, and record results across all sports.

email login
Players

View your team, fixtures, profile, and messages in the Player Portal.

player ID login
🏁
Referees

Manage assigned matches, record live results, update match state.

email login
⚠️
Two Separate Login Systems There is a Staff Dashboard (email + password) and a Player Portal (player ID + password). These are not the same account.
02

You Are Not Registered Yet

Public Home Page

Opening the main site URL without logging in shows the public landing page: tournament info, statistics, and links. If already logged in as staff you go to the dashboard; if logged in as player, the player portal.

Who Does What Next?
If you are…Your first step
Representative of a new organisation not yet in system Use organisation self-registration — see Section 3 below.
Staff (committee, referee, etc.) with an admin-created account Use staff login with the email + password you were given — Section 4 (Signing in).
A player who must register alone Use player self-registration, then wait for approval — Section 9 (Player Portal).
A player added by your organisation Wait for your MEIMOSI player number and password (often by email), then use player login — Section 4 (Signing in, Player tab).
03

Organisation Registration

This flow is for a new organisation not yet in the database. It creates both the organisation record and the first manager account.

1
Open the Registration Form

From the public site, follow the link for organisation registration — usually at /home/register.

2
Fill in Organisation Details

Name, type, abbreviation, organisation email, phone, address. The contact person's email must not already exist in the system.

3
Set Contact Person + Password

This person becomes the Organisation Administrator. Password must be at least 8 characters; confirmation must match exactly.

4
Submit — System Creates Records

Organisation (status: pending), user account (role: Org Admin), payment record with reference and amount. A welcome email is sent when outbound email is configured on the server.

5
Sign In & Upload Payment Receipt

Go to /auth/login → Staff tab → sign in → open Payment → upload bank receipt using your payment reference.

6
Wait for Secretary → Chair Approval

Once your organisation is active and payment is approved, you can add teams and players.

04

Signing In

Open /auth/login — you will see two tabs. Use the correct one for your role.

🚫
Do Not Mix Tabs Never enter provide your Login Details to Anyone either a staff or Player. Players can be registered only by the organization representative declared during Organization registration or He/she can register alone on sajili mwenyewe.

Quick URL reference:

🔗/auth/login 🔗/auth/forgot 🔗/home/register 🔗/playerportal/signup 🔗/playerportal/dashboard 🔗/settings
05

Organisation Administrator

You are an Org Admin if your account is tied to your organisation and you see your organisation's teams and players in the sidebar menu.

Dashboard

Shows organisation status, payment progress, bank details (when configured), teams, and players. Teams and players can only be registered when the system allows — usually organisation is active and payment approved.

Payment — /payments
📄
Upload Receipt
Org Admin
🔍
Secretary Review
Secretary
Chair Approval
Chair
🟢
Account Active
System
Teams — /teams

Create teams (tournament, sport, gender, name). Open a team to see the roster. Configure formation, jersey colours, starting lineup, substitutes, captain. When rules are met, submit the squad ("Wasilisha") for competition.

📢
Message Your Entire Team From a team's page, use "Tuma Ujumbe kwa Wachezaji Wote wa Timu" to broadcast a message. Every player on that team's active roster gets their own copy in the portal, plus an email if one is on file.
Players — /players

Add players (name, email, NIDA, team, photo, etc.). The system generates a MEIMOSI player ID and temporary portal password and can email them. Use filters such as Mapitio (self-registration and resubmissions) and Jisajili wapya (pending self-registrations only) to process the queue faster.

Editing an existing player: You can always change team, jersey number, and position. Full name and photo are read-only unless the super admin has turned on “Msimamizi wa Taasisi: Hariri Jina na Picha ya Mchezaji” in /settings — then those two fields appear on the edit form for your organisation’s players only. NIDA, email, date of birth, and other identity data remain editable by the super administrator only.

Review self-registered players and choose:

Approve Request Revision Ban (Hard Reject)
07

Secretary, Chair & Verifier

Secretary and Chair are the approval gatekeepers for organisation payments. They see the staff dashboard and menu items for organisations, payments, teams, players, and reports (as configured). The Data Verifier is a separate staff role for the player identity / data verification queue: they use Kagua wachezaji and a read-only Players list to work through submissions without payment powers.

📝
Secretary

Reviews uploaded payment receipts. Moves payments through the Secretary step of the approval workflow. First verifier in the chain.

step 2 of 4
🪑
Chair

Performs the Chair approval after the Secretary has reviewed. Final authority before an organisation becomes active.

step 3 of 4
🔍
Data Verifier

Staff account with access to the verification queue and read-only player directory (filter by organisation). Does not approve payments or change tournament configuration.

verification
ℹ️
Progress Tracking The organisation's Payment page shows a step-by-step progress diagram so both the org and approvers can see exactly where things stand in the workflow.
08

Referee

After signing in with a staff email, referees see a focused menu — only matches assigned to them.

Sign in via Staff Tab

Use your email and password at /auth/loginMsimamizi / Afisa.

View Your Match Assignments

Dashboard and My Matches menu shows scheduled, live, and recent completed matches assigned to you.

Record Results

Use match screens to manage match state and record results as the tournament process defines.

09

Player Portal

Registering Yourself (Self-Registration)

Go to /auth/login → tab Mchezaji → click "Sajili Mwenyewe", or go directly to /playerportal/signup. Complete all required fields: personal data, NIDA, insurance, organisation, team, gender, photo, password.

Pending After Submission Your account is often pending until an Organisation Administrator reviews and approves your registration. You can log in but will see a waiting screen.
Player Account Statuses
Pending — Under review Active — Full access Revision — Fix & resubmit Rejected — Cannot login
What Active Players Can Do
Portal SectionWhat it does
DashboardTeam info, squad view, upcoming matches. Switch between teams if multi-team is enabled (?t=team_id)
Hariri TaarifaUpdate phone, jersey number, position, photo. Change password (current password required)
UjumbeMessages from administrators. Opening one marks it as read. Check this — not just email
10

Messages from Administrators

👤 Individual Message
Sent from the player profile page by an authorised admin
Stored as one message row in the database
Emailed to the player if they have a valid email address
Visible in the player's Ujumbe section
👥 Whole Team Message
Sent from the team page by an authorised admin
System loops every active player on that team's roster
Each player gets their own copy in Ujumbe + email
Includes players linked via multi-team assignments
📬
Always Check Ujumbe Always check Ujumbe in the Player Portal for official communication — not only email. If the server's SMTP is not configured, the portal message will still be stored even if the email fails.
11

Passwords & Problems

Staff forgot their password

On /auth/login, click "Umesahau nywila yako?" → go to /auth/forgot. Enter your email; use the OTP sent to your email on the reset page. OTP expires — act quickly and follow on-screen instructions.

Player forgot their password

There is no self-service reset on the login page in the standard flow. Contact your Organisation Administrator or use the support channels your tournament provides. You can also change it while logged in under Hariri Taarifa if you still know the current password.

Cannot log in as player — "wrong password" or blocked

Check your player ID spelling — ensure Caps Lock is off for the password. If your account is rejected or inactive, the system blocks login — contact your organisation directly.

Organisation cannot add teams

Check Payment status and whether the organisation is active. If payment is still pending, complete the upload and wait for approvals. A super admin may enable bypass in rare cases.

Email never arrives

Check your spam/junk folder. The wrong email may be on file. Or the server's SMTP may not be configured — but the portal message (Ujumbe) may still be present even if email fails.

12

Menu by Role

After staff login, the sidebar varies by role. Players use a separate portal menu entirely.

↳ Arch

System Architecture

Two Parallel Worlds
🧑‍💼 Staff World
Email + password login
Stored in the users table
Authentication guards all the pages
Role-based sidebar and permissions
Super Admin, Org Admin, Secretary, Chair, Referee, Data Verifier
⚽ Player World
Player ID + password login
Stored in the players table
Player Authentication guards portal pages
PlayerportalController views only
No staff sidebar — separate portal menu
High-Level Order of Operations
1
Tournament Backbone Exists

Super admin maintains tournaments, sports, venues, and global configuration. Nothing can be registered without this.

2
Organisation Joins

Organisation is registered and linked to the tournament via a registration record.

3
Payment Gate (or Bypass)

Org uploads proof; Secretary → Chair approval chain. bypass_payment_registration in Settings skips this if enabled by super admin.

4
Teams Created

Org admin creates teams: sport, gender, name. Rules prevent duplicate teams per sport/gender/org/tournament.

5
Squad Configuration

Formation, colours, starting lineup, substitutes, captain. When rules are satisfied the squad is submitted ("Wasilisha") — flagging it ready for competition.

6
Players Added (Two Paths)

Admin adds: form → system generates player_id + password + email. Self-register: player uses portal signup → pending → org admin approves / revises / bans.

7
Multi-Team (Optional)

If allow_multi_team_registration is on, the same player record can link to extra teams via player_team_assignments. Primary team stays on players.team_id.

8
Matches & Results

Super admin / match workflow creates matches, assigns referees, enters results. Published matches feed public/landing views.

📧
Email is Best-Effort If SMTP fails, many flows still save data to the database and inform the user via flash messages. The portal (Ujumbe) is the reliable source of truth for in-app messages.
Designed & Developed by
SM
Samwel Mmari
Software Developer · Afritis TZ
linkedin.com/in/samwel-mmari
System
MEIMOSI Sports
Powered by
Afritis TZ
MeiMosi Sports — User manual & architecture · v4.9.0  ·  Live: michezomeimosi.or.tz ↗  ·  Keep in sync with APP_VERSION in config/constants.php © Samwel Mmari · Afritis TZ