FluenzR est un CRM d'e-mailing et de prospection B2B : campagnes, boîte de réception intégrée, et un moteur de « chauffe » qui construit la réputation des comptes d'envoi avant de les solliciter en masse.
Spring OAuth2 (authorization + resource server)JWT
Paiement & emailing
StripeThymeleaf (templates email)
Architecture
Comment c'est construit
Le moteur de chauffe (warming) fait s'échanger des emails entre comptes pair-à-pair pour construire leur réputation avant l'envoi de campagnes en masse. RabbitMQ découple l'envoi du traitement, Redis sert de cache et de file rapide.
Trois familles de comptes email sont gérées de bout en bout : SMTP, Gmail (OAuth 2.0 + Gmail API) et Microsoft (Graph API).
Intégrations IA
Ce que l'IA fait dans le produit
Un service Anthropic dédié alimente plusieurs cas d'usage : chat d'assistant de marque, génération de workflows de campagne, génération d'icebreakers (accroches personnalisées) pour la prospection.
Le produit expose son propre serveur MCP, avec authentification OAuth 2.1 complète (authorization server + resource server), pour que des agents IA externes pilotent directement les contacts, les campagnes et le tableau de bord — pas un simple client MCP, un serveur.
Qualité
Tests et vérifications
95 fichiers de test backend, dont une suite dédiée au moteur de chauffe (coupe-circuit, quota journalier, passage de journée)
17 specs E2E / frontend
Environnement de préproduction séparé, avec OAuth Google volontairement désactivé pour ne pas modifier le périmètre validé par l'audit de sécurité
Déploiement & exploitation
Ce qui part en production
Conteneurs Docker (backend, Postgres, Redis, RabbitMQ), déploiement par script depuis le poste de développement.
Sécurité
Ce qui protège le produit
OAuth Gmail et Microsoft pour les comptes email connectés
Jetons OAuth chiffrés AES-256-GCM en base
Validation Google CASA Tier 2 (audit de sécurité tiers, 2025) — condition posée par Google pour autoriser l'accès à l'API Gmail en production
Ce qui a cassé, ce que j'ai appris
La première demande de vérification OAuth auprès de Google a été rejetée : le moteur de chauffe utilisait les scopes Gmail au-delà de ce qui était déclaré. Correctifs, nouvelle réponse formelle, validation obtenue ensuite. La certification CASA impose une recertification annuelle — c'est un statut à renouveler activement, pas un acquis permanent.