Brevo stocke vos contacts, vos attributs personnalisés, vos templates email et votre historique d'envoi. Ce guide inventorie chaque type de données, comment les exporter via l'API et comment les reconstruire dans un logiciel sur mesure.
LES DONNÉES
Ce que nous migrons depuis Brevo
Quitter Brevo ne signifie pas perdre vos données. Voici les types de données que SmartBooster analyse, extrait et migre vers votre logiciel sur mesure.
Contacts et listes : Base de contacts Brevo avec leurs attributs standard et personnalisés, statuts d'abonnement et appartenance aux listes. Exportables via GET /contacts avec pagination ou export CSV depuis l'interface.
Attributs personnalisés : Champs personnalisés définis dans votre compte Brevo (texte, nombre, date, booléen). La liste des attributs disponibles est accessible via GET /contacts/attributes. Chaque attribut a un nom technique (slug) utilisé dans les appels API.
Deals CRM Brevo : Opportunités commerciales du pipeline Brevo CRM avec leur étape, valeur, date de fermeture prévue et contacts associés. Exportables via GET /crm/deals avec filtrage par étape ou date.
Templates d'emails transactionnels : Templates HTML créés dans Brevo pour les envois transactionnels. Récupérables via GET /smtp/templates. Chaque template contient son HTML, son sujet et ses variables de personnalisation. À reconstruire comme templates Twig dans le logiciel sur mesure.
Logs d'envoi et statistiques : Historique des emails envoyés avec leurs statuts (délivré, ouvert, cliqué, bounced). Accessible via GET /smtp/statistics/events pour les transactionnels et GET /emailCampaigns/{campaignId} pour les campagnes.
Blacklist et désabonnements : Contacts blacklistés (hard bounces, spam complaints) et désabonnés. Exportables via GET /contacts?blacklisted=true et GET /contacts?listUnsubscribed=true. Indispensable pour respecter les préférences de contact dans le nouveau logiciel.
Ce que Brevo stocke
Un compte Brevo contient plusieurs types de données selon les fonctionnalités utilisées.
La migration doit distinguer ce qui est dans Brevo (contacts, templates) de ce qui transite
par Brevo sans y être stocké durablement (contenu des emails envoyés).
Ce que Brevo stocke et qui peut être migré :
Les contacts : email, attributs standard et personnalisés, statuts, listes
Les attributs personnalisés : structure des champs définis dans votre compte
Les deals CRM : opportunités avec étapes, valeurs et contacts associés
Les templates email : HTML et configuration des templates transactionnels et campagnes
Les logs d’envoi : statuts des emails envoyés (délivré, ouvert, cliqué, bounced)
Les blacklists : contacts désabonnés et bloqués (hard bounces, signalements spam)
Ce que Brevo ne stocke pas durablement :
Le contenu complet des emails envoyés : Brevo conserve les métadonnées (sujet, date,
statut) mais pas le corps complet de chaque email envoyé pendant une longue durée.
Les données source : les variables calculées depuis votre logiciel et injectées dans
les templates (montants, références, données métier) viennent de votre SI, pas de Brevo.
Exporter vos données Brevo via l’API
L’API REST Brevo utilise une clé API passée dans le header api-key.
Exporter les contacts avec pagination
GET https://api.brevo.com/v3/contacts?limit=1000&offset=0
La réponse contient un tableau contacts et le champ count pour le total.
Répéter les appels en incrémentant offset jusqu’à avoir récupéré tous les contacts.
Chaque contact contient email, id, attributes (valeurs des attributs personnalisés)
et listIds (IDs des listes d’appartenance).
Récupérer la liste des attributs
GET https://api.brevo.com/v3/contacts/attributes
Retourne la liste de tous les attributs personnalisés avec leur nom, type et catégorie.
Indispensable pour comprendre la structure de données avant de construire le schéma SQL.
Exporter les templates transactionnels
GET https://api.brevo.com/v3/smtp/templates?templateStatus=true&limit=50
Retourne la liste des templates actifs. Pour récupérer le HTML complet d’un template :
GET https://api.brevo.com/v3/smtp/templates/{templateId}
Le champ htmlContent contient le HTML complet avec les variables Brevo ({{contact.FIRSTNAME}}).
Exporter les deals CRM
GET https://api.brevo.com/v3/crm/deals?limit=100&offset=0&sort=desc
Chaque deal contient les attributes (nom, valeur, étape, date de fermeture),
et les contacts associés via linkedContactsIds.
Modèle de données Brevo : ce qu’il faut reconstruire
Contacts → Table SQL
Les contacts Brevo deviennent des enregistrements dans la table contacts ou prospects
du logiciel sur mesure :
Champ Brevo
Colonne SQL cible
email
email (clé unique)
attributes.FIRST_NAME
prenom
attributes.LAST_NAME
nom
attributes.SMS
telephone
Attribut personnalisé texte
VARCHAR(255)
Attribut personnalisé nombre
DECIMAL ou INTEGER
Attribut personnalisé date
DATE
Attribut personnalisé booléen
BOOLEAN
Listes → Segments ou groupes
Les listes Brevo sont des groupes de contacts utilisés pour les campagnes.
Dans le logiciel sur mesure, elles correspondent à des segments (critères de filtre)
ou à des tags appliqués aux contacts. Un contact peut appartenir à plusieurs listes.
Templates → Templates Twig
Les templates Brevo utilisent la syntaxe {{contact.ATTRIBUT}} pour les variables.
Dans Symfony/Twig, ces variables deviennent des paramètres passés au template :
Variable Brevo
Variable Twig
{{contact.FIRSTNAME}}
{{ contact.prenom }}
{{params.ORDER_ID}}
{{ commande.reference }}
{{params.AMOUNT}}
{{ commande.montantFormate }}
Les variables params (paramètres envoyés lors de l’appel API) deviennent les variables
calculées depuis votre base de données dans la version sur mesure.
Ce qui nécessite une décision avant la migration depuis Brevo
Les listes actives pour les campagnes : si Brevo reste pour les campagnes marketing,
les listes en cours ne sont pas migrées mais maintenues à jour via le connecteur API.
Identifier les listes qui servent aux campagnes vs celles qui servent à la segmentation.
Les automatisations Brevo : les scénarios d’automatisation (séquences de bienvenue,
nurturing) doivent être documentés et reconstruits soit dans votre logiciel (pour les
déclencheurs basés sur des événements SI), soit dans Brevo si les campagnes restent là-bas.
Les templates de campagnes marketing : les templates utilisés pour les newsletters
peuvent rester dans Brevo si Brevo est conservé pour le marketing. Seuls les templates
transactionnels (confirmation, facture, notification) sont migrés dans le logiciel.
L’historique d’envoi : les logs de statut (ouvertures, clics) représentent des volumes
importants. Décider si l’historique complet est migré ou si seule la date du dernier envoi
est conservée par contact.
Ce qui peut rester dans Brevo
Brevo est souvent conservé en parallèle du logiciel sur mesure pour les usages marketing :
Campagnes newsletters et marketing : Brevo reste le meilleur outil pour la création
et l’envoi de newsletters, avec son éditeur visuel et ses statistiques de campagne.
Séquences de nurturing marketing : les scénarios d’automatisation marketing (suite
à un téléchargement, anniversaire client) restent dans Brevo, alimentés par la
synchronisation des contacts depuis votre logiciel.
Formulaires de collecte de leads : si Brevo est utilisé pour héberger des formulaires
publics, ils peuvent rester actifs avec synchronisation vers votre logiciel via webhook.
SmartBooster identifie explicitement les données et fonctionnalités à migrer lors du cadrage initial.