LanderKit

Faut-il ajouter un champ d’upload de fichier à votre formulaire de landing page ?

Publié le 4 septembre 2026 · 8 min de lecture

Un formulaire de recrutement sans champ CV, un devis d’artisan sans possibilité de joindre une photo du chantier, un dossier de formation CPF sans justificatif : dans plusieurs secteurs que ce blog couvre, le formulaire texte classique ne suffit pas. Il manque une pièce, un document, une preuve — et la question se pose alors : faut-il ajouter un champ d’upload de fichier au formulaire de la landing page ? La réponse dépend de trois choses rarement traitées ensemble : ce que ça coûte en conversion, ce que ça ouvre comme risque de sécurité, et ce que ça implique en RGPD dès qu’un fichier personnel — CV, pièce d’identité, photo d’un lieu privé — transite par votre serveur.

Quels formulaires ont réellement besoin d’un champ fichier

Le champ fichier n’est justifié que lorsque le document est une pièce de travail, pas un supplément « au cas où ». Quatre cas reviennent régulièrement :

  • Recrutement — une landing page de recrutement sans possibilité de joindre un CV oblige le candidat à écrire un pavé de texte dans un champ « message », ou à répondre par email : le champ fichier est ici la donnée de travail, exactement comme le numéro de téléphone l’est pour un courtier.
  • Devis avec photos — un formulaire de devis chez un artisan gagne énormément à accepter une ou deux photos du chantier : le devis renvoyé est plus précis, et le visiteur perçoit immédiatement l’utilité de la demande.
  • Dossier de financement — une formation éligible CPF ou un dossier OPCO demande parfois un justificatif (attestation Pôle emploi, pièce d’identité) : mieux vaut le collecter au bon moment du parcours que de le découvrir au moment de la signature.
  • Candidature ou appel d’offres — brief créatif, portfolio, dossier de candidature à un concours ou une bourse : le fichier est le livrable attendu, pas une option.

En dehors de ces cas, résistez à la tentation. Un champ fichier ajouté « pour être complet » sur un formulaire de contact générique n’améliore rien et coûte cher en conversion, pour des raisons qui tiennent autant à l’ergonomie qu’à la psychologie de la divulgation.

Ce que ça coûte en conversion

Sur mobile comme sur desktop, demander un fichier ajoute une rupture que les autres champs n’ont pas : le visiteur doit interrompre sa navigation, retrouver le document sur son appareil — ou pire, le photographier sur place — puis revenir au formulaire. Cette rupture d’intention est l’une des causes d’abandon les plus documentées sur les formulaires en plusieurs étapes : chaque aller-retour hors du formulaire est une occasion de ne jamais revenir. La règle générale détaillée dans combien de champs pour convertir s’applique ici avec plus de force encore qu’ailleurs : un champ fichier doit rapporter, en qualité de traitement, largement plus qu’il ne coûte en volume.

Ce que dit la recherche sur la divulgation de documents personnels

Une étude de Kim, Duong et Xiong publiée en 2026 dans le Journal of Information & Knowledge Management (« A Career-Oriented Information Disclosure on Professional Networking Sites: Privacy Calculus and Regulatory Focus Perspectives ») montre, chez des candidats à l’emploi, que la décision de divulguer des informations liées à leur carrière suit un calcul explicite entre utilité perçue et risque perçu : plus l’utilité de la divulgation est claire, plus le candidat est disposé à la faire ; plus le risque perçu — vis-à-vis du recruteur autant que de la plateforme elle-même — est élevé, moins il divulgue. Un fichier CV en dit structurellement plus qu’un champ texte : adresse, photo, trous de carrière, parfois affiliations. Le champ fichier hérite donc de tout le risque perçu d’un champ téléphone ou email, en plus dense. La conséquence pratique est directe : la ligne de microcopie sous le champ (« Utilisé uniquement pour étudier votre candidature, jamais transmis à un tiers ») n’est pas cosmétique, elle change la mécanique de décision que l’étude met en évidence.

Sécuriser un champ d’upload : ce qui casse si vous improvisez

Une étude de Wichmann, Groddeck et Federrath présentée en 2022 à la conférence ARES (International Conference on Availability, Reliability and Security) — « FileUploadChecker: Detecting and Sanitizing Malicious File Uploads in Web Applications at the Request Level » — rappelle pourquoi valider un fichier reçu par sa seule extension ou par le type MIME déclaré par le navigateur reste insuffisant : ces deux informations sont fournies par le client, donc falsifiables, et laissent passer des fichiers dont le contenu réel ne correspond pas à ce qu’ils prétendent être. Les auteurs proposent un contrôle au niveau de la requête, indépendant du code de l’application, pour intercepter ce type de fichier avant qu’il n’atteigne le stockage. Trois règles s’appliquent quel que soit votre stack : valider le contenu réel du fichier côté serveur, imposer une taille maximale explicite, et ne jamais stocker ni servir le fichier depuis un répertoire capable d’exécuter du code.

Comment l’implémenter proprement dans Next.js

Pour un fichier de quelques centaines de kilo-octets (CV, photo compressée), une Server Action qui reçoit le FormData et transfère le fichier vers un stockage objet (S3, Cloudflare R2) fonctionne bien. Au-delà de quelques mégaoctets, préférez un upload direct depuis le navigateur vers le stockage via une URL signée générée par votre backend : le fichier ne transite plus par votre fonction serverless, ce qui évite de buter sur les limites de taille et de durée d’exécution de plateformes comme Vercel. Dans les deux cas, générez un nom de fichier aléatoire côté serveur — ne conservez jamais le nom original tel quel, il peut contenir des caractères ou des chemins problématiques — et associez-le à la soumission du formulaire plutôt qu’à une URL publique prévisible.

RGPD : un CV n’est pas une donnée comme les autres

Un CV ou un justificatif combine plusieurs données personnelles dans un seul fichier, parfois plus sensibles que l’ensemble des autres champs du formulaire réunis : identité, photo, parcours, parfois indirectement des informations relevant de catégories particulières (interruption de carrière, appartenance associative mentionnée dans les activités). Les principes détaillés dans notre guide du formulaire conforme RGPD s’appliquent avec une exigence renforcée : finalité précise, accès restreint aux seules personnes qui traitent la candidature, et une durée de conservation qui ne dépasse pas ce que le traitement exige — un CV non retenu n’a, en général, aucune raison de rester stocké au-delà de quelques mois. Évitez aussi le réflexe qui consiste à faire suivre chaque fichier reçu par email non chiffré à toute une équipe : un lien d’accès restreint vers le stockage est plus sûr et plus facile à purger.

Réduire la friction sans renoncer au fichier

  • Rendre le champ optionnel quand c’est possible — sur un recrutement par exemple, acceptez la candidature sans CV et proposez de l’envoyer par email ensuite : même logique que pour les champs obligatoires et optionnels en général.
  • Proposer une alternative sans fichier — un champ « ou collez le lien de votre profil LinkedIn » capture une partie des visiteurs qui n’ont pas leur CV sous la main.
  • Annoncer les contraintes avant le clic — formats acceptés et poids maximal affichés sous le champ, pas découverts après un rejet ; un message clair en cas d’erreur suit les mêmes règles que nos messages d’erreur de formulaire.
  • Activer la capture photo sur mobile — l’attribut capture sur un champ accept="image/*" ouvre directement l’appareil photo pour une photo de chantier, sans passer par la galerie.

En pratique sur votre landing page

Sur les dix templates LanderKit (89 € l’unité, 229 € le pack), le formulaire est un composant isolé : ajouter un champ fichier optionnel avec sa microcopie de réassurance se fait sans toucher au reste de la page. C’est particulièrement pertinent sur un template orienté dossier comme Formation CPF, où un justificatif accélère le traitement du financement, ou sur Agence locale, où une photo jointe au formulaire de devis transforme une demande vague en dossier exploitable dès le premier échange.

FAQ

Questions fréquentes

Faut-il rendre le champ fichier obligatoire ou optionnel ?

Optionnel par défaut, sauf si le fichier est strictement indispensable au traitement de la demande (candidature à un concours, dossier de financement). Dans les autres cas, un champ optionnel avec une alternative de suivi par email capture plus de leads sans perdre ceux qui ont le document sous la main.

Quels formats et quelle taille maximale accepter ?

Limitez-vous aux formats réellement exploitables par votre équipe — PDF et JPEG/PNG couvrent la quasi-totalité des cas (CV, photo, justificatif) — et fixez une taille maximale explicite, affichée avant le clic, généralement entre 5 et 10 Mo pour ce type de document.

Où stocker les fichiers reçus par un formulaire ?

Un stockage objet (S3, Cloudflare R2) avec accès restreint par URL signée est la solution la plus sûre et la plus simple à faire évoluer. Évitez les buckets publics et la transmission systématique du fichier brut par email non chiffré à toute une équipe.

Un champ upload de fichier ralentit-il le chargement de la page ?

Non : le champ lui-même n’ajoute aucun poids à la page, seul l’envoi du fichier au moment de la soumission consomme de la bande passante côté visiteur. Ce qui compte est de ne pas faire transiter de gros fichiers par une fonction serverless à durée d’exécution limitée — d’où l’intérêt d’un upload direct vers le stockage pour les fichiers de plusieurs mégaoctets.

À lire ensuite

Articles liés