Francophone Africa's private education market is booming: Senegal +12% enrollments/year, Ivory Coast +18%, Cameroon +9%. But 80% of schools still have obsolete or no websites and zero online enrollment — losing 30-40% potential students to digitalized competitors.
TL;DR
- School site = both showcase and operational tool.
- Online enrollment with Wave/OM enrollment fee payment.
- Parent + teacher + student portals.
- 50-150 additional enrollments/year for 300-800-student school.
The 8 key features
1. Parent-oriented home page
- Educational mission + values
- Synthetic curriculum
- Cycles offered (preschool, primary, middle, high)
- Visible pricing or "Contact" (A/B test per strategy)
- Authentic school life photos
- Parent + alumni testimonials
2. Curriculum page
- Method (Montessori, BIS, classical, etc.)
- Languages of instruction (FR, EN, Arabic, Wolof)
- Official programs followed (Senegal Education Ministry, IB, Cambridge)
- Extra-curricular activities
- Educational outings
3. Transparent pricing
- Enrollment fee : 75,000 XOF (one-time)
- Monthly preschool : 95,000 XOF × 10 months
- Monthly primary : 110,000 XOF × 10 months
- Monthly middle : 135,000 XOF × 10 months
- Monthly high : 165,000 XOF × 10 months
- Included : insurance, digital access, school book, supplies
- Not included : cafeteria (35K/month), transport (40K/month), uniform (28K)
- Merit scholarship : -30% on application (10 spots/year)
- Large family : -10% from 2nd child
Transparency = +60% requests vs "Contact for quote".
4. Online enrollment
`tsx
'use client';
export default function EnrollmentForm() {
const [step, setStep] = useState(1);
const [data, setData] = useState({
childInfo: {},
parentInfo: {},
selectedClass: '',
documents: [],
});
return (
{step === 1 && ( setData({...data, childInfo: info}); setStep(2); }} /> )} {step === 2 && ( setData({...data, parentInfo: info}); setStep(3); }} /> )} {step === 3 && ( setData({...data, selectedClass: cls}); setStep(4); }} /> )} {step === 4 && ( setData({...data, documents: docs}); setStep(5); }} /> )} {step === 5 && ( const res = await fetch('/api/enrollments', { method: 'POST', body: JSON.stringify(data), }); const { paymentUrl } = await res.json(); window.location.href = paymentUrl; }} /> )}
);
}
`
Enrollment fee paid online = real parent commitment. No no-shows without payment.
5. Parent portal
Logged in, each parent sees:
- Child's grades / report cards
- Schedule
- Homework / lessons
- Cafeteria + transport (invoices + online payments)
- School communications (announcements, closures, events)
- Teacher meeting bookings (online)
- School life photos (with opt-in)
6. Teacher portal
- Grade entry
- Digital homework book
- Parent communication
- Absences / late marks
- Schedules / meetings
- Student list + records
7. Student portal (from middle school)
- Complementary online courses (Khan Academy integrated, etc.)
- Digital homework submission
- Digital library
- Moderated forum
8. Multi-channel communication
- Transactional email (Brevo): invoices, report cards, official comms
- WhatsApp Business: emergencies, closures, events
- SMS: payment reminders, critical alerts
- Push notifications: if mobile app
Step 1 — data model
`prisma
model School {
id String @id @default(cuid())
name String
city String
district String
cycles Cycle[]
classes SchoolClass[]
students Student[]
parents Parent[]
Need a professional website?
Kolonell builds websites that attract clients, optimized for the Sénégalese market. Free quote in 2 minutes.
teachers Teacher[]
enrollments Enrollment[]
}
model SchoolClass {
id String @id @default(cuid())
schoolId String
level String
section String
capacity Int
enrolled Int
monthlyFee Int
teacherId String?
}
model Enrollment {
id String @id @default(cuid())
schoolId String
childFirstName String
childLastName String
childDob DateTime
classId String
parentEmail String
parentPhone String
parentWhatsApp String?
status String
paymentStatus String
documents Document[]
createdAt DateTime @default(now())
}
`
Step 2 — enrollment workflow
`
[Parent fills online form]
↓
[Data validation + confirmation email]
↓
[Document request: child photo, birth certificate copy,
previous year report, parent ID copy]
↓
[Upload via form (drag & drop)]
↓
[Wave/OM/card enrollment fee payment]
↓
[School team notification]
↓
[Admin validation (D+1-3)]
↓
[Optional principal meeting]
↓
[Final confirmation + parent portal access]
`
Step 3 — recurring monthly payments
`tsx
async function setupRecurringPayment(parentId: string, schoolYear: string) {
const subscription = await fetch('https://api.wave.com/v1/subscriptions', {
method: 'POST',
headers: { 'Authorization': Bearer ${WAVE_KEY} },
body: JSON.stringify({
customer_phone: parent.whatsapp,
amount: monthlyFee,
currency: 'XOF',
frequency: 'MONTHLY',
start_date: '2026-09-01',
end_date: '2027-06-30',
description: School fees ${student.name} ${schoolYear},
}),
});
}
`
Auto-debited on the 1st of each month = -90% unpaid management.
School SEO — target queries
Blog articles targeting parent searches:
- "Best private schools Mermoz Dakar 2026 (with prices)"
- "Preschool vs daycare: which to choose at 3?"
- "Bilingual FR/EN school Almadies: complete guide"
- "Primary school enrollment Dakar: step-by-step procedure"
- "Senegal Montessori school: difference vs classical"
Schema.org School JSON-LD on home page.
Real case — Dakar private school (450 students)
| Metric | Before site | After 12 months |
|---|---|---|
| Enrollments/year | 60 | 124 |
| Mid-year withdrawals | 14% | 4% (parent portal strengthens engagement) |
| Admin time per enrollment | 90 min | 12 min |
| Monthlies paid on time | 67% | 94% (Wave auto-debit) |
| New students via site | 0 | 38 |
ROI: increased class fill + admin time saved = equivalent 2 employees.
FAQ
Q: Publish report cards online?
A: Yes via secure parent portal. Saves 50% admin time at term end.
Q: Pro school site cost?
A: 5-12M XOF for full version (public site + 3 portals). Maintenance 200-500K XOF/month per volume.
Q: Children's data compliance?
A: GDPR + Senegal Law 2008-12. Explicit parent consent. No marketing use of child photos without consent.
Conclusion
A digital private school in 2026 is no longer optional. Online enrollment + parent portal + recurring payments = easier class filling + simplified operations. 12-18 month ROI on 200+ student school.
Mohamed Bah
Fondateur, Kolonell
Passionate about digital and entrepreneurship in Africa, Mohamed has been helping Sénégalese businesses with their digital transformation since 2020. Founder of Kolonell, he believes every SME deserves a professional and accessible online présence.
