Les formulaires : collecter des contacts et leur consentement, en toute conformité
Cet article a une vocation d'aide à la configuration. Les libellés indiqués en gras correspondent aux boutons et champs que vous retrouverez dans l'interface.
Quelques exemples d'utilisation
- Inscription à votre newsletter depuis votre site, avec une case de consentement par liste ;
- Demande de contact ou de devis qui crée ou complète la fiche du contact ;
- Enquête de satisfaction (échelle, étoiles, grille) envoyée par lien dans une campagne, pré-remplie pour chaque destinataire ;
- Inscription à un événement, suivie d'un e-mail de confirmation automatique ;
- Mise à jour des préférences d'un contact déjà connu (centres d'intérêt, coordonnées) — à condition d'insérer le lien correctement dans la campagne, voir « pour que les soumissions ne soient pas anonymes ».
Brouillon, version publiée : le principe à retenir
Un formulaire a toujours deux visages :
| Notion | Rôle | Visible du public ? |
|---|---|---|
| Brouillon | Ce que vous modifiez dans l'éditeur : champs, listes, textes, design | Non — seulement via « Prévisualiser » |
| Version publiée | Une photographie figée du brouillon au moment où vous cliquez sur « Publier le formulaire » | Oui — c'est elle que voient vos visiteurs |
Conséquence pratique : toute modification du brouillon n'est visible du public qu'après une nouvelle publication. Chaque publication crée une nouvelle version numérotée (version 1, 2, 3…). Les versions ne sont jamais modifiées après coup : chaque soumission reste rattachée à la version exacte que le visiteur a eue sous les yeux, ce qui vous permet de prouver à quoi il a consenti.
Un formulaire peut avoir l'un des statuts suivants :
| Statut | Signification |
|---|---|
| Brouillon | jamais publié, ou dépublié : le lien public affiche « formulaire indisponible » |
| Publié | accessible au public, dans sa dernière version publiée |
| Archivé | retiré du public et masqué des sélecteurs (campagnes, automatisations, API) ; brouillon, versions et soumissions sont conservés. Réactivable en le remettant en brouillon |
Créer un formulaire
Rendez-vous dans Composants → Formulaires, puis cliquez sur « Nouveau ». Renseignez le « Nom du formulaire » — il est affiché en titre du formulaire public, choisissez-le donc avec soin — et la « Langue du formulaire », puis enregistrez.
Une fois le formulaire enregistré, l'éditeur s'ouvre avec trois onglets : « Contenu », « Listes & RGPD » et « Design & Confirmation ».
Onglet « Contenu » : les champs
Cliquez sur « Ajouter un champ » et choisissez son « Type de champ ». Les types disponibles sont regroupés par famille :
| Famille | Types de champ |
|---|---|
| Texte | Texte, Texte long, E-mail, Téléphone, Mobile |
| Choix | Liste déroulante, Boutons radio, Cases à cocher |
| Évaluation | Échelle linéaire, Avis (étoiles), Grille à choix unique |
| Date & nombre | Date, Date et heure, Nombre |
| Mise en page | Titre de section, Paragraphe (texte d'information, sans saisie) |
| Technique | Champ caché, Langue |
Pour chaque champ, vous pouvez renseigner :
- le « Libellé du champ » (pré-rempli selon le type, modifiable) ;
- l'« Indication de saisie (placeholder) » et le « Texte d'aide » ;
- la case « Obligatoire » ;
- le « Champ de contact associé » (voir ci-dessous) ;
- selon le type : les valeurs possibles (une par ligne) pour les listes, radios et cases à cocher ; les bornes et libellés d'extrémités d'une échelle linéaire (1 à 5 par défaut) ; le nombre d'étoiles d'un avis (5 par défaut) ; les lignes et colonnes d'une grille.
Réordonnez les champs par glisser-déposer, et utilisez « Dupliquer ce champ » pour gagner du temps sur des questions similaires.
Associer un champ à la fiche contact
Le « Champ de contact associé » détermine où va la réponse :
- avec association (ex. « E-mail », « Prénom », ou un de vos champs personnalisés) : la valeur saisie alimente la fiche du contact ;
- sans association (« — non enregistré dans la fiche contact — ») : la réponse est conservée uniquement dans la soumission. C'est le bon choix pour une question d'enquête ponctuelle.
- un même champ de contact ne peut être associé qu'à un seul champ du formulaire ;
- seuls les champs de contact publiés et visibles sont proposés (réglage dans Compte → Champs personnalisés) ;
- une valeur laissée vide n'écrase jamais une information déjà présente sur la fiche du contact.
Affichage conditionnel
Dans les « Options avancées » d'un champ, la section « Affichage conditionnel » permet de ne montrer ce champ qu'en fonction de la réponse à un autre : « Afficher si le champ » … est égal à, est différent de, contient, est renseigné ou est vide … « Valeur ».
Exemple : afficher « Nom de votre société » uniquement si « Vous êtes » est égal à « Professionnel ». Un champ masqué n'est jamais bloquant, même s'il est obligatoire, et sa valeur n'est pas enregistrée.
Formulaire en plusieurs étapes
Toujours dans les options avancées, le numéro d'« Étape » permet de répartir les champs sur plusieurs écrans. Dès que deux numéros différents sont utilisés, le formulaire devient un formulaire multi-étapes.
Onglet « Listes & RGPD » : où vont les contacts
Cliquez sur « Ajouter une liste » pour chaque liste de diffusion que le formulaire doit alimenter. Pour chacune, choisissez le « Mode de consentement » :
| Mode | Fonctionnement | Quand l'utiliser |
|---|---|---|
| Case à cocher dédiée | Une case non pré-cochée s'affiche avec votre texte ; le contact n'est inscrit à la liste que s'il la coche | Recommandé dans tous les cas, obligatoire pour une liste RGPD |
| Inscription implicite | Le contact est inscrit dès qu'il envoie le formulaire, sans case | Uniquement pour une liste sans RGPD renforcé |
Complétez ensuite :
- le « Texte de la case de consentement » — pré-rempli à partir de la finalité déclarée sur la liste. Ce texte exact est figé à la publication et enregistré avec chaque soumission ;
- « Case obligatoire » — si cochée, le formulaire ne peut pas être envoyé sans cette case ;
- la « Base légale RGPD » enregistrée sur l'abonnement créé (consentement, intérêt légitime, exécution d'un contrat…).
Si la liste a les fonctionnalités RGPD activées, la demande de confirmation (double opt-in) est envoyée automatiquement après l'inscription, par l'automatisation de confirmation de la liste.
Mentions d'information et consentement au suivi
- « Afficher les mentions d'information (RGPD) » : affiche, près du bouton d'envoi, le texte des « Mentions d'information » (identité du responsable, finalités, droits…). Un HTML simple est accepté, par exemple un lien vers votre politique de confidentialité.
- « Demander le consentement au suivi par pixel » : ajoute une case dédiée, non pré-cochée, avec le « Texte de la case de consentement au suivi ». C'est la manière la plus simple de recueillir ce consentement dès la collecte de l'adresse, conformément à la recommandation CNIL 2026 (voir notre article sur les pixels de suivi).
Protection contre les robots
- « Délai anti-robot (secondes) » : une soumission envoyée plus vite que ce délai après l'affichage est considérée comme du spam et ignorée ;
- « Captcha » : choisissez « CAP » pour ajouter une vérification anti-robot respectueuse de la vie privée (aucune donnée ne quitte nos serveurs, aucune image à déchiffrer pour vos visiteurs).
Onglet « Design & Confirmation »
Dans la partie « Apparence » :
- « Couleur du bouton et de la barre » — évitez le blanc pur, le bouton deviendrait invisible ;
- « Couleur de fond » — sans effet en intégration sur votre site ;
- « URL du logo » et « Libellé du bouton d'envoi » ;
- « Style minimal (sans habillage Gexmail) » — supprime l'encadré et l'ombre, pour que le formulaire intégré hérite des styles de votre site.
Un aperçu en direct vous montre le rendu du bouton.
Dans la partie « Après la soumission », choisissez l'« Action après soumission » : « Afficher un message de confirmation » (que vous rédigez) ou « Rediriger vers une URL » (par exemple une page de remerciement de votre site, l'adresse doit commencer par http:// ou https://).
Prévisualiser et publier
À tout moment, cliquez sur « Prévisualiser » pour voir le brouillon exactement comme le verra le public. Dans l'aperçu, l'envoi est désactivé : aucun contact n'est créé.
Quand le formulaire est prêt, cliquez sur « Publier le formulaire ». Une fenêtre récapitule les champs et les listes alimentées, puis confirme la publication. L'éditeur indique ensuite la version en ligne (par exemple « version 2 publiée le … »).
Pour retirer temporairement le formulaire, cliquez sur « Dépublier » : le lien public n'est plus accessible, mais le brouillon, l'historique des versions et les soumissions sont conservés. Une nouvelle publication le remet en ligne, au même lien.
Modifier un formulaire existant
Depuis Composants → Formulaires, cliquez sur le formulaire pour ouvrir l'éditeur. Les modifications s'enregistrent dans le brouillon, puis :
- vérifiez le résultat avec « Prévisualiser » ;
- cliquez sur « Publier le formulaire » pour créer une nouvelle version.
Le lien public et le code d'intégration ne changent pas d'une version à l'autre : inutile de mettre à jour votre site.
Ce qu'il faut savoir avant de modifier
- Les soumissions passées ne sont pas affectées : elles restent rattachées à la version qui était affichée. Modifier un texte de consentement ne réécrit donc jamais une preuve existante.
- Supprimer un champ n'efface pas les réponses déjà reçues : elles restent visibles dans les soumissions et dans l'export CSV.
- Changer l'association d'un champ à la fiche contact ne s'applique qu'aux nouvelles soumissions.
- Retirer une liste du formulaire ne désinscrit pas les contacts déjà inscrits par ce formulaire.
Dupliquer un formulaire
Dans le menu « Actions » de l'éditeur, cliquez sur « Dupliquer » et saisissez le « Nom du nouveau formulaire ». Les champs, listes associées, textes et design sont recopiés dans un nouveau brouillon, avec un nouveau lien public. Les versions publiées et les soumissions ne sont pas copiées.
Archiver un formulaire
Quand un formulaire n'a plus vocation à servir (opération terminée, enquête close…), archivez-le : menu « Actions » → « Archiver », puis confirmez. Le formulaire archivé :
- n'est plus accessible au public (lien, intégration sur votre site et API) ;
- est masqué des sélecteurs : il n'est plus proposé dans l'éditeur de campagne, dans les automatisations ni dans la liste de l'API ;
- conserve son brouillon, ses versions et ses soumissions (preuves RGPD), toujours consultables et exportables.
Il reste visible dans Composants → Formulaires avec le statut « Archivé ». Pour le réutiliser, ouvrez-le et cliquez sur « Remettre en brouillon » : vous pouvez alors le modifier et le publier à nouveau (un formulaire archivé ne peut pas être publié directement).
Dépublier, archiver ou supprimer ?
| Action | Quand l'utiliser | Soumissions |
|---|---|---|
| Dépublier | pause temporaire, le formulaire reviendra | conservées |
| Archiver | formulaire terminé, à ranger durablement | conservées |
| Supprimer | formulaire de test ou créé par erreur, sans aucune soumission | — |
Supprimer un formulaire
Un formulaire qui n'a jamais reçu de soumission peut être supprimé (menu « Actions » → « Supprimer », ou sélection multiple dans la liste des formulaires). Un formulaire qui a reçu des soumissions ne peut pas être supprimé : ses soumissions constituent la preuve du consentement de vos contacts. Archivez-le à la place.
Diffuser le formulaire
Une fois le formulaire publié, cliquez sur « Partager » pour obtenir :
| Mode de diffusion | Usage |
|---|---|
| Lien public | Une page hébergée par Gexmail, à partager par e-mail, sur les réseaux sociaux, dans un QR code… |
| Script d'intégration (recommandé) | À coller dans une page de votre site : le formulaire s'affiche à l'endroit exact du script et sa hauteur s'ajuste automatiquement |
| Iframe | Alternative sans JavaScript, à hauteur fixe |
| API | Pour soumettre depuis votre propre formulaire ou application (voir plus bas) |
Chaque bouton « Copier » place le lien ou le code dans votre presse-papiers.
Insérer le formulaire dans une campagne : pour que les soumissions ne soient pas anonymes
Dans l'éditeur d'e-mail :
- sélectionnez le bouton (ou le lien) qui doit ouvrir le formulaire ;
- dans le panneau « Propriétés », sous « Lien (URL) », ouvrez la première liste et choisissez « Formulaire » (et non « URL web ») — repère 1 ci-dessous ;
- dans la seconde liste, à droite, choisissez votre formulaire — repère 2. Seuls les formulaires publiés y figurent ;
- enregistrez la campagne.

Au moment de l'envoi, Gexmail génère un lien personnel pour chaque destinataire. Quand il clique :
- le formulaire s'ouvre pré-rempli avec les informations déjà connues (pour les champs associés à la fiche contact) ;
- sa réponse est rattachée à sa fiche contact, même si le formulaire ne demande ni nom ni e-mail. C'est idéal pour une enquête de satisfaction courte : une seule question suffit, vous savez qui a répondu.
| Lien inséré dans la campagne | Pré-remplissage | Réponse rattachée au destinataire |
|---|---|---|
| Type « Formulaire » + choix du formulaire | Oui | Oui, toujours |
| Type « URL web » + lien public collé | Non | Non — sauf si la personne ressaisit elle-même un champ d'unicité (son e-mail, par exemple) qui permet de la retrouver |
Comment vérifier ? Dans « Soumissions », la colonne « Contact » affiche le nom du destinataire, cliquable vers sa fiche. Si elle affiche « — » pour des réponses venues de votre campagne, le lien a été inséré en « URL web » : corrigez-le pour vos prochains envois (les réponses déjà reçues ne peuvent pas être rattachées après coup).
- Le formulaire doit être publié au moment de l'envoi de la campagne, et le rester tant que vous attendez des réponses.
- Ce lien personnel ne fonctionne que dans les e-mails. Dans une landing page, le visiteur n'est pas identifié : demandez-lui son e-mail dans le formulaire.
- Si un destinataire transfère l'e-mail, la personne qui remplit le formulaire depuis ce lien sera rattachée à la fiche du destinataire d'origine.
- Ce rattachement ne dépend pas du consentement au suivi (pixel), puisque la personne envoie volontairement ses réponses. Ne présentez pas pour autant ce formulaire comme anonyme, et indiquez dans vos mentions d'information que les réponses alimentent la fiche contact.
Hors campagne (lien public, site, réseaux sociaux), la seule façon de savoir qui répond est de demander un champ d'unicité — en général l'e-mail — associé à la fiche contact : Gexmail retrouve alors le contact existant ou en crée un nouveau.
Déclencher une automatisation
Dans Composants → Automatisations, l'événement « Un contact soumet un formulaire » permet d'envoyer automatiquement un e-mail (remerciement, confirmation d'inscription à un événement, documentation…) après chaque soumission. Voir notre article sur les automatisations.
Que se passe-t-il quand un visiteur envoie le formulaire ?
- Les réponses sont vérifiées : champs obligatoires, valeurs autorisées, cases de consentement obligatoires. En cas d'erreur, le formulaire est réaffiché avec les réponses déjà saisies.
- Si le visiteur arrive par un lien de campagne de type « Formulaire », il est identifié directement. Sinon, Gexmail recherche un contact existant à partir de vos champs d'unicité (en général l'e-mail). S'il le trouve, sa fiche est complétée ; sinon un nouveau contact est créé.
- Le contact est inscrit aux listes pour lesquelles il a coché la case (ou implicitement, selon votre configuration), avec la date, l'adresse IP et le texte du consentement.
- Le consentement au suivi par pixel est enregistré, s'il a été donné.
- La soumission est conservée avec sa preuve : date, canal, version affichée, et texte exact de chaque consentement (donné ou refusé).
- Le visiteur voit votre message de confirmation, ou est redirigé vers votre page.
Suivre les résultats
Soumissions
Le bouton « Soumissions » affiche les réponses reçues, de la plus récente à la plus ancienne : date, contact, données saisies, consentements, canal et version.
| Canal | Provenance |
|---|---|
| hosted | le lien public (page hébergée) |
| embed | le formulaire intégré sur votre site |
| landing_page | une de vos pages Gexmail contenant le formulaire |
| api | une soumission envoyée par votre application |
Le bouton « Exporter CSV » télécharge l'ensemble des soumissions (une colonne par champ, toutes versions confondues). L'export est réservé aux comptes actifs.
Statistiques
Le bouton « Statistiques » présente les vues et les soumissions jour par jour sur les 30 derniers jours. Le taux de conversion (soumissions / vues) est également visible dans la liste des formulaires.
Test A/B
Vous hésitez entre deux formulations ? Dans l'éditeur, la section « Test A/B » permet de comparer la version publiée (A) à une version antérieure (B) :
- publiez une première version, modifiez le brouillon, puis publiez la seconde ;
- cochez « Activer le test A/B », choisissez la « Variante B » parmi les versions précédentes ;
- réglez le « Trafic vers la variante B (%) » (de 1 à 99).
Chaque visiteur voit toujours la même variante. La performance de chaque version apparaît dans les statistiques, sous « Performance par version (A/B) ».
Soumettre un formulaire depuis votre application (API)
Si vous préférez construire votre propre formulaire, vous pouvez utiliser la structure d'un formulaire Gexmail publié et lui envoyer les réponses. Authentifiez-vous d'abord (jeton Bearer obtenu via POST /api/v2/auth/login), puis :
GET /api/v2/forms— liste vos formulaires ;GET /api/v2/forms/{token}— renvoie la version publiée : champs (avec leur clé), listes et textes de consentement ;POST /api/v2/forms/{token}/submissions— envoie une soumission :
POST /api/v2/forms/{token}/submissions
{
"fields": { "email": "jean@exemple.fr", "first_name": "Jean" },
"consents": { "12": true, "tracking_pixel": true },
"ip": "adresse IP du visiteur",
"user_agent": "navigateur du visiteur"
}
Dans consents, chaque clé est l'identifiant d'une liste du formulaire (ou tracking_pixel pour le suivi). En transmettant true, vous attestez avoir recueilli ce consentement auprès de la personne, avec le texte exact de la version publiée. Transmettez l'adresse IP et le navigateur du visiteur, et non ceux de votre serveur : ils font partie de la preuve.
La réponse renvoie l'identifiant de la soumission et celui du contact. Si le formulaire n'est pas publié, l'appel est refusé.
Questions fréquentes
J'ai modifié mon formulaire mais mes visiteurs voient toujours l'ancienne version.
Les modifications restent dans le brouillon tant que vous ne cliquez pas sur « Publier le formulaire ». Publiez à nouveau pour les mettre en ligne ; le lien et le code d'intégration restent identiques.
Pourquoi ne puis-je pas choisir « Inscription implicite » pour ma liste ?
La liste a les fonctionnalités RGPD activées. Elle exige un consentement explicite : une case à cocher dédiée, non pré-cochée.
Pourquoi le champ de contact que je cherche n'apparaît-il pas dans la liste ?
Seuls les champs de contact publiés et visibles sont proposés. Vérifiez sa configuration dans Compte → Champs personnalisés. Un champ de contact déjà associé à un autre champ du formulaire ne peut pas être associé une seconde fois.
Un contact qui remplit deux fois le formulaire crée-t-il un doublon ?
Non, dès lors que le formulaire demande vos champs d'unicité (en général l'e-mail) : la fiche existante est complétée, et une nouvelle soumission est enregistrée.
Pourquoi ne puis-je pas supprimer mon formulaire ?
Il a reçu des soumissions, qui constituent la preuve du consentement de vos contacts. Utilisez « Archiver » : il disparaît du public et des sélecteurs, tout en conservant ses soumissions.
J'ai envoyé mon formulaire dans une campagne, mais je ne sais pas qui a répondu.
Le lien a très probablement été inséré en « URL web » avec le lien public du formulaire : tous les destinataires ont reçu le même lien, les réponses sont donc anonymes. Pour vos prochains envois, choisissez le type « Formulaire » dans « Lien (URL) », puis votre formulaire (voir la section « Insérer le formulaire dans une campagne »).
Le bouton de ma campagne mène à une page « formulaire indisponible ».
Le formulaire a été dépublié ou archivé depuis l'envoi. Remettez-le en brouillon si nécessaire, puis publiez-le : le lien fonctionne à nouveau.
Un visiteur me dit avoir envoyé le formulaire, mais je ne vois pas sa soumission.
Elle a pu être écartée par la protection anti-robot, par exemple si le formulaire a été envoyé plus vite que le « Délai anti-robot ». Si ce cas se répète, réduisez ce délai.
Le formulaire intégré n'apparaît pas sur mon site.
Vérifiez que le formulaire est bien publié, et que le script a été collé tel quel dans la page. Si votre site bloque le JavaScript tiers, utilisez le code iframe.
Besoin d'aide supplémentaire ?
Si cet article n'a pas répondu à toutes vos questions, nos équipes sont à votre disposition.