Rovify guide / Getting started
Rovify testing and navigation guide
Rovify is the sports registry for Rwanda: federations, leagues, schools and clubs, athletes, agents, tournament organisers, the Ministry and the platform operator all work on one shared record. Every result, transfer, sanction and payment moves through named states and is signed on a timeline. This guide takes a tester through each of the eight roles, screen by screen, then hands over a checklist of test cases.
https://rovify.afrikabal.orghttps://rovify.afrikabal.org/personasdemoSigning in
- Open /personas in Chrome, Edge or Safari. A wide window (1280px or more) shows the full sidebar.
- Pick a card. Each card names the person, their organisation and four journeys they can run.
- Press Enter on the card. You are signed in and land on that role's home screen. No password needed from the picker.
- To switch role, open the account menu at the bottom of the sidebar, press Sign out, and pick another card.
- To sign in by hand instead, use the email in the table below with password
demo.
Good to know
The data is a shared demo dataset. Changes you make (approving, verifying, paying) are visible to every tester. If a record you expect has already moved on, pick the next one in the list rather than reporting a defect.
Test accounts by role
| Role | Who this is | Account | Lands on |
|---|---|---|---|
| Federation | Rwanda Football Federation, registrar and compliance desk | rovify.federation@yopmail.com | /federation |
| League | Rwanda University League, league director (David LeagueDirector) | rovify.league@yopmail.com | /league |
| Institution | University of Rwanda, College of Science, club director (John Director) | rovify.institution@yopmail.com | /institution |
| Athlete | Kevin Striker, striker at University of Rwanda | rovify.athlete@yopmail.com | /athlete |
| Agency | Marcus Agent Sports (Marcus Agent) | rovify.agency@yopmail.com | /agency |
| Tournament | Grace Organizer Events | rovify.tournament@yopmail.com | /tournament |
| Ministry | Ministry of Sports, national oversight | rovify.ministry@yopmail.com | /ministry |
| Admin | Rovify platform operator: KYC, money, messaging | rovify.admin@yopmail.com | /admin |
What this guide covers
- Key ideas. Records, states, the timeline and who holds the next move. Read this once.
- Eight role chapters. A menu tour for each role, then two to four walkthroughs with expected results.
- Test cases. Fourteen cases, RV-01 to RV-14, with Pass / Fail / Blocked and notes. Results save in your browser and export to a file.
- Reference. Record types and states.
How to use it
Each role starts with a tour of its menu, then numbered walkthroughs. Every walkthrough ends with an Expected result: if the screen does not match it, log a defect. The Test cases section is the checklist to hand a tester. Mark each case Pass, Fail or Blocked, add what you saw, then press Export results in the sidebar to download the run.
Rovify guide / Getting started
Key ideas before you start
Five ideas explain almost every screen in Rovify.
Records
Anything that can be disputed is a record: a match result, a transfer, a sanction, an eligibility decision, a guardian link, a payment. Each role has a Records item at the top of its menu. /federation/records groups them under Waiting on you, Integrity and disputes, People, Opportunities, Money and Platform.
States and the next move
Every record has a State (for example Submitted, Confirmed, Verified) and a With field naming who must act next. When it is you, the record shows a Your move block with the buttons you are allowed to press. If there is no Your move block, you can read but not act. That is correct, not a bug.
Verified before it counts
A match result does not reach standings, statistics or careers until the league verifies it. Corrections supersede the original, they never overwrite it. The same idea runs through transfers and eligibility.
The timeline
Opening a record shows a Timeline with each step, who did it, when, and a short signature hash, plus a Chain intact marker. Every button you press adds a line there. Checking that line is how you confirm an action really happened.
Fails closed
When data is missing the system blocks rather than guesses. A minor with no guardian link shows eligibility Indeterminate until the link arrives, and a player without medical clearance cannot be picked on a team sheet.
Rovify guide / Federation
Federation: your workspace
The national federation registrar. Approves transfers, licenses clubs, rules on eligibility and settles development compensation. The home screen opens on the institutions that have gone quiet.
Your menu, screen by screen
| Menu item | Route | What you do there |
|---|---|---|
| Records | /federation/records | Everything waiting on the federation, grouped by kind. Start here each session. |
| Institutions | /federation/institutions | Registered clubs and schools with Verified flag. Export CSV. |
| Leagues / Tournaments | /federation/leagues | Competitions under the federation. |
| Athletes | /federation/athletes | National register, filter by gender and eligibility. |
| Transfers | /federation/transfers | Transfer desk: Movements and Windows tabs, the open window banner. |
| Club licensing | /federation/licensing | Licences by status: All, Pending, Expiring, Expired. Document compliance %. |
| KYC | /federation/kyc | Identity checks waiting on the federation. |
| Compliance / Analytics | /federation/compliance | Checklist and charts. |
| Audit trail | /federation/audit | Who did what, newest first. |
| Reports | /federation/reports | Institution report, Athlete registry, Federation overview, League and Tournament summaries as CSV or PDF. |
Rovify guide / Federation · walkthrough 1
Approve a transfer
Move a player between clubs inside the open transfer window.
Steps
- Open /federation/transfers. Check the banner reads
2026/27 mid-season window is open until 31 Oct 2026. - Read the tiles: In portal, In motion, Completed, On loan.
- Stay on the Movements tab and open a movement that is waiting on the federation.
- Read the clubs, the athlete and the reason, then press the approve action.
Expected result
The movement leaves the waiting list and its timeline gains an approval line signed by the federation. The athlete sees the new status under /athlete/transfers.
Watch for
Transfers are only accepted inside an open window. The Windows tab lists the four windows and which is open.
Rovify guide / Federation · walkthrough 2
Grade club licences
Clear a pending club licence and spot lapsed ones.
Steps
- Open /federation/licensing. Tiles show
Active licenses 1 of 3,Awaiting review 1andDocument compliance 67%. - Press the Pending1 tab to see the licence awaiting review.
- Open it and check the Documents column against the four required documents.
- Approve or send it back. Then press Expired1: Rayon Sports FC,
LIC-RW-2026-00003, expired 11 Mar 2026.
Expected result
Approving moves the club to Active and the Pending count drops to 0. Expired licences stay listed until renewed.
Rovify guide / Federation · walkthrough 3
Rule on eligibility
See why a player is blocked and unblock them when the missing data arrives.
Steps
- Open /federation/records/eligibility. The list opens on Needs you.
- Open
ELG-0006, Charlotte Uwase, Rwanda University League 2026. - Read Rule applied:
Minors need an active guardian link; Evidence read:No guardian link on file. State is Indeterminate. - Once the guardian link exists (see Institution walkthrough 3), press Data arrived, recompute.
Expected result
Recompute re-reads the evidence. With a guardian link the state moves to Eligible; without one it stays Indeterminate and the timeline records the recompute either way.
Watch for
Indeterminate is the system failing closed, not an error.
Rovify guide / Federation · walkthrough 4
Settle development compensation
Follow what a buying club owes the club that trained a player.
Steps
- Open /federation/records/compensation and open
DCM-0002, Alex Bizimana. - Check Amount
950,000 RWF, BasisTwo verified seasons at APR academy, category 2 rate, WithPaying club. - Read the timeline: Created, then Acknowledged by John Director.
Expected result
The federation can read the record but has no Your move block: the paying club acts next. Payment is tested from the Institution role.
Rovify guide / League
League: your workspace
The league director runs the season: teams and rosters, fixtures, officials, match day, results and discipline. Nothing a team reports counts until the league verifies it.
Your menu, screen by screen
| Menu item | Route | What you do there |
|---|---|---|
| Records | /league/records | Results, discipline and other records waiting on the league. |
| Seasons | /league/seasons | The 2025-26 season. New seasons via the wizard at /league/seasons/wizard. |
| Rosters | /league/rosters | All / Pending / Approved / Rejected. Approve, Reject, View details. |
| Divisions | /league/divisions | Premier and First. Add division, Bulk create, Manage teams. |
| Teams | /league/teams | Entered, Applications, Withdrawn. Add team, Approve, Decline, Withdraw. |
| Fixtures | /league/fixtures | Generate builds the schedule. Filter by matchweek. |
| Standings / Statistics | /league/standings | Table and player stats (Goals, Assists, Shots, Saves). |
| Match ops | /league/match-ops | Match assignments and officials. Assign opens Assign officials. |
| Match centre / Live scoring | /league/match-centre | Log events, box score, play-by-play under the sport's rules. |
| Results / Match reports | /league/results | Final scores and the officials' reports. |
| Match day sheet | /league/match-day-sheet | Print-friendly fixture sheet per matchday. |
| Import / Activity / Settings | /league/import | Bulk import teams and athletes from a template; activity feed; points system. |
Rovify guide / League · walkthrough 1
Generate fixtures and assign officials
Build the season schedule and staff a match.
Steps
- Open /league/fixtures and press Generate.
- In the dialog pick Format (
Round robinorDouble round robin), a Start date and Matches per week, then confirm. - Open /league/match-ops. The Match assignments tab lists 9 matches.
- Press Assign on a match, choose an Official and Role (
Referee), press Assign official, then Done.
Expected result
Fixtures appear by matchweek. The assigned referee shows against the match in Match ops and on /league/match-day-sheet in place of Referee not assigned.
Rovify guide / League · walkthrough 2
Run match day
Print the sheet and score a match live.
Steps
- Open /league/match-day-sheet. It shows
Matchday 1 · 2 fixturesfor the 2025-26 season. - Check the two fixtures: UR-COS Men's First Team v APR Men's First Team (Sat 20 Sept, 15:00, Amahoro National Stadium) and RSF v RYSA (Sun 21 Sept, 18:00, Rubavu Sports Complex). Press Print.
- Open /league/match-centre, pick the sport tab, and select fixture
APR v UR Huye. - Use Log events to record goals and cards. Watch Box score and Play-by-play update.
Expected result
The print preview shows blank score boxes for the fourth official. Logged events appear in play-by-play in order and the box score totals match them. The banner reads Live scoring under football rules: 2 × half of 45′.
Rovify guide / League · walkthrough 3
Verify a result
Turn a confirmed score into an official result.
Steps
- Open /league/records/results. Tiles show On record 5, Needs you 3, Overdue 1.
- Open
RES-0003, UR-COS v RYSA 3-2, State Confirmed, Verification Pending. - Read Confirmed by
RYSA, UR-COS: both clubs agreed the score. - Press Verify in the Your move block.
Expected result
State becomes Verified, the timeline gains a Verify line signed by David LeagueDirector, and the result now counts in /league/standings and /league/statistics.
Watch for
RES-0002 (RSF v UR-COS 0-0) is overdue since 11 Oct 2026 and self-reported only. Expect it highlighted in red.
Rovify guide / League · walkthrough 4
Issue and lift a suspension
Sanction a player and see eligibility follow.
Steps
- Open /league/records/discipline and open
DSC-0003, Diane Murerwa, Written warning. - Read Offence
Late registration of a substitute, Ends on 10 Oct 2026, State Active. - Press Lift sanction and give a reason. To issue a new one, use the create button at the top of the list.
Expected result
The sanction moves to Lifted with your reason on the timeline. A new suspension makes the player ineligible until it ends; the institution can no longer pick them on a team sheet.
Rovify guide / Institution
Institution: your workspace
A club or school director. Manages athletes, teams, rosters, contracts and medical clearance, links guardians to minors and pays development compensation. The home screen lists what needs attention (9 items in the demo).
Your menu, screen by screen
| Menu item | Route | What you do there |
|---|---|---|
| Records | /institution/records | Guardians, compensation and other records for this club. |
| Live matches | /institution/live | Matches in progress. |
| Athletes | /institution/athletes | Active 15 / Archived 2. Add athlete. |
| Teams / Rosters | /institution/teams | UR-COS Men's and Women's First Team. Create team, New roster. |
| Transfers | /institution/transfers | All, Incoming, Outgoing, Portal (2 in portal). |
| Contracts | /institution/contracts | New contract with party, dates and value. |
| Medical | /institution/medical | Issue clearance; Pending (2) and Expiring (2) with Approve / Deny. |
| Performance | /institution/performance | Record reading: speed, endurance, strength, agility. |
| Leagues / Officials / Assignments | /institution/leagues | Join a league, see fixtures, results and standings. |
| Analytics / Settings / Billing | /institution/settings/billing | Club settings and the Platinum plan. |
Rovify guide / Institution · walkthrough 1
Register an athlete
Add a new player to the club.
Steps
- Open /institution/athletes and press Add athlete.
- Fill First name, Last name, Date of birth and Sport (required, watch
Form progress 0/4 requiredcount up). Gender and Nationality are optional. - Press Add athlete.
Expected result
The dialog closes, a confirmation shows, and the athlete appears under Active (16). Leaving a required field empty keeps the button disabled.
Rovify guide / Institution · walkthrough 2
Clear a player medically
Issue or approve a medical clearance so the player can be picked.
Steps
- Open /institution/medical. Note Pending (2) and Expiring (2).
- Press Approve on a pending clearance, or press Issue clearance for a new one.
- In the dialog pick Athlete, Clearance type (General, Competition, Return to play, Pre-Season, Post-Injury, Concussion protocol), an Expiry date, and press the issue button.
Expected result
The clearance shows as active with its expiry. Pending drops by one. The player is now selectable on a team sheet under /institution/teams.
Rovify guide / Institution · walkthrough 3
Link a guardian to a minor
Give a minor the guardian link that consents, introductions and eligibility depend on.
Steps
- Open /institution/records/guardians and open
GRD-0003, Esther Bizimana for Claude Bizimana. - Read Relationship
Mother, Guardian phone, Reaches majority 9 Oct 2026, State Active. - To add a link for another minor, press the create button at the top of the list and fill athlete, guardian, relationship and phone.
Expected result
A new link starts unconfirmed and becomes Active once the relationship is confirmed. An active link lets the federation recompute a blocked eligibility (Federation walkthrough 3). Revoke link ends it and the timeline records who revoked.
Rovify guide / Institution · walkthrough 4
Pay development compensation
Pay the training club what the federation assessed.
Steps
- Open /institution/records/compensation and open
DCM-0002, Alex Bizimana,950,000 RWF, due 24 Oct 2026. - Your move shows Pay and Dispute the figure.
- Press Pay and follow the mobile money (MTN MoMo) prompt.
Expected result
The record moves to a payment state and a matching payment appears for the admin under /admin/records/payments. Dispute the figure instead asks for a reason and opens a case for the federation.
Rovify guide / Athlete
Athlete: your workspace
Kevin Striker, a striker at University of Rwanda. Owns a verified sports passport, controls who sees his data, applies for opportunities and follows his own transfer.
Your menu, screen by screen
| Menu item | Route | What you do there |
|---|---|---|
| Records | /athlete/records | Consents, opportunities, cases about this athlete. |
| Passport | /athlete/passport | Verified career register, eligibility, seals. Share passport; Lodge a case if something is wrong. |
| Profile / Stats | /athlete/profile | Personal details and season statistics. |
| Schedule / My team | /athlete/schedule | Upcoming matches as list or calendar. |
| Contract | /athlete/contract | Runs to 31 Dec 2027. Download PDF. |
| Agency | /athlete/agency | Rovify Talent Agency, Marcus Agent, commission 10%. |
| Transfers | /athlete/transfers | Request portal entry and transfer status. |
| Documents | /athlete/documents | 4 total, 4 verified. Upload document. |
| Messages / Settings | /athlete/messages | Inbox and account settings. |
Rovify guide / Athlete · walkthrough 1
Share my passport
Give a scout a link to the verified record.
Steps
- Open /athlete/passport. Note the passport number
RVP-BG7N2Z. - Press Share passport.
- Read the notice:
Public. Anyone with the link reads verified events only.Press Copy link. - Open the copied link in a private window, then come back and press Stop sharing.
Expected result
The private window shows only verified events, no contact details. After Stop sharing the same link no longer opens the passport.
Rovify guide / Athlete · walkthrough 2
Control who sees my data
Review and revoke an agent's access.
Steps
- Open /athlete/records/consents and open
CON-0003, Contact details for Marcus Agent. - Read Scope
Contact details, PurposeArrange a call with the athlete, Expires on 11 Oct 2026, State Granted. - Press Revoke.
Expected result
State becomes Revoked with Kevin Striker on the timeline. Marcus Agent loses the contact details on his side.
Rovify guide / Athlete · walkthrough 3
Apply for an opportunity
Find a scholarship and apply.
Steps
- Open /athlete/records/opportunities and open
OPP-0004, Kigali basketball academy intake. - Read Kind
Scholarship, Places 6, Deadline 11 Oct 2026, Who can applyUnder 18, verified season. - Pick an open opportunity whose deadline has not passed and apply.
Expected result
An application record is created and the publisher sees it. Past-deadline opportunities show no apply action.
Rovify guide / Athlete · walkthrough 4
Contest a decision
Lodge or escalate a case when a record is wrong.
Steps
- Open /athlete/records/cases and open
CASE-0003, Verification rejection: Season 2024 appearance record. - Read the outcome: State Upheld, adjudicator Federation, note
Four of the team sheets are unsigned. The original decision stands. - Press Escalate to second tier and give grounds.
- Separately, on /athlete/passport press Lodge a case to start a new one.
Expected result
The case moves to the second tier with a due date. Lodge a case opens the cases workspace with the new-case form.
Rovify guide / Agency
Agency: your workspace
Marcus Agent Sports represents eight athletes, runs a deal pipeline, tracks commissions and scouts new talent. The home screen warns that one contract expires in the next 90 days.
Your menu, screen by screen
| Menu item | Route | What you do there |
|---|---|---|
| Records | /agency/records | Introductions and other records. |
| My athletes | /agency/athletes | Represented players (8). |
| Deal pipeline | /agency/deals | New deal starts as a prospect. |
| Commissions | /agency/commissions | $7,395 earned this year, $4,595 outstanding, $1,475 past due. |
| Discovery | /agency/discovery | Search players. Shortlist or Invite to represent. |
| Transfers | /agency/transfers | Start transfer for a client. |
| Contracts / Messages | /agency/contracts | Client contracts and inbox. |
| Scouting | /agency/scouting | 124 athletes across 5 leagues. |
Rovify guide / Agency · walkthrough 1
Move a deal forward
Create a deal and track it.
Steps
- Open /agency/deals and press New deal.
- Pick an athlete from your roster, give a Title, type
Contract, Estimated value in USD, Commission % and Probability %. - Add the club contact and email, then press Create deal.
Expected result
The deal appears in the Prospect column with the value and probability you entered.
Rovify guide / Agency · walkthrough 2
Introduce a player
Ask an athlete (or their guardian) for permission to talk.
Steps
- Open /agency/records/introductions and open
INT-0003, Marcus Agent to Kevin Striker. - Read Agency licence
RFF-AG-0192, State Pending, WithAthlete or guardian, overdue since 6 Oct 2026. - Create a new introduction from the list's create button for another athlete.
Expected result
The agent has no Your move block while it waits. When the athlete accepts, a consent grant is created automatically. Requests expire after 14 days. For a minor it goes to the guardian, never the child.
Rovify guide / Agency · walkthrough 3
Discover and track commissions
Shortlist a prospect and read money owed.
Steps
- Open /agency/discovery and open the first row (Bizimana Alex, Right-back, Rayon Sports FC).
- Read the note
Contracts and match history open up once you represent this athlete.Press Shortlist. - Open /agency/commissions and switch tabs: All, Pending, Invoiced, Part paid, Disputed, Paid.
Expected result
The athlete is on your shortlist. Commission totals match the three tiles.
Rovify guide / Tournament
Tournament: your workspace
Grace Organizer Events runs knockout tournaments: teams, brackets, live scoring, tickets and awards. The home screen shows the next match up.
Your menu, screen by screen
| Menu item | Route | What you do there |
|---|---|---|
| Records | /tournament/records | Events (ticketed) and other records. |
| Teams | /tournament/teams | 8 total, 3 still active, 5 eliminated. |
| Matches | /tournament/matches | Quarter, semi, final. 5 of 7 played. Auto-schedule. |
| Match centre / Statistics | /tournament/match-centre | Live scoring and player stats. |
| Brackets | /tournament/brackets | The draw with scores. Schedule matches. |
| Awards | /tournament/awards | Assign award. |
| Settings | /tournament/settings | Format (single elimination), reopen registration, start seeding, cancel tournament. |
Rovify guide / Tournament · walkthrough 1
Follow the bracket
Read the draw and enter a result.
Steps
- Open /tournament/brackets. Header reads
5 of 7 matches played, 1 ready for a result. - Check the quarter-finals: UR-COS 2 Musanze FC Youth 0; Rayon Sports U21 1 RYSA 2; APR FC Academy 3 ISA 1; KIU 2 Police FC Academy 2,
KIU won 4-3 on penalties. - Find the open semi-final APR FC Academy v KIU (Sat 10 Oct, 16:00) and press
enter result.
Expected result
The winner moves into the Final slot opposite UR-COS. The header changes to 6 of 7 played.
Rovify guide / Tournament · walkthrough 2
Sell tickets
Open ticket sales for an event.
Steps
- Open /tournament/records/events and open
EVT-0004, Inter-university volleyball cup. - Read Venue Amahoro Indoor, Date 21 Nov 2026, Ticket price
2,500 RWF, Capacity 800, Sold 0, State Planning. - Press Open ticket sales.
Expected result
State becomes On sale. Cancel event on an event with sales refunds every ticket, and each refund appears under /admin/records/payments.
Rovify guide / Tournament · walkthrough 3
Hand out awards
Name the player of the tournament.
Steps
- Open /tournament/awards and press Assign award.
- Pick Award (
Most Valuable Player), Team, Athlete, a Prize and a short Citation. Press Assign.
Expected result
The award appears on the Awards list and on the athlete's passport as an event.
Rovify guide / Ministry
Ministry: your workspace
The Ministry of Sports watches the whole country: institutions by district, athlete numbers, gender participation and compliance. It reads and reports; it does not run competitions.
Your menu, screen by screen
| Menu item | Route | What you do there |
|---|---|---|
| Records | /ministry/records | Escalated cases. |
| Districts | /ministry/districts | Comparison across districts. |
| Institutions | /ministry/institutions | 215 across 24 districts. All, Active 195, Gone quiet 20, Unverified 32. Export report. |
| Athletes | /ministry/athletes | 7,697 on the national register. |
| Competitions | /ministry/competitions | 7 in progress. |
| Compliance | /ministry/compliance | By district; inactive schools 90+ days. |
| Gender | /ministry/gender | 40% of registered athletes are women. |
| Reports | /ministry/reports | KPI summary (Agreement Section 44), district, compliance, gender, financial. CSV or PDF. |
Rovify guide / Ministry · walkthrough 1
Audit compliance and quiet institutions
Find schools that stopped reporting.
Steps
- Open /ministry/institutions and press the Gone quiet tab (20).
- Open /ministry/compliance and read the district table (24 rows) and the Inactive Schools 90+ days list.
- Press Export report.
Expected result
20 institutions listed, matching the home banner 20 institutions have gone quiet. The export downloads a file.
Rovify guide / Ministry · walkthrough 2
Read gender participation
Check the parity numbers.
Steps
- Open /ministry/gender.
- Read the headline and the gap line:
1,535 more women would bring the national register to parity. Netball leads at 93.4%, Rugby trails at 18.8%.
Expected result
Sport rows sum to the headline 40%. Numbers match the Gender report under /ministry/reports.
Rovify guide / Ministry · walkthrough 3
Review an escalated case
Read a dispute that reached the Ministry.
Steps
- Open /ministry/records/cases and open
CASE-0005. - Read the grounds:
The KIU goal came after the referee had blown for full time.State Admissibility, WithFederation registry. - Under Linked records open
RES-0005, shown as Disputed.
Expected result
The Ministry reads the case and its linked result but has no Your move block: the federation rules first.
Rovify guide / Admin
Admin: your workspace
The Rovify platform operator. Verifies identities, watches money and SMS, opens transfer windows and manages users, roles and sports.
Your menu, screen by screen
| Menu item | Route | What you do there |
|---|---|---|
| Records | /admin/records | Payments, SMS and platform records. Run scheduler moves due records. |
| Institutions / Users / Athletes | /admin/users | Directory. Opening a user shows Overview, Access, Activity, Security. |
| Leagues / Tournaments / Transfers | /admin/leagues | Platform-wide lists. Create league. |
| Transfer windows | /admin/transfer-windows | 4 windows. Create window. |
| KYC | /admin/kyc | 5 pending identity checks. |
| Officials / Officiating | /admin/officiating/reports | Assignments and reports: approve to make a result official or send back. |
| Sports / Roles / Role profiles / Permissions | /admin/roles | 15 sports, 13 roles, 15 role profiles. |
| Subscriptions / Audit logs / System status | /admin/system | Plans, audit and health. |
Rovify guide / Admin · walkthrough 1
Clear the KYC queue
Verify a pending identity.
Steps
- Open /admin/kyc (5 pending).
- Open a pending check, compare the document with the profile, and approve or reject with a reason.
Expected result
The check leaves the queue and the count drops to 4. The person's account shows as verified.
Rovify guide / Admin · walkthrough 2
Chase a payment
Read a payment's full lifecycle.
Steps
- Open /admin/records/payments and open
PAY-0008, Ticket, Rwanda University League final, Kevin Striker,5,000 RWF, MTN MoMo. - Read the timeline bottom-up: Created, Gateway accepted (Processing), Signed callback received (Verifying), Apply completed payment (Completed).
- Note the Idempotency key
tk-EVT-0001-…and Refunded0 RWF.
Expected result
A completed payment has no Your move block. It changes only through a refund or chargeback, never by editing.
Rovify guide / Admin · walkthrough 3
Check SMS delivery
Confirm messages reach phones.
Steps
- Open /admin/records/sms and open
SMS-0003, Case update to +250 722 118 640, State Sent. - Press Simulate: Delivery receipt. On another SMS press Simulate: Gateway failed.
Expected result
The first becomes Delivered; the second Failed, with each step on the timeline.
Rovify guide / Admin · walkthrough 4
Open a transfer window
Let clubs move players for a period.
Steps
- Open /admin/transfer-windows and press Create window.
- Fill Window name, Sport, Open date, Close date; optionally max transfers per team, registration fee (USD), emergency transfers. Save.
Expected result
The window shows in the list (now 5). Outside an open window, a transfer request is refused.
Rovify guide / Test case
Case RV-01: Every persona signs in and lands home
The picker is the front door for every tester.
Steps
- Open /personas.
- For each of the eight cards press Enter, note the landing page, then Sign out.
Pass if
Each lands on its own home (/federation, /league, /institution, /athlete, /agency, /tournament, /ministry, /admin) with its own menu. No error pages.
Your result
Rovify guide / Test case
Case RV-02: A role cannot open another role's pages
Access control between portals.
Steps
- Sign in as Athlete.
- Type /admin in the address bar.
Pass if
A page titled This page isn’t part of your access explains you are in the athlete portal, with Go to the athlete portal and Sign out.
Your result
Rovify guide / Test case
Case RV-03: League verifies a confirmed result
Only verified results reach standings.
Steps
- Sign in as League, open /league/records/results.
- Open the first Confirmed result and press Verify.
- Open /league/standings.
Pass if
State Verified, a new timeline line signed by the league, and the standings include the score.
Your result
Rovify guide / Test case
Case RV-04: Generate fixtures
Season setup.
Steps
- Open /league/fixtures, press Generate, choose
Round robin, a start date and 1 match per week, confirm.
Pass if
Fixtures appear grouped by matchweek; every team meets every other team once.
Your result
Rovify guide / Test case
Case RV-05: Assign a referee
Match day needs officials.
Steps
- Open /league/match-ops, press Assign on a match, choose an official with Role
Referee, press Assign official then Done.
Pass if
The match shows the referee, and /league/match-day-sheet no longer says Referee not assigned for it.
Your result
Rovify guide / Test case
Case RV-06: Required fields block Add athlete
Data quality at entry.
Steps
- Open /institution/athletes, press Add athlete.
- Fill only First name.
- Then fill all four required fields and submit.
Pass if
With fields missing the progress reads under 4/4 and the athlete cannot be added. With all four the athlete appears under Active.
Your result
Rovify guide / Test case
Case RV-07: Issue a medical clearance
Unfit players must not be picked.
Steps
- Open /institution/medical, press Issue clearance, pick an athlete, type
Competition, an expiry date next year, submit.
Pass if
The clearance shows as active with the expiry date. The athlete becomes selectable on a team sheet.
Your result
Rovify guide / Test case
Case RV-08: Institution pays development compensation
Money path: amount and state must match.
Steps
- Open /institution/records/compensation, open
DCM-0002. - Press Pay and complete the MoMo prompt.
- Sign in as Admin and open /admin/records/payments.
Pass if
Compensation shows paid for 950,000 RWF; Admin sees a matching payment of the same amount with its own timeline.
Your result
Rovify guide / Test case
Case RV-09: Federation recompute on missing data
Fails closed until evidence arrives.
Steps
- Open /federation/records/eligibility, open
ELG-0006, press Data arrived, recompute without adding a guardian link.
Pass if
State stays Indeterminate and the timeline records the recompute with the same rule and evidence.
Your result
Rovify guide / Test case
Case RV-10: Athlete shares then stops sharing the passport
Public link must die on revoke.
Steps
- Open /athlete/passport, press Share passport then Copy link.
- Open the link in a private window.
- Press Stop sharing, reload the private window.
Pass if
First load shows verified events only. After Stop sharing the link no longer shows the passport.
Your result
Rovify guide / Test case
Case RV-11: Athlete revokes an agent's consent
Data control.
Steps
- Open /athlete/records/consents, open
CON-0003, press Revoke.
Pass if
State Revoked, Kevin Striker on the timeline, no Revoke button left.
Your result
Rovify guide / Test case
Case RV-12: Agent creates a deal
Pipeline basics.
Steps
- Open /agency/deals, press New deal, pick an athlete, title
Test deal, value 10000, commission 10, probability 50, press Create deal.
Pass if
Test deal appears as a prospect with USD 10,000 and 50%.
Your result
Rovify guide / Test case
Case RV-13: Organiser opens ticket sales
Ticketing state machine.
Steps
- Open /tournament/records/events, open
EVT-0004, press Open ticket sales.
Pass if
State moves from Planning to on sale; the timeline shows Grace Organizer as the actor.
Your result
Rovify guide / Test case
Case RV-14: SMS delivery receipt and failure
Messaging reliability is visible.
Steps
- Open /admin/records/sms, open a Sent SMS, press Simulate: Delivery receipt.
- Open another Sent SMS, press Simulate: Gateway failed.
Pass if
First becomes Delivered, second Failed; both have new timeline lines.
Your result
Rovify guide / Reference
Record types and who acts
The records that the walkthroughs use, with their prefix and who holds the next move.
| Record | Prefix | Created by | Acts next |
|---|---|---|---|
| Match result | RES- | League or clubs | Clubs confirm, league verifies |
| Disciplinary action | DSC- | League | Issuing body (lift) |
| Eligibility determination | ELG- | System | Federation (recompute) or institution (missing data) |
| Development compensation | DCM- | Federation | Paying club (pay or dispute) |
| Guardian link | GRD- | Institution | Federation confirms relationship |
| Consent | CON- | Requester | Athlete or guardian (grant, revoke) |
| Introduction | INT- | Agent | Athlete or guardian (accept, decline) |
| Opportunity | OPP- | Institution | Athletes apply |
| Event | EVT- | Organiser | Organiser (open sales, cancel) |
| Case | CASE- | Anyone affected | Adjudicator, then second tier |
| Payment | PAY- | Payer | Gateway; refunds only after completion |
| SMS | SMS- | System | Gateway |
Rovify guide / Reference
States you will see
Common state words and what they mean.
Submitted / Self-reported
One side entered it; not yet agreed.
Confirmed
Both sides agreed; not yet official.
Verified
The responsible body checked it; it now counts.
Indeterminate
Evidence is missing; the system blocks until it arrives.
Active / Lifted
A sanction or link in force, or ended with a reason.
Granted / Revoked
Consent given or taken back.
Upheld / Overturned / Varied
Case outcomes. Upheld means the original decision stands.
Overdue
Past the due date in Next step; shown in red.
