1. Le cadre légal

Le traitement des données à caractère personnel au Burkina Faso est régi par la loi n° 001-2021/AN du 30 mars 2021 portant protection des personnes à l'égard du traitement des données à caractère personnel, qui a remplacé la loi n° 010-2004/AN du 20 avril 2004.

L'autorité de contrôle est la Commission de l'Informatique et des Libertés (CIL), autorité administrative indépendante. Elle peut prononcer des sanctions.

La loi impose notamment une collecte licite, loyale et transparente, des finalités déterminées, explicites et légitimes, et des garanties de sécurité et de confidentialité. Elle rend en outre obligatoire la déclaration des traitements auprès de la CIL.

2. Qui traite quoi

Deux rôles se distinguent, et la distinction est importante :

  • L'entreprise utilisatrice est responsable de traitement pour les données qu'elle saisit — ses clients, ses élèves, ses commandes, ses ventes. C'est elle qui décide de les collecter et de ce qu'elle en fait.
  • GANDYAM360 agit comme sous-traitant pour ces données-là : elles sont hébergées et traitées pour le compte de l'entreprise, selon ses instructions, et pour aucune autre finalité.
  • GANDYAM360 est responsable de traitement pour ce qui relève de son propre fonctionnement : les comptes utilisateurs (identification, authentification), le journal d'audit et les rapports techniques d'erreur.

3. Le mode démonstration

À la date de cette version, le site public fonctionne en mode démonstration. Ce que vous saisissez en parcourant la démonstration est écrit dans le stockage local de votre navigateur, sous les clés préfixées g360-demo:, et n'est envoyé à aucun serveur. Vider les données du site dans votre navigateur les efface entièrement.

Les sections qui suivent décrivent le traitement effectué une fois l'application branchée sur son serveur. Aucune donnée réelle n'y a encore été traitée : le service n'a pas été mis en production.

4. Données traitées

Les catégories ci-dessous sont relevées dans le modèle de données du serveur, pas décrites de mémoire.

Ne sont pas collectés : aucune donnée de carte bancaire ni de paiement en ligne, aucune donnée de géolocalisation, aucun profil publicitaire. Le modèle de données ne comporte aucun champ d'adresse IP.

5. Finalités

  • Fournir le service : enregistrer et restituer l'activité de l'entreprise, produire ses documents et ses écritures.
  • Authentifier les utilisateurs et contrôler leurs accès.
  • Envoyer les messages que l'entreprise décide d'adresser à ses propres clients.
  • Assurer la traçabilité des actions sensibles, par le journal d'audit.
  • Diagnostiquer les pannes, au moyen de rapports techniques expurgés de toute donnée personnelle (section 11).
  • Respecter les obligations légales de conservation comptable.

6. Isolation entre entreprises

Chaque entreprise ne voit que ses propres données. La séparation ne repose pas seulement sur le code applicatif, qui pourrait oublier un filtre : elle est appliquée par la base de données elle-même.

  • Chaque ligne porte l'identifiant de son entreprise, et une politique Row Level Security de PostgreSQL filtre lectures et écritures sur cet identifiant, y compris pour le propriétaire des tables.
  • Le rôle de base de données qui sert l'intégralité du trafic applicatif ne peut pas contourner cette politique.
  • L'identifiant de l'entreprise est déduit du jeton d'authentification, côté serveur. Aucune interface ne l'accepte du client, il ne peut donc pas être falsifié depuis un navigateur.
  • Les rares accès inter-entreprises réservés à l'exploitation exigent un motif et sont journalisés dans la même transaction que l'accès lui-même.
  • Ces règles sont vérifiées par des tests automatisés qui tentent l'accès croisé et le voient refusé.

7. Durées de conservation

Tant que le compte est actif, les données sont conservées pour permettre l'usage du service. À la fermeture du compte, la suppression est effectuée module par module, et elle n'est jamais totale :

La suppression est immédiate et définitive : il n'existe ni délai de grâce, ni restauration à partir de l'export.

Une limite connue, et dite : la suppression retire les références aux fichiers déposés, mais les octets de ces fichiers restent aujourd'hui sur le support de stockage ; leur effacement demande une opération manuelle. La correction est identifiée.

8. Destinataires et sous-traitants

Les données ne sont ni vendues, ni louées, ni cédées. Le seul flux de données personnelles vers un tiers est le suivant :

  • Meta — WhatsApp Cloud API, pour l'acheminement des messages WhatsApp. Sont transmis le numéro de téléphone du destinataire et le contenu du message. Ce transfert a lieu hors du Burkina Faso et obéit aux règles propres de Meta.

Le suivi des erreurs est auto-hébergé sur la même machine que l'application : ces données ne sortent pas du serveur (section 11). Aucun service d'analyse d'audience, aucune régie publicitaire, aucun réseau social embarqué.

Le canal SMS n'est pas ouvert : aucun opérateur n'a été retenu. Il n'existe aucun prestataire de paiement, le service ne comportant pas de paiement en ligne.

9. Messages adressés à vos clients

Le service permet à l'entreprise utilisatrice d'envoyer des messages WhatsApp aux contacts qu'elle a elle-même enregistrés : alertes liées à une commande, ou campagnes qu'elle compose et déclenche.

C'est l'entreprise utilisatrice qui est responsable du consentement de ses propres clients, de l'information qu'elle leur doit et du traitement de leurs demandes de retrait. GANDYAM360 intervient comme sous-traitant : il achemine les messages qu'elle a décidé d'envoyer, aux destinataires qu'elle a choisis.

10. Sécurité

  • Mots de passe : hachés avec bcrypt, jamais stockés en clair, jamais rechargés par défaut depuis la base, et absents de tout export.
  • Jetons de session : le jeton d'accès vit quinze minutes et est signé par clé asymétrique. Le jeton de renouvellement est à usage unique, remplacé à chaque emploi, et n'est conservé en base que sous forme d'empreinte. Un rejeu détecté révoque toute la famille de jetons.
  • Cookies : les jetons sont portés par des cookies httpOnly, hors de portée du JavaScript, avec l'attribut SameSite.
  • CSRF : trois couches — l'attribut du cookie, une liste blanche d'origines, et un en-tête dédié exigé sur toute requête modifiante authentifiée par cookie.
  • Limitation de débit sur les routes d'authentification, et réponse identique quelle que soit la cause d'un échec de connexion, pour ne rien révéler.
  • Chiffrement en transit : en production, l'accès au service se fera exclusivement en HTTPS. Le service n'ayant pas encore été mis en production, ce point reste à vérifier sur l'installation réelle.

Limites connues, et dites plutôt que tues : un compte désactivé peut rester accepté jusqu'à quinze minutes, le temps que son jeton d'accès expire ; les échecs d'authentification ne sont pas tracés ; le compte d'administration de la plateforme n'est pas encore protégé par une double authentification ; les données ne sont pas chiffrées au repos.

11. Suivi des erreurs

Lorsqu'une erreur technique survient, un rapport est envoyé à un outil de suivi auto-hébergé sur la même machine que l'application. Les données ne sortent pas du serveur.

Ce rapport est construit champ par champ, par liste blanche : type d'erreur, message tronqué et expurgé, pile d'appels, identifiant de requête, identifiant technique de l'entreprise, chemin de la route sans ses paramètres, méthode et code d'erreur.

Ne sont jamais transmis : adresse e-mail, nom, téléphone, montant, corps de requête, en-têtes, cookies, adresse IP, ni paramètres de requête à la base. Les adresses et numéros qui se seraient glissés dans un message d'erreur sont masqués avant l'envoi, et un test automatisé échoue si un nom ou une adresse ressort dans un rapport. Le suivi est désactivé par défaut : sans configuration explicite, aucune connexion sortante n'est ouverte.

12. Cookies et stockage local

Le service n'emploie aucun cookie publicitaire ni de mesure d'audience. Seuls des cookies strictement nécessaires sont posés :

Le stockage local de votre navigateur conserve en outre votre préférence d'apparence, claire ou sombre (g360-apparence), et les données de la démonstration (g360-demo:…). Ces informations ne quittent jamais votre appareil.

13. Vos droits

Vous disposez d'un droit d'accès, de rectification, d'effacement, d'opposition et de portabilité sur vos données.

  • Accès et portabilité : un export complet des données du compte est produit au format JSON, lisible et réutilisable.
  • Rectification : les données saisies par l'entreprise sont modifiables directement dans l'application par les utilisateurs habilités.
  • Effacement : la fermeture du compte déclenche la suppression décrite en section 7, sous les réserves légales qui y sont énoncées. Un client qui demande l'effacement de ses données n'obtient pas l'effacement de sa comptabilité : la conservation décennale répond à une obligation légale.

Si vous êtes le client, l'élève ou le correspondant d'une entreprise qui utilise GANDYAM360, adressez-vous d'abord à cette entreprise : c'est elle qui décide du traitement de vos données, et nous n'agissons que sur ses instructions.

14. Réclamation auprès de la CIL

Si vous estimez que vos droits ne sont pas respectés, vous pouvez saisir la Commission de l'Informatique et des Libertés du Burkina Faso.

15. Évolution de cette politique

Cette politique peut être modifiée pour suivre l'évolution du service ou de la réglementation. La version applicable est celle publiée sur cette page, dont la date figure en tête. Les modifications substantielles sont portées à la connaissance des entreprises utilisatrices avant leur entrée en vigueur.

Les présentes se lisent avec les conditions générales d'utilisation .