Le marché optique en Afrique francophone : Sénégal 18 milliards FCFA/an, Côte d'Ivoire 28 milliards, Nigeria $850M USD. Un opticien moderne combine 3 sources de revenus : tests vue (cliniques), lunettes (e-commerce + showroom), lentilles (récurrent).
TL;DR
- Stack hybride : RDV en ligne (test vue) + catalogue lunettes + visualisation virtuelle.
- Try-on virtuel via webcam = +35 % conversion.
- Recurring lentilles via abonnement Wave = MRR stable.
Architecture clinique optique
`
[Patient]
↓
[Site clinique optique]
├── Catalogue montures + lunettes solaires
├── Lentilles avec abonnement
├── Tests vue / consultation RDV
├── Try-on virtuel
└── Espace patient (mes ordonnances, historique commandes)
[Backend]
├── E-commerce (Medusa)
├── RDV (Cal.com intégré)
├── Stock montures + verres
├── Prescription tracking (correction)
└── Subscription lentilles
`
Étape 1 — modèle produit
`prisma
model Frame {
id String @id @default(cuid())
slug String @unique
brand String // Ray-Ban, Oakley, Lacoste, Maui Jim
model String
type String // OPTICAL / SUNGLASSES / READING
shape String // SQUARE / ROUND / AVIATOR / CAT_EYE
material String // METAL / ACETATE / PLASTIC
colors String[]
gender String // UNISEX / MEN / WOMEN / KIDS
priceXof Int
images Image[]
stock Json // {color: count}
isActive Boolean @default(true)
}
model Lens {
id String @id @default(cuid())
type String // SINGLE_VISION / PROGRESSIVE / BIFOCAL
material String // CR-39 / POLYCARBONATE / TRIVEX / HIGH_INDEX
coatings String[] // ANTI_REFLECTIVE / BLUE_LIGHT / PHOTOCHROMIC / SCRATCH_RESISTANT
priceXof Int
}
model EyeExam {
id String @id @default(cuid())
customerId String
scheduledAt DateTime
durationMin Int @default(30)
status String
examinerId String // optometrist / ophthalmologist
prescription Prescription?
paymentXof Int
}
model Prescription {
id String @id @default(cuid())
customerId String
examId String @unique
rightEye Json // {sphere, cylinder, axis, addition}
leftEye Json
pupillaryDistance Int // mm
validUntil DateTime
}
model LensSubscription {
id String @id @default(cuid())
customerId String
lensProductId String
frequency String // MONTHLY / BI_MONTHLY / QUARTERLY
nextDelivery DateTime
active Boolean @default(true)
}
`
Étape 2 — try-on virtuel
`tsx
// app/products/[slug]/page.tsx
'use client';
import { useEffect, useRef } from 'react';
export function VirtualTryOn({ frame }) {
const videoRef = useRef
const canvasRef = useRef
useEffect(() => {
async function setup() {
const stream = await navigator.mediaDevices.getUserMedia({ video: true });
if (videoRef.current) videoRef.current.srcObject = stream;
// Charger MediaPipe Face Mesh ou TensorFlow Face Detection
const faceDetection = await loadFaceDetection();
// Loop : detecter visage + superposer monture
function loop() {
if (videoRef.current && canvasRef.current) {
const detections = faceDetection.detect(videoRef.current);
drawFrameOnFace(canvasRef.current, frame, detections);
}
requestAnimationFrame(loop);
}
loop();
}
Besoin d'un site web professionnel ?
Kolonell crée des sites web qui attirent des clients, optimisés pour le marché sénégalais. Devis gratuit en 2 minutes.
setup();
}, [frame]);
return (
);
}
`
Try-on = +35 % conversion sur fiches produit.
Étape 3 — checkout avec correction
`tsx
// app/checkout/lens-options/page.tsx
'use client';
export default function LensOptionsPage() {
const [hasPrescription, setHasPrescription] = useState
const [prescription, setPrescription] = useState({});
const [lensType, setLensType] = useState('single_vision');
const [coatings, setCoatings] = useState
return (
{hasPrescription === true && ( {/* OU upload PDF/image scan */} )} {hasPrescription === false && ( )}Configurez vos verres
Avez-vous une ordonnance optique ?
Saisissez votre correction
Test vue clinique offert (avec achat)
Type de verres
Traitements
);
}
`
Étape 4 — abonnement lentilles
`tsx
Abonnement lentilles - jamais en rupture
Votre boîte de lentilles livrée automatiquement
-15% vs achat individuel · Annulable à tout moment
`
Abonnement = MRR stable. 1 client lentilles fidèle = ~300K FCFA/an récurrent.
Étape 5 — RDV test vue clinique
Voir méthode dental clinique → — patron similaire :
- Cal.com intégré
- Slot disponibilité par optométriste
- SMS + WhatsApp confirmation
- Prise de prescription numérique en cabinet
Étape 6 — SEO local + e-commerce
Articles cibles :
- "Lunettes pas chères Dakar : guide qualité 2026"
- "Test de vue Almadies Cocody : combien ça coûte ?"
- "Lentilles ou lunettes : avantages et inconvénients"
- "Comment choisir la bonne monture selon visage"
- "Anti-lumière bleue : utile ou marketing ?"
GMB optimisé "Opticien Dakar" / "Lunetterie Almadies" comme méthode dentaire →.
Cas réel — clinique optique Almadies
| Métrique | Avant | Après 12 mois |
|---|---|---|
| Tests vue/mois | 65 | 145 |
| Ventes lunettes/mois | 38 | 92 |
| Lentilles abonnés | 0 | 78 |
| MRR récurrent | 0 | 1.95M FCFA |
| CA mensuel total | 4.8M FCFA | 12.6M FCFA |
FAQ
Q : Try-on virtuel précis ?
R : ~80-85 % précision en 2026 (MediaPipe Face Mesh). Suffit pour pré-sélection. Essai physique recommandé avant achat final.
Q : Vente lunettes correcteurs sans prescription locale ?
R : Au Sénégal, ordonnance obligatoire pour verres correcteurs. Lunettes solaires non-correcteurs = libre. CI similaire.
Q : Concurrence ?
R : Optique 2000 (international), Sun Vision (SN), Optical World (CI). Marché loin saturé. Niche premium réinventable.
Conclusion
Une clinique optique digitalisée = 2-3x revenue d'une clinique classique. Investissement 15-30M FCFA pour stack complète (e-commerce + try-on + RDV + abonnements). ROI 18-24 mois sur opticien moyen.
Mohamed Bah
Fondateur, Kolonell
Passionné par le digital et l'entrepreneuriat en Afrique, Mohamed accompagne les entreprises sénégalaises dans leur transformation digitale depuis 2020. Fondateur de Kolonell, il croit que chaque PME mérite une présence en ligne professionnelle et accessible.
