Aller au contenu
Tchomtchi Kamgang Daniel Merlys
EN
Retour aux projets
  • Finance
  • Automatisation
  • Data
  • BI
Prototype terminé

DAN

Application de surveillance des systèmes de paiement, conçue pour automatiser et structurer une partie du contrôle sur pièces des systèmes et moyens de paiement de la CEMAC.

Projet lié à un stage à la BEAC. La version présentée ici est une démonstration publique : données, cartographie des risques, modèles de rapports et logos sont synthétiques. Aucune donnée réelle de transaction, de participant ou d'institution n'y figure.

Statut
Prototype terminé
Rôle
Conception et développement
Période
2026 · stage à la BEAC et mémoire

01Contexte

Projet développé dans le cadre de mon stage à la Direction des Systèmes et Moyens de Paiement (DSMP) de la BEAC, de juin à août 2026, et de mon mémoire.

La surveillance des systèmes de paiement (règlement de montants élevés, compensation, messagerie interbancaire, infrastructures réseau) repose sur des déclarations d'incidents envoyées chaque mois par de nombreux participants, dans plusieurs pays de la CEMAC.

02Problème

Ces déclarations arrivent sous forme de fichiers Excel hétérogènes. Les consolider à la main, dans des tableurs, est lent et peu homogène d'un mois à l'autre, alors qu'il faut décider rapidement où porter l'attention.

03Objectif

  • Importer des fichiers de reporting hétérogènes avec un minimum de préparation manuelle.
  • Rattacher chaque événement déclaré à une catégorie et à un niveau de risque, puis calculer un score de sévérité consolidé et explicable.
  • Comparer les pays et les systèmes, et suivre les tendances dans le temps.
  • Produire des rapports consolidés sans copier-coller.

04Données

Fiches de reporting mensuelles au format Excel (.xlsx, .xls), une par participant, par pays et par système. Le pays, le mois et l'année sont déduits de l'arborescence des dossiers ; le système de paiement est reconnu à partir des codes de référence des événements.

Une cartographie des risques associe chaque type d'événement à une catégorie et à un niveau de risque.

Dans la version publique, toutes les données sont fictives : 3 pays, 2 banques et 4 systèmes, générés par un script du dépôt.

05Méthodologie

Un score transparent plutôt qu'un modèle opaque : la sévérité d'un événement combine un poids d'occurrence (lissé de façon logarithmique) et le poids de son niveau de risque. Les risques combinés sont répartis entre leurs catégories, et les seuils (critique, élevé, moyen, faible) restent paramétrables.

La logique métier est séparée de l'interface, ce qui permet de la tester unitairement. Une suite pytest s'exécute en intégration continue à chaque modification.

06Du problème à la décision

Les étapes du traitement, de la question métier jusqu'à la décision.

  1. 01

    Problème métier

    Chaque mois, des déclarations d'incidents arrivent de nombreux participants et de plusieurs pays. Il faut savoir rapidement où porter l'attention.

  2. 02

    Données

    Des fiches de reporting Excel, rangées par pays, mois et établissement, et une cartographie qui relie chaque type d'événement à une catégorie et à un niveau de risque.

  3. 03

    Traitement

    Import d'un fichier ou d'un dossier entier. Le pays et la période sont déduits des dossiers, le système est reconnu dans les codes de référence, et les fichiers incohérents sont signalés.

  4. 04

    Logique de contrôle

    Chaque événement survenu est rattaché à son risque. Sa sévérité combine sa fréquence, lissée, et le poids de son niveau de risque.

  5. 05

    Indicateurs

    Score consolidé par pays, répartition par système, nombre d'incidents survenus, taux de transmission des reportings et niveau de risque selon des seuils paramétrables.

  6. 06

    Reporting

    Rapport consolidé des incidents et rapport mensuel d'activité, générés depuis des modèles Word et exportables en PDF.

  7. 07

    Décision

    Interprétation en langage clair, causes probables, risques dominants, recommandations et plan d'action proposé pour orienter la surveillance.

07Solution

  • Import de fichiers isolés ou d'un dossier complet, avec rapprochement tolérant (casse, accents, abréviations) et alertes sur les fichiers incohérents.
  • Tableau de bord : score consolidé, répartition par système et interprétation en langage clair.
  • Analyse des incidents : incidents survenus, causes probables, risques dominants, recommandations et plan d'action proposé.
  • Vue multi-pays et historique des analyses.
  • Génération de rapports Word à partir de modèles (rapport consolidé d'incidents, rapport mensuel d'activité), avec export PDF.
  • Assistant optionnel reposant sur un modèle de langage exécuté en local (Ollama).

09Technologies

  • Python 3.11
  • Streamlit
  • pandas
  • NumPy
  • openpyxl
  • docxtpl
  • python-docx
  • Plotly
  • Matplotlib
  • ReportLab
  • pytest
  • GitHub Actions
  • Ollama

10Résultats

Un prototype terminé qui couvre toute la chaîne, de l'import des reportings jusqu'aux rapports prêts à diffuser.

Une version de démonstration publique, documentée et testée, qui peut être présentée sans exposer la moindre donnée interne.

11Limites

  • Les pondérations du score sont heuristiques : elles n'ont pas été validées sur des résultats réels.
  • La cartographie des risques et les modèles fournis sont illustratifs.
  • Interface en français uniquement, pour un utilisateur local, sans authentification.
  • Le PDF fidèle aux modèles nécessite Microsoft Word ou LibreOffice ; sinon, un PDF simplifié est produit.