Plate-forme SaaS de gestion scolaire pour le Mali et l'Afrique de l'Ouest.
Version 2026.5.1 · Workflow et description des boutons par module ·
Mis à jour le 15 mai 2026
Nouveau dans cette version :
rapports trimestriels automatiques, export DGI Mali, signature électronique OHADA,
comptabilité SYSCOHADA, refonte de la page mouvements bancaires
et portail parent enrichi —
voir la section dédiée ↓
Nouveautés mai 2026
Cette section regroupe les modules livrés en mai 2026.
Chaque module a ensuite sa propre fiche détaillée plus bas dans le manuel
(workflow, boutons, permissions). Cette page sert d'index rapide.
Génération automatique d'un rapport PDF par trimestre (T1/T2/T3) qui synthétise :
Pédagogie : moyenne école, médiane, écart-type, taux réussite, distribution des notes en histogramme, top/flop classes, élèves à risque avec trajectoire
Signaux automatiques : phrases d'inférence (« 9ème B en chute libre », « Math excellent niveau », etc.)
Avancement chantiers : barres de progression Examens / Cours / Bulletins / Recouvrement / Paie
Cycle de vie : Draft → Published → Archived. À la publication, une notification est envoyée à toute l'équipe et un événement est ajouté au calendrier de l'école.
Charges patronales : Taxe Logement, CFE, TFP, TEJ détaillés
Recettes BIC : frais scolaires perçus mois par mois
Cycle Draft → Submitted → Archived. Index unique partiel : un seul Submitted par (école, année). Numéro de récépissé saisi manuellement après dépôt physique.
Signature électronique conforme à l'Acte uniforme OHADA sur les contrats électroniques (art. 21-28). Permet au directeur de signer bulletins, rapports trimestriels et exports DGI directement depuis l'application :
Authentification renforcée : code OTP 6 chiffres envoyé par e-mail à chaque signature, valide 5 min, 3 tentatives max
Intégrité : empreinte SHA-256 du document calculée et persistée
Horodatage cryptographique : token HMAC-SHA256 vérifiable a posteriori
Page publique de vérification : /verifier/{token} accessible via QR code, permet à un tiers de re-uploader le PDF pour vérifier l'intégrité
Image manuscrite : téléversement de votre signature manuscrite (PNG, max 200 Ko) sur /parametres/ma-signature — apposée automatiquement sur les documents signés
Comptabilité SYSCOHADA
/comptabiliteComptaViewAdminEcole · Comptable
Plan comptable SYSCOHADA école seedé automatiquement (~30 comptes essentiels) + écritures comptables avec validation stricte Σ débit = Σ crédit. Quatre pages :
Plan comptable (/comptabilite/plan-comptable) : 411 Clients, 421 Salaires nets, 431 INPS, 442 État ITS, 521 Banque, 706 Frais scolarité, 661 Salaires bruts, 664 Charges patronales… Modifiable par AdminEcole pour ajouter des comptes custom.
Balance trimestrielle (/comptabilite/balance) : par compte avec solde début + débit + crédit + solde fin. Indicateur « Équilibrée » si Σ D = Σ C.
Compte de résultat (/comptabilite/resultat) : Charges classe 6 vs Produits classe 7, encart vert/rouge selon bénéfice/déficit.
Hooks d'écritures automatiques (livrés en service, à câbler en sprint suivant) : encaissement frais → D 521 / C 706 ; paie → D 661 / C 421 + 431 + 442 + 664 ; mouvement bancaire → D 521 / C contrepartie.
Portail parent enrichi
/portailCompte parent dédiéParents · administré par AdminEcole
Espace web dédié aux parents, distinct de l'application principale.
Authentification par compte parent (login + mot de passe temporaire fourni
par l'AdminEcole, à changer à la première connexion).
Login parent (/portail/connexion) — formulaire dédié, distinct du login école
Tableau de bord parent (/portail) — vue consolidée des enfants
à l'école : photo, classe, dernière moyenne, alertes en cours (frais en retard,
absence non justifiée, bulletin disponible)
Fiche élève côté parent (/portail/eleve/{id}) — détail :
notes par matière, bulletins téléchargeables, historique présences,
situation des frais scolaires
Administration des comptes parent (/parents/comptes) —
l'AdminEcole crée les comptes (génération mot de passe temporaire 8 caractères
sans 0/O/1/l/I), reset de MDP, désactivation, déverrouillage après 5 tentatives ratées
Multi-enfants — un seul compte parent peut être rattaché à plusieurs
enfants à l'école (fratrie). Le parent choisit l'enfant dans le tableau de bord.
Sécurité — couche d'authentification séparée (entité ParentAccount
distincte de User), cookie distinct, layout dédié ParentLayout sans
la sidebar admin. Aucune fuite cross-école possible.
Mouvements bancaires v2
/mouvementsMovementsViewAdminEcole · Comptable
Refonte complète de la page mouvements :
Bandeau KPI : solde total tous comptes, entrées/sorties du mois avec delta vs mois précédent, nombre de mouvements ce mois
Mini-cartes par compte bancaire avec sparkline 30 jours (Chart.js), tendance ↑/↓/, cliquables pour filtrer le tableau
Filtres avancés pliables : compte, type, plage de dates, montant min/max, recherche full-text sur intitulé
Pagination serveur + tri par colonne : 10/25/50/100 lignes au choix, tri sur N°/Date/Banque/Entrée/Sortie/Solde
Modal détail : lien vers la fiche source (élève si encaissement de frais, enseignant si paie) + lien vers l'écriture comptable SYSCOHADA générée automatiquement
Badge « auto » sur les lignes générées par les hooks finances
Fiche formateur enrichie + quotas de stockage
Deux gros chantiers livrés mi-mai :
Fiche formateur
Liste /enseignants refondue : tuiles synthétiques
(effectif, CDI, CDD), onglets En poste / Archivés, design moderne.
Nouvelle fiche détaillée /enseignants/{id} avec
6 indicateurs (heures de la semaine, classes, matières, élèves enseignés,
ancienneté, fin de CDD imminente) et 4 onglets : Profil, Emploi du temps
(planning hebdo + vue mois), Documents pédagogiques, Documents RH.
Documents pédagogiques : l'enseignant téléverse ses
supports de cours, choisit le mode de partage (Privé / Toute la classe /
Élèves sélectionnés) et publie au portail parent.
Documents RH : CV, diplômes, contrat… réservé aux
profils Administrateur école et RH (l'enseignant lui-même n'y accède pas).
Permissions salaire : la colonne et les champs Salaire
ne sont visibles qu'avec la permission dédiée. Un profil Direction
pédagogique peut éditer une fiche sans toucher au salaire.
Quotas de stockage
Chaque plan tarifaire dispose désormais d'un quota de stockage
(TRIAL 100 Mo · STARTER 1 Go · STANDARD 5 Go · PREMIUM 20 Go ·
ENTERPRISE illimité).
Page /parametres/abonnement : jauge en temps réel, alertes
à 80 % et 100 % de la limite, détail par module (photos, documents).
Stratégie soft-limit : entre 100 et 120 % du quota
les uploads continuent mais le dépassement est facturé. Au-delà de 120 %,
les nouveaux uploads sont bloqués pour éviter une explosion de coûts.
L'Administrateur école peut anticiper et demander une augmentation
à l'éditeur sans interruption de service.
Comment lire ce manuel. Chaque module suit la même structure :
un wireframe schématique, un workflow pas-à-pas, et un tableau qui décrit
chaque bouton avec son effet, la permission requise, et les rôles qui y
ont accès par défaut.
Légende des rôles
Rôle
Description
Couleur sidebar
AdminEcole
Direction de l'établissement · accès complet à son école
Toutes les sections
Comptable
Service finance · pas de pédagogie sauf lecture
Finances + Paie + Apprenants (lecture)
RH
Ressources humaines · gestion des dossiers RH des enseignants (documents personnels, contrats, salaires) sans accès pédagogique
Formateurs, Documents RH, Paie
Formateur
Enseignant · ses classes uniquement (filtrage service). Gère ses propres documents pédagogiques.
Notes, Présences, sa propre paie, Documents pédagogiques
Surveillant
Vie scolaire · présences + apprenants
Apprenants (lecture), Présences
Connexion (Login)
/loginPublic
Page d'entrée. L'authentification se fait par login (et non email)
+ mot de passe. Après 5 tentatives échouées, le compte est verrouillé jusqu'à
intervention de l'AdminEcole.
Bouton
Effet
Permission
Se connecter
Vérifie login+mot de passe, pose un cookie d'auth, redirige vers le tableau de bord.
Public
Mot de passe oublié
Lance /auth/forgot — envoie un lien de réinitialisation par e-mail/SMS si trouvé.
Public
Espace parent
Redirige vers /portail/connexion (auth dédiée parents avec code temporaire SMS).
Public
Tester en mode démo
Auto-connexion sur le compte demo.directeur (école DEMO_SINI), bandeau orange
MODE DÉMO, modifications désactivées.
Public
Navigation (Sidebar)
La navigation latérale est filtrée selon les permissions du
compte connecté. Un Formateur ne voit pas les sections Finances. Un Surveillant
ne voit pas la Paie sauf sa propre fiche. La sidebar affiche le nom de votre école
en haut.
Élément
Effet
Avatar + nom (en haut à droite)
Cliquable → ouvre /mon-profil (changement mot de passe, vue compte).
Bouton hamburger (mobile)
Toggle la sidebar en overlay sur mobile (largeur écran < 768px).
Lien "Déconnexion"
Détruit le cookie d'auth et redirige vers /login.
Bandeau orange "MODE DÉMO"
Apparaît si le compte est demo.* — toutes les écritures sont bloquées.
Mon profil
/mon-profilTout user authentifié
Page accessible à tout utilisateur connecté. Permet de consulter ses
informations de compte et de changer son mot de passe sans avoir besoin
d'accéder à la page admin /utilisateurs.
Mon profilLoginaskia.directeurEmaildirecteur@askia.mlRôleAdminEcoleChanger mon mot de passeMot de passe actuelNouveau mot de passeEnregistrer
Bouton
Effet
Permission
Enregistrer
Vérifie l'ancien mot de passe, hash le nouveau, met à jour users.password_hash.
Vue synthétique de l'année scolaire en cours. Affiche les KPIs principaux
de l'établissement : effectifs, formateurs, classes, finances.
Tableau de bordVue synthétique de l'année scolaire en coursApprenants inscrits512Formateurs actifs42CDI 28 · CDD 14Classes ouvertes18Solde banques14,2 MFCFA · 4 comptesEffectifs par classe
Élément
Effet
Permission
Carte "Solde banques"
Cliquable (si BankAccountsView) → redirige vers /banques.
bankaccounts.view
Bandeau "Quota proche"
Apparaît si l'école atteint ≥ 90% d'un quota d'abonnement (élèves, formateurs…).
Auto
Lien "Tableau de bord avancé"
Sidebar — KPIs détaillés (taux réussite, recouvrement, apprenants à risque…).
dashboard.view
Les cartes affichent les valeurs en temps réel. Elles sont
recalculées à chaque chargement de la page.
Le cahier de textes dématérialise le registre pédagogique
officiel : chaque séance y est consignée (titre, déroulement, devoirs donnés
et échéance, référence au programme), soumise à la direction pour visa, puis
consultable par les parents. Les séances sont pré-générées automatiquement à
partir de l'emploi du temps, l'enseignant complétant simplement le contenu ;
une séance ponctuelle (« ad hoc ») peut aussi être créée à la main.
Le module est activé par le flag de plan ModuleCahierTextes.
Sans ce flag, les routes /cahier-textes* ne sont pas accessibles.
Côté enseignant — saisie des séances
/cahier-textescoursebook.view
La page présente la semaine en cours (navigation semaine précédente /
suivante / aujourd'hui). Pour chaque séance, l'enseignant renseigne :
le titre et le déroulement du cours ;
les devoirs donnés et leur échéance ;
la référence au programme MEN : un sélecteur propose les
chapitres du référentiel officiel pour le couple (niveau de la classe ×
matière) ; si l'école n'a pas de référentiel chargé, l'enseignant saisit
librement son code de programme.
Cycle de vie d'une séance : Brouillon →
Soumise (à la direction) → Visée. Une séance
non soumise est automatiquement verrouillée à J+7 par un
traitement nocturne (elle reste lisible mais n'est plus modifiable), afin de
garantir la valeur probante du registre.
La direction consulte les séances soumises et appose son visa
(équivalent de la signature du chef d'établissement sur le cahier papier).
Lorsqu'une séance déjà visée doit être corrigée, l'enseignant ne peut pas la
modifier directement : il envoie une demande de correction
motivée. La séance passe au statut Correction demandée ; la
direction approuve (la séance redevient modifiable) ou rejette la demande. Ce
circuit signé conserve la traçabilité de toute modification après visa.
La page /cahier-textes/stats donne à la direction une vue de
suivi : taux de remplissage et de visa par classe et par enseignant sur la
période.
Côté parent — consultation
/portail/cahier-textesParent
Depuis leur portail, les parents consultent en lecture seule les séances
visées des classes de leurs enfants : contenu du cours, devoirs à faire et
échéances. C'est le prolongement numérique du cahier de textes consultable à
la maison.
Lien inspecteur (accès externe)
/cahier-textes/inspecteur/{token}Accès anonyme par jeton
Pour un contrôle pédagogique externe, l'école génère un lien à
jeton donnant un accès en lecture seule, sans compte, à un périmètre
de séances. Le jeton est révocable et peut être limité dans le temps : il
permet à un inspecteur de l'enseignement de vérifier le cahier de textes à
distance sans identifiant ScolaPro.
Le module Admissions couvre l'ensemble de la chaîne de
recrutement et d'inscription des élèves, de la première candidature jusqu'à
la création de l'inscription définitive. Il se compose de trois sous-modules
livrés en mai 2026 :
Pré-inscription en ligne — formulaire public sans
compte requis, choix du mode de finalisation (Mobile Money en ligne ou
paiement au secrétariat).
Réinscription en ligne — campagne annuelle pilotée
depuis l'AdminEcole, confirmation et paiement de l'acompte par le parent
depuis le portail.
Concours d'entrée — pour les écoles sélectives :
inscriptions, convocations anonymisées, saisie de notes par jury,
classement et publication des résultats.
Le module est activé par défaut sur les plans tarifaires
STANDARD, PREMIUM et ENTERPRISE.
Le sous-module Concours d'entrée est une option premium
des plans PREMIUM et ENTERPRISE
(flag ModuleAdmissionsConcours).
Le formulaire public est accessible à toute famille qui visite le
sous-domaine de l'école. Aucun compte n'est requis. Activation manuelle par
l'AdminEcole via le flag PreInscriptionPubliqueActive (en V1,
configuré directement en base ou via un seeder).
Côté parent
Ouvre la page /pre-inscription depuis le site de l'école
ou depuis le lien proposé sur la page de connexion.
Remplit le formulaire en 5 sections : identité du candidat, cible
scolaire, responsable légal, pièces jointes (5 max, 10 Mo par fichier,
formats PDF, JPEG, PNG, HEIC), choix du mode de finalisation.
Choisit son mode de finalisation quand l'école
applique des frais de dossier :
Payer en ligne avec Mobile Money — redirection
vers le fournisseur (Wave, Orange Money, etc.) ;
Finaliser au secrétariat — règlement en espèces,
chèque ou virement, à effectuer sous 7 jours.
Reçoit une référence courte (ex. ADM-A4F9-23) et un lien
de suivi anonyme par email.
Côté école — workspace pré-inscriptions
Liste filtrable accessible à /admissions/pre-inscriptions.
Filtres : statut, type de candidature, recherche libre. Un onglet dédié
« À finaliser sur place » regroupe les dossiers en attente de
règlement au secrétariat, triés par échéance ascendante (la file de travail
du matin).
Actions disponibles sur une fiche dossier, selon son statut :
Demander des pièces — sélectionne les pièces
manquantes (extrait de naissance, photo, etc.) et message libre au parent.
Bascule en Demande de pièces.
Enregistrer le paiement sur place — uniquement sur les
dossiers en attente de finalisation. Modal avec montant, moyen
(ESPECES / CHEQUE / VIREMENT), référence et observation. Génère
un numéro de reçu unique.
Valider — confirme le dossier (passe en
Validée) prêt à être converti en inscription.
Refuser — motif obligatoire, communiqué au parent.
Convertir en inscription — créé un Student,
un Parent, un Enrollment et les
StudentDocument à partir des pièces. Transaction atomique.
Une campagne de réinscription est créée à l'approche de la fin d'année
scolaire pour reconduire automatiquement les inscriptions vers l'année
suivante.
Côté AdminEcole
Crée une campagne en brouillon via /admissions/reinscriptions : libellé, année source, année cible, période d'ouverture, mode et montant de l'acompte demandé.
Active la campagne : le système crée un dossier
AdmissionCandidate Kind=Reinscription par élève actif de
l'année source, avec projection automatique de la classe N+1 (via
Classroom.NextLevelId). L'AdminEcole peut compléter
manuellement les rares cas sans projection automatique.
Suit l'avancement dans le tableau de bord :
compteurs par statut (confirmées, refusées, en attente), répartition
par classe cible, total des acomptes encaissés (en FCFA).
Clôture la campagne à la fin de la période — les
propositions non confirmées passent automatiquement en
Expirée. Une clôture automatique tourne tous les soirs si la
date de fermeture est dépassée.
Côté parent — portail
Sur /portail/reinscriptions, le parent connecté voit une
carte par enfant éligible avec la classe actuelle, la classe proposée,
le montant d'acompte demandé et la date limite de confirmation.
Trois actions possibles :
Payer en ligne — Mobile Money, création
automatique de l'inscription dès réception du paiement.
Régler au secrétariat — réservation pour 7 jours,
paiement en espèces/chèque sur place ; l'inscription est créée à
l'encaissement.
Refuser — motif libre (déménagement, choix d'un
autre établissement…), utile à l'école pour l'analyse marketing.
Pour les écoles privées qui sélectionnent à l'entrée d'une classe
charnière (6e, 7e, lycée…). Couvre la chaîne complète de la création de
la session à la conversion des admis en pré-inscriptions validées.
Création et préparation
Crée le concours via /admissions/concours : libellé,
date des épreuves, période d'inscriptions, capacité totale, frais
d'inscription au concours, classes cibles, mention minimum d'admission
(optionnel).
Définit les épreuves : matière, ordre, durée,
coefficient, barème (par défaut sur 20).
Définit les salles d'examen avec leur capacité.
Ouvre les inscriptions — les candidats peuvent
alors déposer leur dossier (formulaire public identique à 3.1, avec
paiement Mobile Money ou secrétariat).
À la fin de la période, clôture les inscriptions
puis génère les convocations : attribution automatique
d'un code candidat anonyme (format
S{École}-C{Concours}-{Séquence}), d'une salle et d'un
numéro de table par tri alphabétique et distribution round-robin.
Jour J — saisie des notes anonymisée
Les jurys saisissent les notes sur
/admissions/concours/{id}/saisie-notes/{epreuve}. L'interface
n'affiche que le code candidat — jamais le nom, le
prénom, la date de naissance ou la photo. Cette garantie d'anonymisation
est verrouillée au niveau du DTO côté serveur, pas uniquement de l'UI.
Champs saisis : note ou case Absent. Le service valide le
respect du barème. Bouton Valider par épreuve : verrouille les
notes et recalcule le classement intégral du concours (idempotent, tie-break
stable sur les ex æquo).
Résultats et conversion
Visualise les résultats sur
/admissions/concours/{id}/resultats — classement complet
avec décision (Admis, Liste d'attente, Refusé)
et classe affectée pour chaque admis. Les noms restent masqués jusqu'à
la publication.
Bouton Publier les résultats : lève l'anonymat,
permet l'envoi du mailing aux candidats.
Bouton Convertir les admis en pré-inscriptions :
les Admis deviennent des candidatures pré-inscription validées,
prêtes à être converties en Student + Enrollment par le
pipeline standard.
En V1, la génération PDF des convocations et le mailing automatique
des résultats ne sont pas livrés — l'AdminEcole imprime depuis le HTML
et fait l'envoi manuel. Ces deux fonctions arriveront en V2 (génération
PDF déjà documentée dans docs/34).
Liste paginée et recherchable de tous les apprenants actifs de l'école.
Permet de filtrer par classe et par situation, de créer un nouvel apprenant,
ou d'ouvrir une fiche détaillée.
Match sur Matricule, Nom, Prénom (insensible à la casse).
students.view
Pagination
50 apprenants par page (configurable).
students.view
Fiche apprenant
/eleves/{id}students.view
Vue 360° de l'apprenant : état civil, parents responsables, évolution
des notes par matière, planning hebdomadaire de sa classe (chantier H.2),
historique des paiements de frais.
DIARRA AïssataMatricule ASK-2026-001 · 6ème B · Externe… ModifierBulletin PDFArchiverÉvolution des notes par matièrePlanning de la classeSem. du 12/05 ‹ ›JourHoraireMatièreFormateurLundi08:00 – 09:30MathématiquesM. SangaréMardi10:00 – 11:30FrançaisMme Diabaté
Bouton
Effet
Permission
… Modifier la fiche
Popup d'édition — civilité, nom, prénom, date naissance, situation, etc.
students.edit
Générer le bulletin
Crée + télécharge le PDF du bulletin courant.
bulletins.generate
Archiver l'apprenant
Popup motif (changement école / déménagement / décès / autre) → l'apprenant disparaît
des listes courantes mais reste désarchivable.
students.archived.edit
+ Ajouter un parent
Popup avec onglets Recherche (rattacher un parent existant) /
Nouveau (créer un parent + rattacher).
students.edit
(sur ligne parent)
Détache le parent de cet apprenant. Le parent reste si d'autres enfants sont liés.
students.edit
← Retour à la liste
Navigue vers /eleves.
students.view
‹ Sem. préc. / Sem. suiv. ›
Navigation hebdomadaire dans le planning de la classe.
attendances.view
Apprenants archivés
/eleves/archivesstudents.archived.view
Liste des apprenants ayant quitté l'école (changement, déménagement, abandon).
Ils sont conservés pour historique et peuvent être désarchivés à tout moment.
Bouton
Effet
Permission
↩ Désarchiver
Réintègre l'apprenant dans les listes actives — il faut ensuite l'inscrire à une classe.
students.archived.edit
Apprenants à risque
/eleves/a-risquestudents.view
Liste des apprenants identifiés comme étant en difficulté : moyenne basse,
absences fréquentes, frais impayés. Sert d'alerte précoce pour intervention.
Classes
/classesclassrooms.view
Liste des classes ouvertes pour l'année en cours, par cycle et niveau.
Cliquer sur une classe ouvre la fiche détaillée avec la liste des apprenants
inscrits.
Bouton
Effet
Permission
Carte classe
Ouvre /classes/{id} — fiche classe avec apprenants.
classrooms.view
+ Nouvelle classe
Popup création — code, libellé, niveau, capacité, frais.
classrooms.edit
Passage en classe supérieure
/promotionstudents.promote
Outil de fin d'année pour faire passer en classe supérieure les apprenants
ayant validé leur année (moyenne ≥ seuil défini par classe). Les autres
redoublent automatiquement.
Workflow type — Passage de cohorte
Sélectionner Année source (généralement l'année courante)
Sélectionner Année cible (nouvelle année à créer/déjà créée)
Clic Prévisualiser — affiche pour chaque apprenant : moyenne, seuil, statut admis/redoublant
Vérifier les cas litigieux (moyennes proches du seuil)
Clic Exécuter le passage — crée les nouvelles inscriptions, archive les sortants
Bouton
Effet
Permission
Prévisualiser
Calcule la moyenne annuelle pour chaque apprenant et compare au seuil
de sa classe. Aucune modification BDD.
students.promote
Exécuter le passage
Lance la promotion réelle : nouvelles Enrollment, redoublants à la même classe,
opération idempotente.
Saisie dynamique des notes par (classe × matière × période).
Modèle flexible : N devoirs + N examens, l'enseignant ajoute des colonnes
au besoin. Une fois validée, une note est verrouillée (sauf intervention
AdminEcole).
Saisie des notes6ème B ▾Mathématiques ▾2026 ▾Mai ▾+ Devoir+ ExamenApprenantD1D2D3E1 (verr.)MoyenneDIARRA Aïssata1412151614.5TRAORÉ Mamadou9101189.5Valider Devoir 1Valider Examen 1
Bouton
Effet
Permission
+ Devoir
Ajoute une nouvelle colonne devoir vide. Coefficient 1 par défaut.
grades.edit
+ Examen
Ajoute une nouvelle colonne examen vide. Coefficient 2 par défaut.
grades.edit
Cellule de note
Saisie en sortie de focus (Tab/Entrée) — sauvegarde automatique. Recharge moyenne.
grades.edit
Valider Devoir N / Examen N
Verrouille toutes les notes de cette colonne pour la classe — modification réservée AdminEcole ensuite.
grades.edit
(verr.) (header colonne)
Indique qu'au moins une note de la colonne est validée.
—
Note Mali / AOF. Les notes sont sur 20. La moyenne pondérée
utilise les coefficients (Devoir = 1, Examen = 2 par défaut, modifiable
par matière). Le seuil de passage (généralement 10) est défini par classe.
Bulletins
/bulletinsbulletins.view · bulletins.generate
Génération des bulletins scolaires en PDF avec QR code de vérification.
Possibilité de générer en masse (toute une classe) ou pour un apprenant
unique. Notification automatique au parent par e-mail / SMS / WhatsApp.
Bouton
Effet
Permission
Générer pour 1 apprenant
PDF individuel avec moyennes par matière, rang dans la classe, appréciations.
bulletins.generate
Générer en lot (classe entière)
ZIP de tous les PDF d'une classe, période donnée. Notification parents incluse.
bulletins.generate
Word (.docx)
Variante Word pour édition manuelle si besoin.
bulletins.generate
QR code (au verso PDF)
Permet à un parent ou recruteur de vérifier l'authenticité via /bulletin/verifier.
Pointage des présences par session, orchestré par l'emploi du
temps (chantier H.2). Plus besoin de choisir manuellement classe + matière
— les sessions du jour sont pré-remplies depuis le Schedule de la classe.
Présences6ème B ▾13/05/2026Sessions prévues — Lundi 13 mai 202608:00 – 09:30MathématiquesM. SangaréEn cours10:00 – 11:30FrançaisMme Diabaté(verr.) Validée14:00 – 15:30Histoire-GéoM. CoulibalyÀ pointerMathématiques — 08:00–09:30N°ApprenantStatutMotif1DIARRA AïssataPrésent ▾2TRAORÉ MamadouAbsent ▾MaladieValider la session
Workflow type — Pointer une session
Sélectionner classe + date
Les sessions du jour s'affichent en cards (matière + créneau + formateur)
Cliquer sur la card de la session à pointer — la grille apprenants apparaît
Pour chaque apprenant : Présent / Absent / Retard / Excusé (sauvegarde automatique)
Renseigner un motif si Absent / Retard (champ texte libre)
Clic Valider la session — verrouille tous les pointages
Bouton
Effet
Permission
Card session
Sélectionne la session courante. Badge À pointer / En cours /
Validée indique l'état.
Verrouille tous les pointages de la session. Plus modifiable sauf AdminEcole.
attendances.edit
Calendrier
/calendrierdashboard.view
Vue calendrier mensuelle / hebdomadaire des événements scolaires :
conseils de classe, examens, vacances, réunions parents. Permet de
créer / modifier / supprimer des événements.
Bibliothèque
/bibliothequedashboard.view
Gestion des livres et des prêts aux apprenants. Inventaire des manuels
scolaires de l'école, suivi des emprunts en cours avec date de retour
prévue.
Bouton
Effet
Permission
Onglet Livres
Liste de tous les livres avec exemplaires totaux / empruntés.
dashboard.view
Onglet Emprunts en cours
Liste des prêts non rendus, triée par date de retour prévue.
dashboard.view
+ Ajouter un livre
Popup création — titre, auteur, éditeur, ISBN, nb exemplaires.
dashboard.view
↩ Marquer comme rendu
Clôt l'emprunt et incrémente les exemplaires disponibles.
dashboard.view
Formateurs
/enseignantsteachers.view · teachers.edit
Gestion du personnel enseignant et formateur. Liste avec tuiles
synthétiques, fiche détaillée à onglets, gestion des documents RH et
des supports pédagogiques partageables au portail parent.
Liste
Page /enseignants. Trois tuiles en haut indiquent
l'effectif total, le nombre de CDI et de
CDD. Deux onglets : En poste (par défaut) et
Archivés. Tableau triable avec barre de filtre par code,
nom, prénom ou niveau. Chaque ligne propose deux actions :
Fiche (ouvre le détail) et Archiver (réservé
aux profils habilités).
La colonne Salaire n'apparaît que pour les profils ayant
la permission teachers.salary.view (Administrateur école,
Comptable, RH). Les autres utilisateurs voient le tableau sans cette
colonne — utile pour des profils Direction pédagogique qui ne doivent
pas accéder aux rémunérations.
Création
Bouton + Nouveau formateur : code, nom, prénom, date de
naissance, niveau d'enseignement (avec auto-complétion), date d'embauche,
type de contrat (CDI / CDD), durée si CDD, salaire de base, email, téléphone.
Fiche détaillée
/enseignants/{id}
Accessible via le bouton Fiche de la liste. La page contient :
Header : avatar avec initiales, nom complet, code, type
de contrat, niveau. Badges Titulaire (si l'enseignant est titulaire
d'une classe) et Archivé (avec date et motif si applicable).
Boutons d'action : Modifier la fiche, Fiches de paie
(raccourci vers /paie pré-sélectionné sur l'enseignant),
Retour à la liste.
Tuiles d'indicateurs (6 KPI colorés) : Heures cette
semaine, Classes assurées, Matières enseignées, Élèves enseignés,
Ancienneté, et une 6ᵉ tuile d'alerte qui n'apparaît qu'à moins de 60 jours
de la fin du CDD (orange à 30-60 j, rouge si expiré).
Quatre onglets juste en dessous :
Onglet
Contenu
Visible si
Profil
État civil + Contrat (deux colonnes). Inclut les
lignes Salaire de base et Dernier net versé uniquement pour les profils
habilités.
Toujours (par défaut)
Emploi du temps
Planning hebdomadaire (tableau jour ×
horaire avec total des heures) + vue calendaire mensuelle avec pastilles
colorées par matière et légende.
Bouton Modifier la fiche sur la fiche détaillée → ouvre
une fenêtre d'édition embarquée (sans quitter la fiche). Champs : Nom,
Prénom, Niveau, Type de contrat, Date fin CDD, Salaire, Email, Téléphone.
Le code n'est pas modifiable.
Le champ Salaire est en lecture seule pour les
profils ayant teachers.salary.view mais pas
teachers.salary.edit (typiquement la Direction pédagogique).
Côté serveur, toute valeur de salaire envoyée par un client non habilité
est silencieusement ignorée — la protection ne dépend pas uniquement de l'UI.
Archivage
Bouton Archiver sur la liste → fenêtre avec motif
obligatoire (Départ volontaire, Fin de CDD, Retraite, Mutation, Décès,
Autre). L'enseignant n'apparaît plus dans les listes courantes. L'onglet
Archivés permet à l'Administrateur école de Désarchiver
ou Supprimer définitivement (saisie du mot SUPPRIMER pour confirmer).
Onglet Documents pédagogiques de la fiche enseignant.
Permet à l'enseignant (ou à l'Administrateur école) de téléverser ses
supports de cours, exercices, corrigés, fiches TP, supports audio/vidéo.
Formats acceptés : PDF, JPEG, PNG, Word, Excel,
PowerPoint, audio (MP3/WAV/OGG), vidéo (MP4/WebM), ZIP. Taille max :
25 Mo par fichier.
Pour chaque document, un mode de partage est choisi via le bouton
Partager :
Mode
Effet côté portail parent
Privé
Visible uniquement par l'enseignant (et l'Administrateur
école). Aucune publication parent.
Toute la classe
Tous les parents des élèves de la classe
rattachée accèdent au document.
Élèves sélectionnés
L'enseignant coche individuellement les
élèves destinataires (recherche live par nom / matricule / classe).
Utile pour un travail différencié.
Chaque document affiche un badge indiquant son mode et la date de
publication. Actions : Voir (aperçu nouvel onglet),
Télécharger, Partager,
Supprimer.
Onglet Documents RH de la fiche enseignant. Visible
uniquement par les profils Administrateur école et RH. L'enseignant
lui-même n'y accède pas par défaut — ces pièces appartiennent à
l'établissement employeur.
Catégories supportées : CV, Diplôme, Contrat de travail, Avenant,
Pièce d'identité, Certificat médical, Carte INPS, RIB, Casier judiciaire,
Attestation travail antérieur, Lettre de départ, Autre.
Pour chaque document : description libre, date d'expiration, indicateur
Renouvellement annuel (utile pour les pièces périssables :
certificat médical annuel, casier judiciaire de moins de 3 mois). Les
documents expirés sont mis en évidence en rouge.
Toute consultation et modification est tracée dans le journal d'audit
(RGPD / loi 064-2017 Mali). La suppression met le document en archive
logique ; il est purgé physiquement 30 jours après l'action.
Formats acceptés : PDF, JPEG, PNG, WebP. Taille max :
25 Mo par fichier.
Bulletin de paie
/paiepayslips.view · payslips.generate
Calcul automatique du bulletin de paie Mali / AOF (chantier P).
3 sections : Gains (salaire base + indemnités + heures
supplémentaires), Retenues salariales (INPS 3,6 % + ITS
progressif), Charges patronales (INPS 24 %, TL 1 %, CFE
3,5 %, TFP 2 %, TEJ 2 %).
Bulletin de paieM. Sangaré ▾2026 ▾Mai ▾AComplexe Scolaire ASKIACode ASK · Bamako · +223 76 12 34 56BULLETIN DE SALAIREMai 20261. GainsLibelléQuantitéTauxMontant (FCFA)Salaire de base150 000Heures supplémentaires8 h2 50020 000Indemnité loi 82/381 000TOTAL BRUT171 0002. Retenues salarialesINPS salarié3,6 %6 156ITS (impôt sur traitement et salaires)8 432TOTAL RETENUES14 588NET À PAYER156 412 FCFAGénérer & télécharger PDFEnregistrer en BDD
Bouton
Effet
Permission
Sélecteur formateur
Visible uniquement pour AdminEcole / Comptable. Un Formateur est lock sur sa propre fiche.
payslips.generate
Générer et télécharger le PDF
Persiste le bulletin en BDD + génère le PDF Mali (en-tête école personnalisé) + lance le téléchargement.
payslips.generate
Enregistrer en BDD seulement
Persiste sans télécharger le PDF.
payslips.generate
Télécharger mon bulletin
Visible uniquement pour le Formateur sur sa propre fiche. Génère le PDF sans persister.
Configuration globale de la paie par école — 3 onglets éditables :
taux fiscaux, catalogue d'indemnités, profils paie par formateur. Auto-bootstrap
des 14 indemnités historiques Mali (1973-2008) au premier accès.
14 indemnités Mali pré-remplies. Chaque ligne : code, libellé, type (Gain/Retenue),
mode (Fixe / % salaire base / % brut cumulé), valeur, imposable, INPS.
+ Nouvelle indemnité · Éditer · Désactiver/Réactiver · Supprimer
Profils enseignants
Pour chaque formateur : situation famille, nb enfants, sursalaire, indemnités fixes
(transport, nourriture, logement, responsabilité, prime caisse), avantages, avance.
Éditer (popup)
Emploi du temps
/emploi-du-tempsschedule.view · schedule.edit
Vue hebdomadaire des cours, par classe ou par formateur. Cliquer sur une
case vide ouvre un dialogue d'ajout (matière + formateur + créneau).
Bouton
Effet
Permission
Vue : Par classe / Par formateur
Bascule l'angle de la grille.
schedule.view
‹ Sem. préc. / Sem. suiv. ›
Navigation hebdo.
schedule.view
Case vide cliquée
Popup création slot — jour, heure début/fin, matière, formateur.
schedule.edit
Case occupée cliquée
Popup édition / suppression du slot.
schedule.edit
Heures effectuées
/planningschedule.view
Récapitulatif mensuel des heures de cours effectuées par chaque formateur.
Sert de base au calcul de la paie. Les heures > 100 h dans le mois sont
considérées comme heures supplémentaires.
Modifier libellé / banque (le solde est dérivé des mouvements).
bankaccounts.edit
Supprimer
Refusé si des mouvements existent (FK constraint).
bankaccounts.edit
Mouvements
/mouvementsmovements.edit
Journal des entrées/sorties d'argent (frais reçus, salaires versés,
fournisseurs, etc.). Chaque mouvement est rattaché à un compte bancaire
et impacte le solde calculé en temps réel.
Bouton
Effet
Permission
+ Nouveau mouvement
Popup — compte, type (Entrée/Sortie), montant, libellé, date, contrepartie.
movements.edit
Filtres période + compte
Filtre la liste et recalcule les totaux affichés.
movements.view
Export Excel
Exporte la liste filtrée au format .xlsx.
movements.view
Frais scolarité
/fraisschoolfees.edit
Suivi des frais d'inscription et de scolarité par apprenant. Encaissement
des paiements (cash, Mobile Money, virement). Génération de reçus PDF.
Envoie SMS/WhatsApp/Email au parent responsable (frais impayé).
schoolfees.edit
Plan de paiement et échéancier
À l'inscription, le parent choisit la périodicité de paiement
des frais de scolarité selon ses moyens. L'application en déduit un
échéancier — une suite d'échéances datées — qui permet de suivre
les retards et de déclencher les rappels automatiques.
Plan
Échéancier généré
Comptant
Un seul versement, à la date de fin des inscriptions.
Trimestriel
Trois versements, espacés d'un trimestre.
Mensuel (par défaut)
Une mensualité par mois (nombre de mensualités réglable, 9 par défaut soit septembre→juin).
Libre
Aucun échéancier figé : un solde annuel échéant en fin d'année, le parent paie quand il peut.
Le montant annuel n'est pas saisi : il est dérivé du barème de
la classe (frais de scolarité par période × nombre de mensualités). Le
point d'ancrage de la première échéance est la date de fin des
inscriptions de l'année scolaire.
Réglages par année (Administrateur école)
Dans /parametres/annees, carte Échéancier des frais :
réglez par année la date de fin des inscriptions (point d'ancrage)
et le nombre de mensualités (par défaut 9, modifiable). Si la date
de fin des inscriptions n'est pas renseignée, l'ancrage retombe sur la date de
début de l'année.
Sur la fiche apprenant, onglet Finances
Carte Plan de paiement : choisissez le plan puis cliquez
Générer l'échéancier. Le récap (montant annuel, solde, nombre
d'échéances en retard) s'affiche aussitôt.
Régénérer l'échéancier recrée les échéances après un
changement de plan. Par sécurité, l'opération est refusée si un versement a déjà
été encaissé (pour ne jamais effacer un paiement).
Le tableau des échéances indique la date d'échéance de chaque
versement et signale les échéances En retard (impayées et dont
la date est dépassée).
Rappels automatiques (email, SMS, WhatsApp)
Le service de notifications envoie au parent responsable, sur les canaux activés
dans /admin/saas/jobs :
un rappel avant échéance (3 jours avant la date due) ;
une relance dès qu'une échéance impayée dépasse sa date
d'échéance (au plus une relance tous les 25 jours).
Chaque envoi est tracé pour éviter les doublons. Si l'école coupe tous les
canaux, aucun rappel n'est envoyé.
Paramètres école
/parametressettings.edit
Identité de l'école : nom, code, logo, couleurs primaire/secondaire,
adresse, téléphone, email, devise. Ces infos s'affichent automatiquement
sur tous les documents générés (bulletins, paie, reçus).
Champ
Effet
Logo (upload PNG/SVG)
Affiché en haut sidebar + sur PDF bulletins/paie/reçus.
Couleur primaire (hex #RRGGBB)
Couleur des en-têtes, boutons, accents UI + bandeau "NET À PAYER" du bulletin de paie.
Couleur secondaire
Couleur des accents secondaires (charges patronales du bulletin, etc.).
Devise
FCFA par défaut. Apparaît sur les montants des PDF.
Vue d'ensemble de votre abonnement, de votre usage en temps réel et de
l'occupation de votre quota de stockage. Lecture seule — pour modifier
le plan, contactez l'éditeur (bouton Demander une mise à niveau
en bas de page).
Plan actuel
Carte du plan en cours : code (TRIAL / STARTER / STANDARD / PREMIUM /
ENTERPRISE), libellé, description, cycle de facturation (mensuel /
trimestriel / annuel), prix appliqué, date de début, prochaine échéance,
statut (Actif / En période d'essai / Suspendu).
Usage en temps réel
Quatre vignettes montrent l'usage actuel face aux quotas du plan :
Apprenants, Formateurs,
Utilisateurs, Classes ouvertes. Une barre
de progression colorée indique le pourcentage atteint :
Verte sous 70 %
Ambre entre 70 et 90 %
Rouge au-delà
Un quota à l'infini (∞) signifie illimité — typique des plans
ENTERPRISE.
Suivi du stockage
Carte dédiée Stockage :
Volume total occupé par les fichiers de votre école : photos
d'apprenants, documents apprenants, documents enseignants RH,
supports de cours pédagogiques.
Quota effectif (selon votre plan, éventuellement personnalisé par
l'éditeur).
Jauge horizontale colorée et bandeau d'alerte adaptatif.
Trois niveaux d'alerte :
Seuil
Couleur
Effet
80 – 100 %
Ambre
Alerte préventive : pensez à
supprimer les anciens fichiers ou contactez l'éditeur pour augmenter
votre quota.
100 – 120 %
Rouge
Les uploads continuent
mais le dépassement sera facturé sur votre
prochaine échéance (~1000 FCFA / Go supplémentaire).
Au-delà de 120 %
Rouge bloquant
Les nouveaux
uploads sont refusés tant que le quota n'est pas
augmenté. Protection brutale pour éviter une explosion de coûts.
Un repli Voir le détail par module permet de comprendre
la répartition : photos d'apprenants, documents apprenants, documents
RH formateurs, documents pédagogiques.
Fonctionnalités incluses
Liste des modules activés par votre plan. Une coche verte indique qu'un
module est inclus, une croix grise qu'il ne l'est pas. Les modules grisés
sont disponibles en passant à un plan supérieur.
Demander un changement de plan
Bouton Demander une mise à niveau en bas de page :
envoie une demande à l'éditeur qui vous recontactera pour ajuster votre
abonnement ou votre quota de stockage selon vos besoins.
Années scolaires
/parametres/anneesAdminEcole
L'année scolaire est la colonne vertébrale de tous les
écrans métier : les inscriptions, les classes ouvertes, la saisie de notes,
les bulletins, les frais de scolarité et les statistiques sont toujours
rattachés à une année. Une seule année peut être « en cours »
à la fois — c'est elle qui s'affiche par défaut dans les sélecteurs
partout dans l'application.
Créer une nouvelle année
Formulaire en haut de la page :
Code : libellé court au format 2024-2025
(vérifié unique pour l'école)
Date de début : généralement le 1er septembre
Date de fin : généralement le 30 juin de l'année
suivante (ou 31 juillet selon le calendrier local)
Bouton + Créer l'année. L'année est immédiatement
disponible dans tous les sélecteurs sans redémarrage. Vous
pouvez en créer plusieurs à l'avance pour planifier l'inscription.
Marquer une année comme « en cours »
Sur la ligne de l'année à activer, cliquez sur le bouton
Définir comme courante. L'application :
Met à false le drapeau « courante » de l'année
précédemment active (transition atomique, pas de risque de double-courante).
Bascule tous les écrans qui filtrent par défaut sur l'année courante
(tableau de bord, listes d'élèves, frais scolaires, bulletins).
Conserve l'historique : l'ancienne année reste consultable via les
filtres de chaque écran.
Quand basculer ? Typiquement à la rentrée, une fois
que la promotion en bloc des élèves a été effectuée (cf. Promotion fin
d'année dans le menu Pédagogie) et que les nouvelles inscriptions
sont saisies. Vous pouvez préparer l'année N+1 plusieurs semaines à
l'avance et ne basculer qu'au jour J.
Comparaison avec l'année précédente (N-1)
Tableau en bas de page : affiche côte à côte l'année en cours
et l'année juste précédente, avec :
Effectif total inscrit
Frais de scolarité encaissés
Delta en valeur absolue et en pourcentage (vert
pour une hausse, rouge pour une baisse)
Indicateur utile pour mesurer rapidement la dynamique d'année en année
sans avoir à ouvrir le module Rapports.
Bonnes pratiques
Ne supprimez jamais une année écoulée : les bulletins,
notes et frais historiques y sont rattachés. Une année non courante est
conservée en lecture seule.
Une seule année par cycle annuel. Si votre
établissement fonctionne en semestres, l'année reste l'unité — les
semestres sont gérés via les Périodes du module Bulletins.
Pour basculer l'année courante en cours de route
(rare), assurez-vous que toutes les saisies de notes / frais en attente
ont été finalisées sur l'année sortante.
Magasin / Fournitures
/fournituresAdminEcole · MagasinierNouveau mai 2026
Le module Magasin / Fournitures gère le catalogue d'articles
revendus aux élèves (tenues, manuels, kits EPS, fournitures de bureau),
les variantes (taille, couleur), le stock
avec seuils d'alerte, la caisse de vente (comptant /
à crédit / inclus dans le forfait inscription) et les
consommables internes (craie, marqueurs…) sortis sans
facturation. Cf. docs/29-Module-Fournitures.md.
Catalogue
Page /fournitures : grille des articles avec recherche
plein-texte et filtre par catégorie. Chaque article a une vignette, un
prix unitaire FCFA, un stock courant et une indication actif/inactif.
Le bouton + Nouvel article ouvre /fournitures/nouveau
(formulaire détaillé : nom, catégorie, prix, image, variantes initiales).
Stock
Page /fournitures/stock avec 2 onglets :
Articles en stock : tableau triable par disponibilité,
alerte rouge sous le seuil. Bouton Approvisionner pour
enregistrer une entrée (quantité + référence fournisseur + prix d'achat).
Consommation interne : sortie d'articles consommables
pour usage école (craie distribuée aux classes, marqueurs au directeur…)
sans encaissement. Tracé dans l'historique des mouvements.
Historique des mouvements
Chaque entrée et sortie est journalisée : type (achat / vente / consommation
/ ajustement / inventaire), quantité, utilisateur, date, référence. Filtrable
par article et période sur la page /fournitures/rapports.
Caisse
Page /fournitures/vente. Workflow type « tablette caisse » :
Recherche de l'élève par matricule ou nom → fiche pré-affichée avec
classe et solde frais scolarité.
Ajout des articles au panier (variantes choisies dans un picker).
Le total se met à jour en temps réel.
Choix du mode de paiement :
Comptant : encaissement immédiat (espèces /
Mobile Money), ticket imprimable.
À crédit : ajout au solde frais de l'élève,
à recouvrir avec les prochaines échéances.
Forfait inscription : déduction de la ligne
Fournitures incluse dans le forfait annuel (si applicable).
Validation transactionnelle (verrou pessimiste Serializable) :
le stock est décrémenté de façon atomique — pas de double-vente
possible sur le même lot.
L'historique des ventes est dans /fournitures/ventes :
filtres par date, élève, mode de paiement ; ré-impression du ticket ;
annulation possible (avec re-crédit stock) tant que la vente n'est pas
clôturée comptablement.
Rapports
Page /fournitures/rapports : 4 KPIs (chiffre d'affaires
du mois, articles en alerte, top 5 articles vendus, taux de rotation
moyen) + 4 cartes secondaires (consommation interne, articles en
rupture, encaissements vs crédit, statistiques par catégorie).
Rôle dédié
Un rôle Magasinier est livré avec le module : accès
en lecture/écriture aux pages /fournitures/* et à la caisse,
sans accès aux modules sensibles (notes, paie, comptabilité).
Activable par l'AdminEcole dans /utilisateurs.
Lettres types
/lettresAdminEcole · SecrétariatNouveau mai 2026
Le module Lettres types fournit 24 modèles de courriers
standards prêts à l'emploi (certificat de scolarité, convocation de parent,
attestation de réussite, contrat de travail CDD/CDI, attestation de travail,
note de service, etc.) avec pré-remplissage automatique
des informations (élève, classe, parent, formateur, école) et
génération PDF avec l'en-tête de l'école. Envoi
multi-canal : téléchargement, Email avec PJ, WhatsApp (lien temporaire),
SMS (lien court). Cf. docs/30-Module-Lettres-Types.md.
Bibliothèque
Page /lettres : grille des 24 modèles regroupés en
4 catégories — Vie scolaire élève (10 modèles),
Personnel / RH (7 modèles), Administration externe
(4 modèles), Communications internes (4 modèles). Recherche
plein-texte sur libellé, code ou description. Cliquer sur une carte
ouvre l'écran de génération.
Générer une lettre
Page /lettres/{id}/generer :
Choisir le mode :
Lettre pré-remplie : les variables (nom élève,
classe, date…) sont substituées dans le modèle. Le corps est complet,
vous n'avez plus qu'à imprimer/envoyer.
Papier à en-tête : seul l'en-tête de l'école
est imprimé, le corps reste blanc pour saisie manuscrite.
Remplir le formulaire dynamique (les variables sont définies par
modèle : {{eleve_nom}}, {{motif}}, etc.).
Les variables manquantes sont signalées en rouge dans le PDF généré.
Cliquer sur Télécharger le PDF, ou utiliser un des
3 boutons d'envoi : Email (PJ jointe), WhatsApp ou
SMS (lien temporaire valable 24h).
Raccourci depuis la fiche élève / formateur
Un bouton ✉ Lettres est présent dans la barre
d'actions de chaque fiche élève (/eleves/{id}) et formateur
(/enseignants/{id}). Il ouvre un picker filtré sur la
catégorie pertinente (Vie scolaire élève ou Personnel)
et déclenche le pré-remplissage automatique des variables
eleve_* / enseignant_* / parent_*
/ classe_* à partir de la fiche.
Personnaliser un modèle
Page /parametres/lettres (AdminEcole uniquement) :
liste des 24 modèles standards + vos modèles personnalisés. Bouton
Éditer pour modifier le contenu HTML d'un modèle.
Les modèles standards (Standard) peuvent être édités mais leur
Code reste verrouillé (utilisé par les raccourcis applicatifs).
Pour partir d'un modèle existant et créer une variante personnelle,
utilisez le bouton Dupliquer.
Variables disponibles — les modèles utilisent une syntaxe
{{nom_variable}}. Les variables auto-remplies les plus
courantes : eleve_nom, eleve_prenom,
eleve_matricule, eleve_classe,
eleve_date_naissance, parent_nom,
parent_telephone, enseignant_nom,
enseignant_code, ecole_nom,
ecole_adresse, annee_scolaire, date.
Configuration de l'en-tête
L'en-tête PDF (logo, nom école, adresse, téléphone, couleur primaire,
position du logo) est partagé avec les bulletins et les
fiches de paie. Configuration dans /parametres onglet
Logo & identité.
Fiche apprenant (vue en onglets)
/eleves/{id}AdminEcole · Secrétariat · EnseignantRefonte mai 2026
La fiche apprenant a été réorganisée en 6 onglets pour
faciliter la navigation entre les différentes facettes du dossier de l'élève :
Identité (onglet par défaut) — état civil, parents
rattachés (avec badges « Responsable » et nombre d'enfants à l'école pour
les fratries), boutons d'action (édition, archivage, envoi message au parent,
génération bulletin).
Scolarité — graphique d'évolution des notes par matière
sur l'année en cours + planning hebdomadaire de la classe.
Finances — récap des frais scolaires de l'année :
3 tuiles KPI : Total dû, Payé, Solde restant
(avec couleur rouge si solde > 0)
Barème de la classe (frais d'inscription + scolarité mensuelle)
Tableau détaillé des échéances mensuelles avec statut Payé /
Partiel / Impayé, date paiement, moyen utilisé et numéro de reçu
Boutons « Gérer les frais » et « Enregistrer un paiement » (selon
permission schoolfees.edit)
Documents — pièces justificatives de l'apprenant (acte
de naissance, photo, certificats, etc.). Cf. section Documents officiels.
Lettres — historique des lettres générées pour cet élève :
Bouton « Nouvelle lettre » qui ouvre le picker pré-filtré
sur la catégorie Vie scolaire élève (10 modèles disponibles)
Une ligne par action — si vous téléchargez puis envoyez par email,
vous voyez les 2 actions tracées
Communication — historique des messages envoyés aux
parents (Email, SMS, WhatsApp) avec statut d'envoi, sujet, contenu et
message d'erreur en cas d'échec. Cf. section Communications parents.
Performance — les onglets Finances, Lettres et Communication
chargent leurs données à la demande (lazy-load au premier clic), pas au
chargement initial de la fiche. Pas de pénalité sur les profils basiques qui
restent sur Identité/Scolarité.
Fiche formateur (onglet Finances + Lettres)
/enseignants/{id}AdminEcole · DRHEnrichissement mai 2026
La fiche formateur compte désormais 5 onglets :
Profil · Emploi du temps · Documents pédagogiques · Documents RH · Finances ·
Lettres.
Onglet Finances (paie annuelle)
Visible uniquement avec la permission teachers.salary.view
(profil AdminEcole et DRH par défaut). Affiche pour l'année
civile en cours :
3 tuiles KPI :
Total brut (bleu) — somme des salaires bruts
Total net versé (vert) — après cotisations salariales
Tableau cotisations salariales versées (INPS + ITS retenu) + coût
employeur total (= Brut + Charges patronales)
Bouton « Voir le détail mensuel » qui ouvre la page Paie
filtrée sur ce formateur
Onglet Lettres (historique des courriers RH)
Historique des lettres générées pour ce formateur
(catégorie Personnel / RH : contrats CDD/CDI, attestation de travail,
certificat de salaire, convocation entretien, etc.). Bouton
« Nouvelle lettre » qui ouvre le picker pré-filtré sur la
catégorie Personnel — les variables {{enseignant_nom}},
{{enseignant_code}}, {{enseignant_email}},
{{enseignant_telephone}} sont auto-remplies depuis la fiche.
Espace réseau (compte AdminGroupe)
Réservé aux promoteurs propriétaires de plusieurs
établissements. Le compte AdminGroupe n'est pas rattaché à une école précise
mais à un groupe scolaire (réseau). Au login, il atterrit
sur /groupe et dispose d'un menu spécifique
(Dashboard / Comparatif / Écoles).
Dashboard agrégé du réseau
Synthèse en temps réel de toutes les écoles du réseau :
Tableau « Détail par école » qui ventile ces KPIs
école par école, avec un bouton « Entrer » par ligne.
Comparatif inter-écoles
Page /groupe/comparatif avec sept KPIs en regard sur l'année
scolaire courante :
Effectifs apprenants non archivés.
Taux de recouvrement scolarité.
Taux de présence sur 30 jours.
MRR : moyenne mensuelle des paiements 6 derniers mois.
Ratio élèves / enseignant.
Moyenne générale des notes sur 20.
Taux de réussite (bulletins avec moyenne ≥ 10).
Mise en page :
Bandeau 7 KPIs réseau (moyennes).
Six cartes podium « Top 3 » par KPI (effectifs,
recouvrement, présence, MRR, moyenne, réussite) avec la 1ère place dorée.
Carte focus avec sélecteur de KPI et bar chart.
Tableau leaderboard détaillé : pour chaque école,
rang (#1 doré, dernier rouge), valeur, écart vs moyenne réseau colorisé
(+vert / −rouge), et sparkline 6 mois en SVG inline.
Entrer dans une école (vue promoteur)
Le promoteur clique sur le bouton « Entrer » à droite
de n'importe quelle école active de son réseau (dashboard ou liste des
écoles). Cela bascule immédiatement vers le dashboard de cette école avec
un accès AdminEcole complet en lecture-écriture :
Tous les menus école sont accessibles (apprenants, notes, bulletins,
finances, paramètres, etc.).
Le promoteur peut modifier à souhait n'importe quelle
donnée — il est propriétaire de l'école.
Un bandeau violet « Vue réseau » reste affiché en
permanence en haut de l'écran avec le nom de l'école visitée et un lien
« Quitter la visite » qui revient à /groupe.
Toutes les modifications sont auditées sous l'identité réelle du
compte AdminGroupe (avec le tenant impersonné dans l'audit log).
Sécurité : un AdminGroupe ne peut entrer que dans les
écoles de son propre réseau — toute tentative cross-groupe est
bloquée côté serveur avec un 403.
Bibliothèque : catalogue externe et rédaction
Importer des manuels libres (Wikibooks, OpenLibrary)
Depuis /bibliotheque/recherche-externe, on peut piocher des
manuels scolaires directement dans des bases publiques :
Wikibooks (FR) — manuels libres en français.
OpenLibrary — métadonnées + PDF Internet Archive.
URL manuelle — coller le lien d'un PDF connu pour
l'importer directement.
Cinématique : saisir la recherche → choisir le provider → cliquer
« Importer » sur un résultat. Le PDF est téléchargé, stocké dans le
quota de l'école, et apparaît dans le catalogue interne avec un badge
« Externe » et la source. Visionneuse PDF.js intégrée pour consultation
en ligne sans téléchargement.
Rédiger ses propres manuels scolaires
Le module Manuels auteur permet à un enseignant ou
directeur d'écrire un manuel scolaire complet directement dans
l'application.
Création et édition
Depuis /bibliotheque/mes-manuels :
Cliquer « Nouveau manuel ».
Saisir titre, matière, niveau, description.
Ouvrir l'éditeur — un éditeur bloc-WYSIWYG (EditorJS) avec :
Titres hiérarchiques (h1, h2, h3).
Listes à puces et numérotées.
Citations, blocs de code, avertissements.
Images (upload direct, redimensionnement).
Tableaux.
Formules mathématiques KaTeX (LaTeX inline).
Délimiteurs et surligneur.
Auto-save toutes les 30 secondes ; bouton « Enregistrer » manuel.
Versions
Chaque sauvegarde crée une nouvelle version (révision
auto-incrémentée). On peut revenir à une version antérieure depuis
l'onglet « Versions » de la fiche manuel.
Génération PDF
Bouton « Générer le PDF » — produit un PDF officiel
(QuestPDF) avec page de couverture (titre + auteur + école), sommaire
automatique, numérotation des pages, en-tête et pied de page. Le PDF est
stocké dans le quota de l'école et téléchargeable depuis la fiche.
Publication
Bouton « Publier » — popup avec choix de visibilité :
École uniquement — visible à tous les utilisateurs
de votre école.
Groupe scolaire (uniquement si votre école appartient
à un groupe) — visible à toutes les écoles du réseau.
Catalogue OER public — soumission à modération
AdminCentral. Si approuvé, le manuel est visible à toutes les écoles
ScolaPro ; sinon, vous recevez un commentaire de rejet.
Services numériques (portail parent)
Si votre école active les services numériques ScolaPro pour les parents,
une redevance mensuelle de 1 000 à 2 000 FCFA par enfant
est facturée au parent pour l'accès au portail (notifications push,
bulletins en ligne, suivi temps réel des présences et des notes).
Côté parent (portail)
Depuis /portail/services-numeriques :
Voir le tarif appliqué par l'école pour vos enfants.
Activer ou désactiver l'abonnement pour chaque enfant.
Consulter l'historique des factures mensuelles avec statut
(En attente / Payée).
Au paiement de la facture mensuelle de scolarité (Mobile Money,
espèces, virement), le frais numérique est automatiquement
marqué payé et la portion correspondante est reversée à ScolaPro
par split bancaire (Wave natif, Orange Money applicatif).
Côté école (AdminEcole)
Depuis /parametres/services-numeriques :
Voir la liste des parents ayant activé le service.
MRR estimé du mois (revenu mensuel récurrent).
Configurer le tarif appliqué à votre école (sinon, le tarif du plan
tarifaire SaaS s'applique).
Sur le reçu mensuel de scolarité, la ligne « Frais
numérique ScolaPro » apparaît séparément du montant scolarité pour la
transparence parent.