Outils métier

Infrastructure e-mailing maison

Rôle
Développeur Full Stack
Durée
~1 mois
Année
2021
Schéma du projet
01

Contexte

La plateforme e-commerce utilisait Selligent, solution SaaS d'e-mailing, pour l'ensemble des communications clients : emails transactionnels, relances automatisées et campagnes mass-mailing pouvant atteindre 50 000 envois par campagne. La base de données était synchronisée avec Selligent, qui disposait d'une IP dédiée et d'une réputation de domaine construite sur plusieurs années. La décision a été prise de remplacer cette solution par une infrastructure interne plus flexible et moins coûteuse.

02

Problème

La solution Selligent, bien que fonctionnelle, représentait un coût élevé et ne permettait pas la flexibilité souhaitée pour faire évoluer les campagnes et les modèles selon les besoins métier. En interne, seule la synchronisation BDD avec Selligent était gérée par l'équipe technique : tout le reste vivait dans l'interface SaaS, hors du contrôle direct de l'équipe. Construire une solution maison offrait la perspective d'une maîtrise complète du produit, de ses évolutions et de ses coûts.

03

Solution

Le développement de la solution a débuté par la conception d'une nouvelle structure de base de données, organisée autour de la notion de canal de distribution : chaque canal regroupe l'ensemble des clients d'un marché donné (FR, DE, ES, IT, UK, NL, B2B France), permettant de cibler précisément un univers client sans recoupement entre les sites. Les données existantes de Selligent ont été migrées vers ce nouveau schéma.

Un back-office dédié a été développé pour gérer les quatre entités principales : les modèles d'emails (construits par assemblage de micro-modèles (header, body, footer) avec variables prédéfinies, ou importés depuis un outil tiers comme Topol.io), les segments (sélection de clients depuis la BDD via requête SQL), les campagnes (mass-mailing ponctuel ou récurrent, emails transactionnels comme les relances paniers non finalisés) et les catégories transverses à chaque entité. Une campagne associe un modèle, un segment et une date de lancement fixe ou récurrente. L'envoi de BAT est possible pour valider un modèle avant expédition.

Tipimail a été intégré comme routeur d'envoi après lecture approfondie de sa documentation, avec une architecture permettant de substituer le provider sans réécriture du code métier. Un POC d'évaluation de Sarbacane a été conduit (intégration API, tests sur les limitations BAT) et a conclu à ne pas retenir ce routeur.

La transition vers Tipimail a impliqué de reconstruire la réputation de domaine depuis zéro : Tipimail fonctionnant sur IP mutualisée, contrairement à l'IP dédiée de Selligent, la réputation accumulée sur plusieurs années était perdue. Cette phase a nécessité une investigation approfondie de la délivrabilité : analyse des listes clients, correction des pratiques non conformes signalées par Tipimail (longueur de body et de sujet, lien de désabonnement obligatoire). Une page de désabonnement multi-canal et multi-langue a été développée pour couvrir l'ensemble des marchés.

La gestion des bounces repose sur deux couches distinctes. Les webhooks reçus de Tipimail sont enregistrés en base de données au fil de l'eau. Un cron quotidien analyse ensuite l'historique complet de ces webhooks et applique un ensemble de règles métier pour mettre à jour les colonnes is_hardbounce et is_softbounce de chaque client : passage en hardbounce au-delà d'un seuil de softbounces consécutifs, levée automatique du hardbounce si une activité client est détectée (ouverture d'un email). Le cron envoie une alerte interne à chaque action entreprise. Ce système maintient la réputation du domaine en filtrant automatiquement les adresses problématiques.

04

Résultat

La solution est opérationnelle sur l'ensemble des marchés (FR, DE, ES, IT, UK, NL, B2B France), couvrant les emails transactionnels (paniers non finalisés, cross-selling) et les campagnes mass-mailing récurrentes (jusqu'à 50 000 envois par campagne, pouvant dépasser 100 000 en cumulant plusieurs campagnes). La réputation de domaine est gérée activement grâce notamment au système de gestion des bounces. L'équipe métier crée et configure ses campagnes et modèles en autonomie depuis le BO, la création des segments nécessitant encore l'intervention de l'équipe technique (requêtes SQL). La dépendance à Selligent est supprimée, avec une architecture routeur interchangeable si les besoins évoluent.

Un projet Laravel en tête ?

Réponse sous 24 h. Missions en régie ou au forfait.

  • Île-de-France Sur site ou hybride
  • Partout en France Présentiel ponctuel à négocier — ex. Lyon, 2 jours par mois
  • International Full remote

Les données saisies servent uniquement à vous répondre. Politique de confidentialité.