← Roadmap publique
README
CRM AWM V1.6.29Snapshot sécurisé de la version effectivement publiée. Les lignes potentiellement sensibles sont masquées automatiquement.## 1.6.29 - Correctif du fatal Pulse WP_User - 2026-09-12
- Le Pulse utilise les objets WP_User renvoyes par canonical_clients() et la methode PUBLIQUE canonical_client_is_active().
- Aucun acces tableau sur WP_User et aucun appel a la methode privee client_is_active().
- Compatibilite avec les profils tableaux explicitement types; un type inconnu reste inconnu, pas automatiquement inactif.
- Comptage en lecture seule, sans construire de profil pouvant creer un site_id. Inactif et archive ne sont pas renommes abusivement suspendus.
- Aucune migration du schema metier. Regression reproduite sur l'ancienne version puis testee avec la classe CRM reelle et des doubles WordPress.
## 1.6.28 — Pulse v2 Health / cycle client — 2026-09-12
- CRM expose un score/fraîcheur Health tout en restant l autorité du statut actif/inactif.
- Le nombre de clients suspendus reste contextuel et ne pénalise pas automatiquement le score technique.
## 1.6.27 — Pulse opérationnel transversal — 2026-09-12
- Expose au Core un pulse clients actifs / suspendus depuis le statut CRM canonique.
- Prépare Health/SLA à distinguer une suspension commerciale d une panne technique.
# CRM AWM 1.6.26
Les Connectors de la fiche Sites du client possèdent maintenant une destination directe par `site_id`, afin que Tech puisse envoyer le technicien au bon site principal ou secondaire sans ambiguïté.
> Version 1.6.25 : cycle Actif/Inactif traçable, motif/date optionnels et réactivation planifiée sans perte de Connector ni d’historique.
## 1.6.24 — statut client instantané sans rechargement
Le badge **Actif / Inactif** de la liste clients utilise maintenant une action AJAX. Le statut canonique CRM est modifié côté serveur avec le même nonce et le même événement inter-modules, mais la page n est plus rechargée : recherche, filtre, mode Fiches/Tableau et position de défilement sont conservés. Dans le filtre Actifs ou Inactifs, le client disparaît immédiatement de la vue lorsqu il ne correspond plus au filtre; dans Tous, seul le badge change. Le loader AWM suit la requête et affiche le résultat sans bandeau WordPress.
# CRM AWM 1.6.21 — site principal et Connectors par site
CRM AWM 1.6.22 simplifie la liaison des sites secondaires : une clé générée est présentée comme **Clé en attente**, avec un raccourci vers Hub Client. Le site n est considéré réellement connecté que lorsque le runtime Connector a terminé son appairage.
Le site principal est maintenant la référence officielle du client pour les couleurs/typographies et la destination Hub Client par défaut. Chaque site secondaire conserve son propre `site_id`, son propre Connector et ses actions Générer/Régénérer/Révoquer. Une action sur un site n'affecte pas les autres. Le thème sombre des cartes KPI de la fiche client est également corrigé.
# CRM AWM 1.6.19 — sites principal et secondaires
La fiche client multi-sites utilise maintenant une interface premium et responsive. Le **site principal** reste la source de vérité visuelle; les sites secondaires disposent d'un `site_type` canonique (landing page, sous-domaine, répertoire, staging, boutique, blog, portail client, campagne, microsite, etc.) tout en conservant un environnement technique compatible avec Tech AWM.
La fiche client canonique gère maintenant un **site principal** obligatoire et une liste extensible de **sites secondaires**. Le site principal reste la source de vérité visuelle (couleurs, typographies, styles et règles de marque) utilisée par les modules AWM. Chaque site secondaire reçoit un `site_id` persistant, son URL complète (sous-domaine ou répertoire), un libellé et un type d’environnement.
# CRM AWM 1.6.17 — blocs permanents de la fiche client
La fiche client canonique affiche maintenant en permanence les contrôles Hub Client/Connector et le choix des services, sans déplacer la propriété des données hors de CRM.
# CRM AWM 1.6.16 — source client canonique
CRM AWM est la source unique des données maîtres clients. Tous les modules de la Suite utilisent le même `client_id` et ne stockent que leurs données métier.
# CRM AWM 1.6.15 — protection des forfaits CallTracker
Le prix 10 $ + taxes est réservé aux nouveaux Funnels. Les forfaits et campagnes existants restent inchangés.
# CRM AWM 1.6.14 — gestion commerciale des Funnels CallTracker
CRM AWM gère désormais explicitement le service **Funnel CallTracker à 10 $/mois**. Le service est créé avant le numéro, reste en configuration sans facturation automatique, puis devient actif et récurrent seulement après attribution confirmée du numéro par CallTracker.
# CRM AWM 1.6.13 — UX responsive et couleurs des catégories
Le catalogue **Services et abonnements** est réorganisé pour une utilisation plus rapide sur ordinateur, tablette et mobile. Les définitions du catalogue s’affichent sous forme de fiches responsives plutôt que dans un tableau horizontal difficile à manipuler.
## Livré
- fiches responsives du catalogue avec catégorie, état, prix, cycle, taxes, utilisation et actions;
- formulaires Modifier / Appliquer / Supprimer sans largeur minimale qui déborde sur les petits écrans;
- registre des services attribués transformé automatiquement en fiches sous 1100 px;
- couleur personnalisable pour chaque catégorie;
- gestion centralisée des couleurs depuis **Couleurs des catégories**;
- choix de couleur directement lors de la création ou modification d’un service du catalogue;
- couleur reprise automatiquement sur tous les badges CRM de la même catégorie;
- contraste texte/fond calculé automatiquement pour conserver la lisibilité;
- progression intégrée pour les actions de service : Préparation → Enregistrement → Synchronisation → résultat;
- messages de résultat conservés dans le loader AWM après rechargement;
- journalisation Core des changements de couleurs.
La couleur d’une catégorie est purement visuelle : elle ne change jamais le prix, les taxes, le cycle, l’état, les factures ou l’application Hub.
---
# CRM AWM 1.6.11 — catégories de services et abonnements
Le catalogue général et chaque attribution cliente possèdent maintenant une catégorie commerciale modifiable. Alliance peut utiliser les catégories proposées ou écrire librement une nouvelle catégorie.
## Fonctions
- catégories françaises préconfigurées;
- catégorie personnalisée autorisée;
- filtre, recherche, tri et colonne Catégorie;
- catégorie transmise lors de l’application d’un service à un client;
- propagation facultative vers les attributions déjà reliées;
- catégorie visible dans les fiches clients, factures et soumissions;
- anciens services classés automatiquement sous **Sans catégorie**;
- aucun changement aux prix, cycles, taxes, dates, états ou historiques pendant la mise à niveau.
CRM reste propriétaire du catalogue commercial. Hub reste propriétaire de l’application au portail. Core sécurise et journalise. Soutien AWM reste séparé.
---
# CRM AWM 1.6.10 — catalogue autonome des services et abonnements
CRM AWM sépare maintenant clairement deux niveaux :
1. **Catalogue des services et abonnements** : la liste générale des services disponibles, même lorsqu’aucun client ne les utilise actuellement.
2. **Services et abonnements attribués aux clients** : les exemplaires propres à chaque client, avec leur prix, cycle, taxes, état et prochaine échéance.
## Catalogue général
- création d’un nouveau service ou abonnement sans choisir de client;
- amorçage automatique depuis les services historiques déjà enregistrés;
- recherche et filtre Actif / Archivé;
- modification du nom, de la description, du prix par défaut, du cycle et des taxes;
- option explicite pour propager ces valeurs aux services clients déjà reliés, sans toucher à leurs dates, états ou autorisations de facturation;
- application du service à un client;
- suppression du catalogue sans effacer les services déjà attribués ni leur historique.
## Registre des services clients
- affichage par défaut de tous les services attribués, appliqués au Hub ou non;
- modification complète de chaque attribution;
- actions Activer, Mettre en pause et Retirer;
- suppression vers une corbeille avec restauration;
- exclusion persistante d’un service WHMCS supprimé afin d’empêcher sa recréation lors d’une synchronisation ultérieure.
## Frontières
CRM possède le catalogue et les conditions commerciales. Hub possède l’application au portail client. Core protège les permissions, le journal et les exclusions de connecteurs. WHMCS reste optionnel. Soutien AWM demeure l’unique propriétaire du soutien opérationnel.
---
# CRM AWM 1.6.9 — services et abonnements appliqués modifiables
CRM AWM présente maintenant une vue complète des services et abonnements déjà appliqués aux clients. La liste permet de rechercher, filtrer et modifier les paramètres commerciaux sans dépendre de WHMCS.
## Fonctions principales
- liste par défaut des services appliqués au Hub client;
- filtres par client, état et application;
- fiche client avec services appliqués en premier;
- modification du nom, de la description, du montant, du cycle, de la prochaine date, des taxes et de la facturation automatique;
- actions Activer, Mettre en pause et Retirer tout en conservant l’historique;
- cycles mensuel, trimestriel, semestriel, annuel, biennal, triennal, unique et gratuit;
- sélection des services appliqués directement dans une nouvelle facture ou soumission;
- protection des modifications locales pour les services historiquement liés à WHMCS;
- accès direct à Hub AWM pour gérer l’application au portail client.
## Frontières
CRM possède la fiche commerciale du service. Hub possède l’application au portail. Core sécurise les permissions et le journal. WHMCS reste optionnel. Soutien AWM n’est jamais reproduit dans CRM.
---
# CRM AWM 1.6.8 — titres français et activation rapide des courriels
CRM AWM affiche maintenant les titres de sa bibliothèque de courriels en français. Le nom WHMCS d’origine reste visible comme référence technique lorsque pertinent. Le statut **Activé / Désactivé** est une vraie commande : un administrateur autorisé peut cliquer directement dessus pour basculer l’état du modèle, sans devoir ouvrir l’éditeur.
- 86 modèles préconfigurés avec titres visibles en français;
- conservation des sujets et corps déjà personnalisés;
- activation/désactivation rapide depuis la liste;
- état synchronisé avec le formulaire détaillé;
- journalisation de chaque changement d’état;
- aucun changement aux communications Soutien AWM.
---
# CRM AWM 1.6.7 — modèles courriel préconfigurés et réparés
CRM AWM 1.6.7 corrige le registre qui empêchait WordPress de créer les modèles. À l’installation ou à la mise à niveau, les **86 modèles AWM** sont maintenant créés automatiquement, visibles dans **CRM AWM → Courriels** et modifiables individuellement. Aucun import WHMCS n’est requis pour les afficher.
## Comportement
- catalogue préconfiguré dès la mise à niveau;
- sujet et corps éditables pour chaque modèle;
- activation/désactivation par modèle;
- restauration de la version source AWM;
- réparation automatique des modèles manquants;
- conservation stricte des textes déjà modifiés localement;
- migration des éventuelles entrées héritées de l’ancien registre;
- import WHMCS toujours facultatif et limité au rapprochement des sujets disponibles.
## Cause corrigée
WordPress limite les identifiants de types de contenu à 20 caractères. L’ancien identifiant interne des modèles en comptait 22; WordPress refusait donc silencieusement leur création et l’écran affichait `0`. Le nouveau registre utilise un identifiant valide et le catalogue est amorcé automatiquement.
---
# CRM AWM 1.6.6 — bibliothèque complète de courriels AWM
CRM AWM 1.6.6 fournit une bibliothèque locale complète et modifiable inspirée des familles de modèles actuellement utilisées dans WHMCS Alliance. Elle reste disponible sans WHMCS et permet de réécrire les sujets et les corps directement dans CRM. Les communications de soutien sont volontairement absentes : Soutien AWM demeure le seul module propriétaire des tickets et conversations.
## Livré
- catalogue local de 86 modèles couvrant général/commercial, utilisateurs, invitations, facturation, services, domaines, administration, notifications et affiliation;
- modèles personnalisés Alliance **Soumission** et **Soumission Orange** ajoutés comme références modifiables;
- recherche, filtre par catégorie, regroupement, statut actif/désactivé, propriétaire AWM et état Branché/Référence;
- modèles opérationnels reliés aux événements CRM existants : facture, trois relances, paiement, avoir, remboursement, soumission et renouvellement;
- import WHMCS optionnel qui rapproche les sujets et conserve le corps lorsqu’il est fourni, sans écraser une modification locale;
- bibliothèque utilisable même si l’import retourne HTTP 403, avec lien direct vers la configuration du connecteur;
- navigation CRM harmonisée dans le shell Core et suppression de la navigation dupliquée;
- ancien endpoint de création de ticket CRM désactivé; aucun nouveau ticket n’est enregistré dans CRM.
---
# CRM AWM 1.6.5 — services facturables et centre de courriels
CRM AWM 1.6.5 poursuit l’autonomie du CRM sans WHMCS et relie directement la facturation aux services/abonnements du client. Le soutien opérationnel demeure entièrement dans Soutien AWM.
## Services et abonnements
- ajout d’un service ou abonnement directement dans la fiche client;
- actions **Activer**, **Mettre en pause** et **Retirer** avec conservation de l’historique;
- retrait d’un service = arrêt de sa facturation automatique;
- sélection des services du client lors de la création d’une facture ou d’une soumission;
- ajout d’un service comme ligne structurée, avec montant et taxes du service;
- lignes manuelles toujours permises;
- les factures natives conservent la série `28102` (`281020001`, `281020002`, ...).
## Onglet Courriels
CRM possède maintenant son propre registre de modèles de courriels. Alliance peut voir, activer/désactiver et réécrire le sujet et le contenu de chaque modèle.
Modèles AWM opérationnels livrés :
- nouvelle facture;
- premier, deuxième et dernier rappel de facture;
- confirmation de paiement;
- avoir appliqué;
- remboursement enregistré;
- nouvelle soumission;
- renouvellement de service.
Si le connecteur WHMCS est configuré, **Importer / actualiser depuis WHMCS** copie en lecture seule son catalogue général, produit, domaine, facture et affiliation dans CRM. Les modifications sont ensuite locales à CRM et ne sont jamais réécrites dans WHMCS. L’API officielle `GetEmailTemplates` garantit le catalogue et les sujets; si une version WHMCS ne retourne pas le corps d’un modèle, CRM conserve son corps AWM lorsqu’il existe ou laisse le contenu modifiable à compléter.
Les modèles de type support/ticket sont exclus de CRM : **Soutien AWM** reste l’unique module métier de soutien.
## Variables principales
`{{business_name}}`, `{{client_name}}`, `{{client_firstname}}`, `{{invoice_number}}`, `{{invoice_total}}`, `{{invoice_balance}}`, `{{due_date}}`, `{{issue_date}}`, `{{days_overdue}}`, `{{invoice_url}}`, `{{payment_instructions}}`, `{{invoice_lines}}`.
## Architecture
- **CRM AWM** : clients, contacts, services/abonnements, documents commerciaux et finances;
- **Hub AWM** : application et présentation des services clients;
- **Core AWM** : sécurité, permissions, API et connecteurs;
- **Soutien AWM** : tickets, conversations, réanalyses et opérations de soutien;
- **WHMCS** : connecteur optionnel de migration ou de lecture historique seulement.