SINI School Management — Manuel utilisateur

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.

Rapports trimestriels

/rapports/trimestriels QuarterlyReportsView AdminEcole · Comptable

Génération automatique d'un rapport PDF par trimestre (T1/T2/T3) qui synthétise :

Cycle de vie : DraftPublishedArchived. À la publication, une notification est envoyée à toute l'équipe et un événement est ajouté au calendrier de l'école.

Export DGI Mali

/declarations/dgi DgiExportView AdminEcole · Comptable

Génération du fichier déclaratif annuel pour la Direction Générale des Impôts au format Excel multi-onglets :

Cycle DraftSubmittedArchived. 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 OHADA

/parametres/ma-signature DocumentsSign AdminEcole (Directeur)

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 :

Comptabilité SYSCOHADA

/comptabilite ComptaView AdminEcole · Comptable

Plan comptable SYSCOHADA école seedé automatiquement (~30 comptes essentiels) + écritures comptables avec validation stricte Σ débit = Σ crédit. Quatre pages :

Portail parent enrichi

/portail Compte 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).

Mouvements bancaires v2

/mouvements MovementsView AdminEcole · Comptable

Refonte complète de la page mouvements :

Fiche formateur enrichie + quotas de stockage

Deux gros chantiers livrés mi-mai :

Fiche formateur

Quotas de stockage

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ôleDescriptionCouleur sidebar
AdminEcoleDirection de l'établissement · accès complet à son écoleToutes les sections
ComptableService finance · pas de pédagogie sauf lectureFinances + Paie + Apprenants (lecture)
RHRessources humaines · gestion des dossiers RH des enseignants (documents personnels, contrats, salaires) sans accès pédagogiqueFormateurs, Documents RH, Paie
FormateurEnseignant · ses classes uniquement (filtrage service). Gère ses propres documents pédagogiques.Notes, Présences, sa propre paie, Documents pédagogiques
SurveillantVie scolaire · présences + apprenantsApprenants (lecture), Présences

Connexion (Login)

/login Public

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.

SINI School Management Login (ex: askia.directeur) Mot de passe Se connecter Mot de passe oublié ? Espace parent Tester en mode démo
BoutonEffetPermission
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.

SINI ASKIA IMI PILOTAGE Tableau de bord Tableau de bord avancé SCOLARITÉ Apprenants Classes Saisie des notes Bulletins Présences PERSONNEL Formateurs Paie Paramètres paie FINANCES Comptes bancaires Mouvements Frais scolarité ADMINISTRATION Paramètres école Utilisateurs Tableau de bord M Maiga AdminEcole
ÉlémentEffet
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-profil Tout 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 profil Login askia.directeur Email directeur@askia.ml Rôle AdminEcole Changer mon mot de passe Mot de passe actuel Nouveau mot de passe Enregistrer
BoutonEffetPermission
Enregistrer Vérifie l'ancien mot de passe, hash le nouveau, met à jour users.password_hash. Tout user authentifié (le sien uniquement)

Tableau de bord

/ dashboard.view AdminEcole · Comptable · Surveillant

Vue synthétique de l'année scolaire en cours. Affiche les KPIs principaux de l'établissement : effectifs, formateurs, classes, finances.

Tableau de bord Vue synthétique de l'année scolaire en cours Apprenants inscrits 512 Formateurs actifs 42 CDI 28 · CDD 14 Classes ouvertes 18 Solde banques 14,2 M FCFA · 4 comptes Effectifs par classe
ÉlémentEffetPermission
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.

Cahier de textes numérique

/cahier-textes coursebook.view Formateur · Direction Plan : ModuleCahierTextes

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-textes coursebook.view

La page présente la semaine en cours (navigation semaine précédente / suivante / aujourd'hui). Pour chaque séance, l'enseignant renseigne :

Cycle de vie d'une séance : BrouillonSoumise (à 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.

Côté direction — visa et statistiques

/cahier-textes/visa /cahier-textes/stats coursebook.visa AdminEcole · AdminCentral

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-textes Parent

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.

Admissions — Recrutement et inscriptions

/admissions/* admissions.view AdminEcole · Secrétariat Plan : ModuleAdmissions

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 :

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).

Pré-inscription en ligne

/pre-inscription Public (anonyme) /admissions/pre-inscriptions AdminEcole · Secrétariat

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

  1. Ouvre la page /pre-inscription depuis le site de l'école ou depuis le lien proposé sur la page de connexion.
  2. 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.
  3. 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.
  4. 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 :

Réinscription en ligne

/admissions/reinscriptions admissions.reinscription.manage /portail/reinscriptions Parent (portail)

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

  1. 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é.
  2. 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.
  3. 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).
  4. 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 :

Concours d'entrée

/admissions/concours admissions.concours.manage admissions.concours.notes Plan : ModuleAdmissionsConcours

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

  1. 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).
  2. Définit les épreuves : matière, ordre, durée, coefficient, barème (par défaut sur 20).
  3. Définit les salles d'examen avec leur capacité.
  4. Ouvre les inscriptions — les candidats peuvent alors déposer leur dossier (formulaire public identique à 3.1, avec paiement Mobile Money ou secrétariat).
  5. À 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

  1. 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.
  2. Bouton Publier les résultats : lève l'anonymat, permet l'envoi du mailing aux candidats.
  3. 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).

Apprenants

/eleves students.view AdminEcole · Comptable · Formateur (ses classes) · Surveillant

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.

Apprenants Rechercher (nom, matricule, prénom) Classe ▾ Situation ▾ + Nouvel apprenant Matricule Apprenant Classe Situation Frais Actions ASK-2026-001DIARRA Aïssata 6ème BExterne À jour ASK-2026-002TRAORÉ Mamadou 4ème ADemi-pension 75 000 ASK-2026-003KANTÉ Fanta 3ème CExterne À jour ‹ 1 2 3 … 12 › · 512 apprenants
Workflow type — Inscrire un nouvel apprenant
  1. Clic + Nouvel apprenant → ouvre /eleves/nouveau
  2. Remplir : civilité, nom, prénom, genre, date de naissance, classe d'affectation
  3. Clic Enregistrer — l'apprenant est créé, frais auto-appliqués selon barème classe
  4. La fiche s'ouvre — possibilité de rattacher un parent responsable immédiatement
BoutonEffetPermission
+ Nouvel apprenant Ouvre le formulaire de création — /eleves/nouveau. students.edit
(œil)Ouvre la fiche en lecture — /eleves/{id}.students.view
… (crayon)Ouvre la fiche en mode édition (popup).students.edit
Filtre ClasseFiltre la liste par ClassroomId.students.view
Filtre SituationExterne / Demi-pension / Interne (selon référentiel école).students.view
RechercheMatch sur Matricule, Nom, Prénom (insensible à la casse).students.view
Pagination50 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ïssata Matricule ASK-2026-001 · 6ème B · Externe … Modifier Bulletin PDF Archiver Évolution des notes par matière Planning de la classe Sem. du 12/05 ‹ › Jour Horaire Matière Formateur Lundi 08:00 – 09:30 Mathématiques M. Sangaré Mardi 10:00 – 11:30 Français Mme Diabaté
BoutonEffetPermission
… 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/archives students.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.

BoutonEffetPermission
↩ 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-risque students.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

/classes classrooms.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.

BoutonEffetPermission
Carte classeOuvre /classes/{id} — fiche classe avec apprenants.classrooms.view
+ Nouvelle classePopup création — code, libellé, niveau, capacité, frais.classrooms.edit

Passage en classe supérieure

/promotion students.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
  1. Sélectionner Année source (généralement l'année courante)
  2. Sélectionner Année cible (nouvelle année à créer/déjà créée)
  3. Clic Prévisualiser — affiche pour chaque apprenant : moyenne, seuil, statut admis/redoublant
  4. Vérifier les cas litigieux (moyennes proches du seuil)
  5. Clic Exécuter le passage — crée les nouvelles inscriptions, archive les sortants
BoutonEffetPermission
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. students.promote

Saisie des notes

/notes grades.edit Formateur (ses classes) · AdminEcole

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 notes 6ème B ▾ Mathématiques ▾ 2026 ▾ Mai ▾ + Devoir + Examen Apprenant D1 D2 D3 E1 (verr.) Moyenne DIARRA Aïssata 14 12 15 16 14.5 TRAORÉ Mamadou 9 10 11 8 9.5 Valider Devoir 1 Valider Examen 1
BoutonEffetPermission
+ 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

/bulletins bulletins.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.

BoutonEffetPermission
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. Public

Présences

/presences attendances.edit Formateur (ses classes) · Surveillant · AdminEcole

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ésences 6ème B ▾ 13/05/2026 Sessions prévues — Lundi 13 mai 2026 08:00 – 09:30 Mathématiques M. Sangaré En cours 10:00 – 11:30 Français Mme Diabaté (verr.) Validée 14:00 – 15:30 Histoire-Géo M. Coulibaly À pointer Mathématiques — 08:00–09:30 Apprenant Statut Motif 1DIARRA Aïssata Présent ▾ 2TRAORÉ Mamadou Absent ▾ Maladie Valider la session
Workflow type — Pointer une session
  1. Sélectionner classe + date
  2. Les sessions du jour s'affichent en cards (matière + créneau + formateur)
  3. Cliquer sur la card de la session à pointer — la grille apprenants apparaît
  4. Pour chaque apprenant : Présent / Absent / Retard / Excusé (sauvegarde automatique)
  5. Renseigner un motif si Absent / Retard (champ texte libre)
  6. Clic Valider la session — verrouille tous les pointages
BoutonEffetPermission
Card session Sélectionne la session courante. Badge À pointer / En cours / Validée indique l'état. attendances.view
Statut (dropdown) Présent · Absent · Retard · Excusé. Sauvegarde immédiate. attendances.edit
Motif (input) Texte libre. Sauvegarde au blur (perte focus). attendances.edit
Valider la session Verrouille tous les pointages de la session. Plus modifiable sauf AdminEcole. attendances.edit

Calendrier

/calendrier dashboard.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

/bibliotheque dashboard.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.

BoutonEffetPermission
Onglet LivresListe de tous les livres avec exemplaires totaux / empruntés.dashboard.view
Onglet Emprunts en coursListe des prêts non rendus, triée par date de retour prévue.dashboard.view
+ Ajouter un livrePopup création — titre, auteur, éditeur, ISBN, nb exemplaires.dashboard.view
↩ Marquer comme renduClôt l'emprunt et incrémente les exemplaires disponibles.dashboard.view

Formateurs

/enseignants teachers.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 :

Quatre onglets juste en dessous :

OngletContenuVisible 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 tempsPlanning hebdomadaire (tableau jour × horaire avec total des heures) + vue calendaire mensuelle avec pastilles colorées par matière et légende.Toujours
Documents pédagogiquesCours, exercices, supports — voir section ci-dessous.teachers.course.documents.manage
Documents RHCV, contrat, diplômes — voir section ci-dessous.teachers.hr.documents.view

Modifier la fiche

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).

Documents pédagogiques

teachers.course.documents.manage · teachers.course.documents.share Enseignant · Administrateur école

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 :

ModeEffet côté portail parent
PrivéVisible uniquement par l'enseignant (et l'Administrateur école). Aucune publication parent.
Toute la classeTous les parents des élèves de la classe rattachée accèdent au document.
Élèves sélectionnésL'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.

Documents RH

teachers.hr.documents.view · teachers.hr.documents.edit Administrateur école · RH

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

/paie payslips.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 paie M. Sangaré ▾ 2026 ▾ Mai ▾ A Complexe Scolaire ASKIA Code ASK · Bamako · +223 76 12 34 56 BULLETIN DE SALAIRE Mai 2026 1. Gains Libellé Quantité Taux Montant (FCFA) Salaire de base150 000 Heures supplémentaires8 h2 50020 000 Indemnité loi 82/381 000 TOTAL BRUT171 000 2. Retenues salariales INPS salarié3,6 %6 156 ITS (impôt sur traitement et salaires)8 432 TOTAL RETENUES14 588 NET À PAYER 156 412 FCFA Générer & télécharger PDF Enregistrer en BDD
BoutonEffetPermission
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. payslips.view

Paramètres paie

/parametres/paie payroll.manage AdminEcole · Comptable

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.

OngletContenuBoutons
Paramètres globaux Taux INPS salarié/patronal, ITS, Taxe Logement, CFE, TFP, TEJ, abattements, heures std/mois, taux heure supp. Enregistrer · ↻ Annuler les modifs
Catalogue indemnité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-temps schedule.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).

BoutonEffetPermission
Vue : Par classe / Par formateurBascule l'angle de la grille.schedule.view
‹ Sem. préc. / Sem. suiv. ›Navigation hebdo.schedule.view
Case vide cliquéePopup création slot — jour, heure début/fin, matière, formateur.schedule.edit
Case occupée cliquéePopup édition / suppression du slot.schedule.edit

Heures effectuées

/planning schedule.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.

Comptes bancaires

/banques bankaccounts.edit AdminEcole · Comptable
BoutonEffetPermission
+ Nouveau comptePopup — banque, n° compte, libellé, solde initial.bankaccounts.edit
… ÉditerModifier libellé / banque (le solde est dérivé des mouvements).bankaccounts.edit
SupprimerRefusé si des mouvements existent (FK constraint).bankaccounts.edit

Mouvements

/mouvements movements.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.

BoutonEffetPermission
+ Nouveau mouvement Popup — compte, type (Entrée/Sortie), montant, libellé, date, contrepartie. movements.edit
Filtres période + compteFiltre la liste et recalcule les totaux affichés.movements.view
Export ExcelExporte la liste filtrée au format .xlsx.movements.view

Frais scolarité

/frais schoolfees.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.

BoutonEffetPermission
Filtre StatutÀ jour / Partiel / Impayé.schoolfees.view
Encaisser Popup paiement — montant, mode (cash / virement / Mobile Money), date. schoolfees.edit
Reçu PDFGénère le reçu PDF avec QR code de vérification.schoolfees.view
RelancerEnvoie 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é
ComptantUn seul versement, à la date de fin des inscriptions.
TrimestrielTrois 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).
LibreAucun é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

Rappels automatiques (email, SMS, WhatsApp)

Le service de notifications envoie au parent responsable, sur les canaux activés dans /admin/saas/jobs :

Chaque envoi est tracé pour éviter les doublons. Si l'école coupe tous les canaux, aucun rappel n'est envoyé.

Paramètres école

/parametres settings.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).

ChampEffet
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 secondaireCouleur des accents secondaires (charges patronales du bulletin, etc.).
DeviseFCFA par défaut. Apparaît sur les montants des PDF.

Mon abonnement et mon stockage

/parametres/abonnement settings.view Administrateur école

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 :

Un quota à l'infini (∞) signifie illimité — typique des plans ENTERPRISE.

Suivi du stockage

Carte dédiée Stockage :

Trois niveaux d'alerte :

SeuilCouleurEffet
80 – 100 %AmbreAlerte préventive : pensez à supprimer les anciens fichiers ou contactez l'éditeur pour augmenter votre quota.
100 – 120 %RougeLes uploads continuent mais le dépassement sera facturé sur votre prochaine échéance (~1000 FCFA / Go supplémentaire).
Au-delà de 120 %Rouge bloquantLes 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/annees AdminEcole

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 :

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 :

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 :

Indicateur utile pour mesurer rapidement la dynamique d'année en année sans avoir à ouvrir le module Rapports.

Bonnes pratiques

Magasin / Fournitures

/fournitures AdminEcole · Magasinier Nouveau 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 :

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 » :

  1. Recherche de l'élève par matricule ou nom → fiche pré-affichée avec classe et solde frais scolarité.
  2. Ajout des articles au panier (variantes choisies dans un picker). Le total se met à jour en temps réel.
  3. 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).
  4. 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

/lettres AdminEcole · Secrétariat Nouveau 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 :

  1. 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.
  2. 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é.
  3. 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 · Enseignant Refonte 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 :

  1. 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).
  2. Scolarité — graphique d'évolution des notes par matière sur l'année en cours + planning hebdomadaire de la classe.
  3. 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)
  4. Documents — pièces justificatives de l'apprenant (acte de naissance, photo, certificats, etc.). Cf. section Documents officiels.
  5. 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)
    • Tableau des 50 dernières actions : date, modèle, mode (Pré-rempli / Papier à en-tête), canal (Téléchargé / Email / WhatsApp / SMS), destinataire, statut
    • Une ligne par action — si vous téléchargez puis envoyez par email, vous voyez les 2 actions tracées
  6. 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 · DRH Enrichissement 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 :

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 :

Comparatif inter-écoles

Page /groupe/comparatif avec sept KPIs en regard sur l'année scolaire courante :

  1. Effectifs apprenants non archivés.
  2. Taux de recouvrement scolarité.
  3. Taux de présence sur 30 jours.
  4. MRR : moyenne mensuelle des paiements 6 derniers mois.
  5. Ratio élèves / enseignant.
  6. Moyenne générale des notes sur 20.
  7. Taux de réussite (bulletins avec moyenne ≥ 10).

Mise en page :

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 :

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 :

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 :

  1. Cliquer « Nouveau manuel ».
  2. Saisir titre, matière, niveau, description.
  3. 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.
  4. 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é :

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 :

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 :

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.