# A.9.9.4 — Paiements Vodacom M-Pesa — Cycle complet

## 9.4 Paiements Vodacom M-Pesa — Cycle complet

### 9.4.1 Étape 1 — Génération des instructions M-Pesa

La génération M-Pesa prépare les virements mobile money destinés aux tuteurs (ou directement aux élèves si elles sont désignées comme bénéficiaires perceptrices dans leur fiche).

#### Accéder à l'écran de génération

Menu latéral → **Paiements → M-Pesa → Génération**.

`<callout class="info">📸 <strong>Capture d'écran à insérer :</strong> Page génération M-Pesa, état initial : zone de filtres (Tranche de paiement obligatoire — liste déroulante, École(s) — sélection multiple, Classe — liste déroulante, Option — liste déroulante, bouton Réinitialiser), message "Sélectionnez une tranche de paiement pour afficher les tuteurs éligibles"</callout>`

#### Sélectionner la tranche et afficher les tuteurs éligibles

1. Sélectionnez la **Tranche de paiement** dans la liste déroulante.
2. Le tableau des **tuteurs éligibles** s'affiche. Seuls les tuteurs réunissant ces conditions apparaissent :  
     - Ils ont des élèves **validées pour paiement** pour la tranche choisie  
     - Un compte **M-Pesa est configuré et coché "compte choisi pour paiement"** dans leur fiche

`<callout class="info">📸 <strong>Capture d'écran à insérer :</strong> Tableau des tuteurs éligibles M-Pesa : colonnes Nom du tuteur (complet), Nombre d'élèves rattachées pour cette tranche (ex. "3"), Montant total (3 × montant/élève = Z CDF), Compte mobile (numéro partiellement masqué + agent M-Pesa) ; cases à cocher à gauche ; case "Sélectionner tout" en en-tête ; bouton "▼" ou "+" à droite de chaque ligne pour déplier la liste des élèves</callout>`

3. Pour vérifier le détail des élèves incluses dans le calcul d'un tuteur, cliquez sur le bouton **▼** (déplier) de sa ligne :

`<callout class="info">📸 <strong>Capture d'écran à insérer :</strong> Ligne tuteur dépliée montrant l'encart des élèves rattachées : tableau avec colonnes UID élève, Nom de l'élève, Classe, Option, Montant individuel (ex. "53 000 CDF"). 3 lignes visibles pour un tuteur avec 3 enfants bénéficiaires</callout>`

4. Affinez si nécessaire avec les filtres **École(s)**, **Classe** et **Option**.

#### Sélectionner et générer

1. Cochez les tuteurs à inclure. Le bandeau récapitulatif apparaît :

`<callout class="info">📸 <strong>Capture d'écran à insérer :</strong> Bandeau récapitulatif M-Pesa : "X tuteurs sélectionnés — Y élèves — Montant total : Z CDF", bouton "Générer les instructions de paiement" actif</callout>`

2. Cliquez sur **Générer les instructions de paiement**.

`<callout class="info">📸 <strong>Capture d'écran à insérer :</strong> Fenêtre modale "Générer les instructions de paiement" M-Pesa : bloc récapitulatif (Tuteurs sélectionnés : X, Total élèves : Y, Montant total : Z CDF), champ "Commentaire (optionnel)", boutons "Annuler" et "Générer"</callout>`

3. Ajoutez un **Commentaire** descriptif, cliquez sur **Générer**. Pour chaque tuteur sélectionné, le système crée un lot contenant un paiement individuel par élève (1 paiement M-Pesa = 1 virement = 1 élève).

---

### 9.4.2 Étape 2 — Validation des instructions M-Pesa

#### Accéder à l'écran de validation

Menu latéral → **Paiements → M-Pesa → Validation**.

`<callout class="info">📸 <strong>Capture d'écran à insérer :</strong> Page validation M-Pesa : zone de filtres (Date de génération Du / Au, bouton Réinitialiser), tableau "Instructions en attente de validation" avec colonnes Tuteur (nom), Compte (numéro M-Pesa partiel), Date de génération, Généré par, Nombre d'élèves, Montant total (CDF) ; cases à cocher par ligne + "Sélectionner tout" ; boutons Valider (vert) et Rejeter (rouge) par lot</callout>`

#### Valider un lot individuellement

1. Cliquez sur **Valider** (coche verte) sur la ligne du lot.

`<callout class="info">📸 <strong>Capture d'écran à insérer :</strong> Fenêtre modale "Valider le lot M-Pesa" : Tuteur (nom complet), Référence du lot, Compte mobile (numéro + agent), Prestataire (M-Pesa), Nombre d'élèves, Montant total, Généré par (nom + date), Commentaire éventuel. Boutons "Annuler" et "Valider"</callout>`

2. Vérifiez toutes les informations. Cliquez sur **Valider**. Le lot passe au statut « Validé ».

#### Rejeter un lot

1. Cliquez sur **Rejeter** (croix rouge).

`<callout class="info">📸 <strong>Capture d'écran à insérer :</strong> Fenêtre modale "Rejeter le lot M-Pesa" : récapitulatif du lot, champ obligatoire "Raison du rejet", boutons "Annuler" et "Rejeter"</callout>`

2. Renseignez la **Raison du rejet** (obligatoire). Cliquez sur **Rejeter**. Le lot est marqué rejeté, tous les paiements du lot passent au statut « Annulé ».

#### Validation ou rejet groupé

`<callout class="info">📸 <strong>Capture d'écran à insérer :</strong> Tableau M-Pesa avec plusieurs lots cochés (3 sélectionnés), boutons "Valider plusieurs instructions" et "Rejeter plusieurs instructions" actifs en haut du tableau, compteur "3 sélectionnés" visible</callout>`

1. Cochez plusieurs lots.
2. Les boutons **Valider plusieurs instructions** et **Rejeter plusieurs instructions** apparaissent.
3. Chaque action ouvre une fenêtre modale récapitulative :  
     - Pour la validation : nombre de lots, total élèves, montant global à confirmer  
     - Pour le rejet : même récapitulatif + champ **Raison du rejet** unique applicable à tous les lots sélectionnés

---

### 9.4.3 Étape 3 — Envoi des instructions M-Pesa

#### Accéder à l'écran d'envoi

Menu latéral → **Paiements → M-Pesa → Envoi**.

`<callout class="info">📸 <strong>Capture d'écran à insérer :</strong> Page envoi M-Pesa : zone de filtres (Date de validation Du / Au, bouton Réinitialiser), tableau "Instructions en attente d'envoi" avec colonnes Tuteur, Compte (numéro M-Pesa), Date de validation, Validé par, Nombre d'élèves, Montant total ; cases à cocher ; bouton "Envoyer (n)" visible quand des lots sont sélectionnés</callout>`

1. Filtrez si nécessaire.
2. Cochez les lots à envoyer.
3. Cliquez sur **Envoyer (n)** (n = nombre de lots sélectionnés). Les paiements sont soumis en temps réel à l'API Vodacom M-Pesa. Chaque paiement individuel (un par élève) est initié séparément, permettant un suivi granulaire.

ℹ️ **Note sur la sécurité M-Pesa :** L'envoi M-Pesa ne nécessite pas de code OTP, contrairement à Equity. La sécurisation repose ici sur la stricte séparation des rôles (génération, validation et envoi peuvent être attribués à des personnes différentes) et sur la traçabilité exhaustive de chaque action dans le journal d'activités.

---

### 9.4.4 Étape 4 — Suivi des paiements M-Pesa

#### Accéder à l'écran de suivi

Menu latéral → **Paiements → M-Pesa → Suivi**.

`<callout class="info">📸 <strong>Capture d'écran à insérer :</strong> Page suivi M-Pesa : zone de filtres (Recherche par référence ou numéro de compte, Statut global — liste déroulante, Dates Du/Au, Réinitialiser), tableau "Suivi des paiements M-Pesa" avec colonnes Référence du lot, Tuteur / Compte (numéro M-Pesa partiel), Date d'envoi, Montant total, et 4 compteurs : Total paiements / Payé (vert) / En cours (bleu) / Échoué ou Annulé (rouge) ; bouton "Voir les détails" par lot</callout>`

#### Comprendre les compteurs par lot

Chaque lot M-Pesa contient un paiement individuel pour chaque élève rattachée au tuteur. Les quatre compteurs détaillent l'état en temps réel :

<table id="bkmrk-compteur-couleur-sig"><thead><tr><th>Compteur</th><th>Couleur</th><th>Signification</th></tr></thead><tbody><tr><td>**Total paiements**</td><td>Bleu</td><td>Nombre total de paiements dans le lot (un par élève)</td></tr><tr><td>**Payé**</td><td>Vert</td><td>Paiements reçus et confirmés par Vodacom M-Pesa</td></tr><tr><td>**En cours**</td><td>Orange</td><td>Paiements soumis, confirmation pas encore reçue de Vodacom</td></tr><tr><td>**Échoué / Annulé**</td><td>Rouge</td><td>Paiements échoués (numéro incorrect, compte inexistant, solde insuffisant) ou annulés manuellement</td></tr></tbody></table>

#### Consulter le détail d'un lot

Cliquez sur **Voir les détails** pour ouvrir la fenêtre modale de détail :

`<callout class="info">📸 <strong>Capture d'écran à insérer :</strong> Fenêtre modale "Détails du lot M-Pesa" : bloc résumé en haut (Tuteur : nom, Compte : numéro, Montant total, 4 compteurs Payé/En cours/Échoué/Total), séparateur, tableau des paiements individuels avec colonnes : Référence système, Référence Vodacom (ID de la transaction côté prestataire), UID de l'élève, Nom de l'élève, Montant, Statut (badge coloré : Payé/En cours/Échoué/Annulé), Date de paiement</callout>`

Cette vue granulaire permet à l'administrateur de :  
\- Vérifier qu'une élève spécifique a bien été payée (recherche par UID ou nom)  
\- Identifier les paiements échoués et leur motif (compte inexistant, numéro incorrect) pour correction  
\- Préparer les justificatifs individuels pour un audit ou une réclamation d'une bénéficiaire

---