QR code vCard : format, champs, et ce que les téléphones ignorent — featured illustration
Technologie

QR code vCard : format, champs, et ce que les téléphones ignorent

5 min de lecture
Créer un QR code

Imprimez 500 cartes de visite avec un QR code qui enregistre vos coordonnées, et la différence entre un contact propre et un contact brouillé se joue sur un format de texte des années 1990. Ce code contient presque toujours une vCard, un bloc de texte que le téléphone transforme en fiche contact. Bien rempli, il s'enregistre en deux gestes ; mal rempli, le téléphone prend votre fonction pour un numéro de fax.

Une vCard n'est que du texte structuré

Une vCard (le format de fichier .vcf) est une série de lignes, une propriété par ligne, encadrées par une ligne BEGIN:VCARD et une ligne END:VCARD. Une ligne comme « TEL;TYPE=CELL:+994501234567 » dit : voici un numéro de téléphone, à étiqueter comme mobile. Aucun format binaire, aucun serveur impliqué. Le QR code stocke ce texte directement, et c'est pourquoi une vCard statique fonctionne sans la moindre connexion internet, dans une salle de conférence en sous-sol ou dans un avion.

Trois versions comptent. La version 2.1 (1996) est un héritage du passé et gère le texte non latin via un système quoted-printable poussif. La version 4.0 (2011) est la plus récente et reste inégalement prise en charge par les téléphones en 2026. La version 3.0 est le choix pratique : chaque version grand public d'iOS et d'Android la lit, et en pratique elle transporte du texte UTF-8 sans paramètres supplémentaires. Si un générateur vous laisse choisir, choisissez la 3.0.

Les champs que les téléphones importent vraiment

Les téléphones ne traitent pas toutes les propriétés vCard de la même façon. Voici ce sur quoi vous pouvez compter quand le scan se produit sur un iPhone d'origine ou un téléphone Android grand public :

ChampCe qu'il transporteComment se passe l'import
FN et NNom affiché et nom structuréFiable sur les deux plateformes
TELNuméros de téléphone avec étiquettes de typeFiable ; tenez-vous-en aux étiquettes standard comme CELL et WORK
EMAILAdresses e-mailFiable
ORGNom de l'entrepriseFiable
TITLEIntitulé de posteFiable
URLUn site webFiable ; une deuxième URL est souvent abandonnée
ADRAdresse postaleFonctionne généralement ; des morceaux atterrissent parfois dans le mauvais sous-champ
NOTETexte libreInconstant ; les sauts de ligne sont supprimés
PHOTODonnées d'image en base64Tient rarement dans un code imprimable ; laissez-la de côté
Propriétés X-Profils sociaux, données personnaliséesIgnorées par la plupart des importateurs

Les sept premières lignes forment le noyau fiable, et par commodité elles sont aussi tout ce dont une carte de visite a besoin : nom, numéros, e-mail, entreprise, poste, site web, adresse. Construisez le code avec elles et rien d'autre.

Pourquoi les photos n'ont pas leur place dans une vCard imprimée

Une vCard portant un nom, deux numéros, un e-mail, l'entreprise, le poste et une URL pèse environ 250 à 350 octets. Cela atterrit dans un QR code autour de la version 11 à 13 (61 à 69 modules de côté), qui s'imprime proprement à 2 à 2,5 cm sur une carte et se scanne à bout de bras.

Une photo change complètement le calcul. Les images voyagent dans le champ PHOTO sous forme de texte base64, ce qui les gonfle d'un tiers : même une minuscule vignette de 2 Ko devient environ 2 700 caractères, et le plafond absolu d'un QR code est de 2 953 octets au niveau de correction d'erreur le plus bas. Une photo échoue donc à tenir tout court, ou produit un code proche de la capacité maximale avec une grille de 177 modules. Au format carte de visite, ces modules font environ un dixième de millimètre, en dessous de ce que les imprimantes de bureau restituent et de ce que les appareils photo de téléphone résolvent. Le détail complet des capacités se trouve dans combien de données un QR code peut contenir ; la version courte pour les cartes, c'est texte uniquement, et le plus léger possible, parce que moins d'octets signifient des modules plus grands et des scans plus rapides.

Les caprices d'import d'iOS et d'Android

Sur iOS, l'application Appareil photo reconnaît un code vCard, affiche une bannière et ouvre un aperçu de contact avec le choix entre créer un nouveau contact ou compléter un contact existant. Elle respecte les étiquettes TEL standard, renomme discrètement les inconnues en « autre », et ne garde souvent que la première de plusieurs URL.

Android est là où la cohérence s'arrête, parce que le scan est assuré par Google Lens sur les Pixel, par le scanner de l'appareil photo de Samsung, et par des dizaines de variantes de constructeurs. La plupart proposent une action d'ajout de contact, mais certaines applications de scan tierces affichent le texte brut de la vCard et laissent l'utilisateur se débrouiller, certains importateurs abandonnent entièrement le champ NOTE, et les sous-champs d'adresse (rue, ville, code postal) fusionnent ou se mélangent à l'occasion. Rien de tout cela n'est une raison de renoncer au code ; c'est une raison de limiter la charge utile aux champs fiables et de tester avant d'imprimer.

Noms non ASCII et encodage des caractères

Si vous vous appelez Əliyev, Müller ou 田中, l'encodage décide si votre nom survit au scan. L'interprétation texte par défaut du standard QR est Latin-1, mais les téléphones modernes attendent de l'UTF-8, et les lecteurs qui devinent mal transforment les caractères en points d'interrogation ou en bouillie. La vCard 3.0 gère l'UTF-8 proprement côté format ; côté code, tout dépend du générateur, qui doit réellement écrire des octets UTF-8.

La défense pratique est simple : construisez le code avec un générateur de QR code vCard au lieu d'assembler le texte à la main, puis scannez le résultat sur un vrai téléphone et ouvrez le contact enregistré. Si le nom s'affiche correctement là, il s'affichera correctement pour tout le monde sur la même plateforme.

Et en France ?

Deux détails français à soigner dans une vCard. Le numéro de téléphone, d'abord : enregistrez-le au format international, +33 suivi du numéro sans le zéro initial, pour qu'il fonctionne aussi depuis un téléphone étranger.

L'adresse, ensuite. Beaucoup d'entreprises françaises reçoivent leur courrier via une adresse CEDEX, avec un code postal et une mention propres. Recopiez-la exactement telle que La Poste la fournit, en gardant le code postal comme texte : un code comme 01000 ou 06000 perd son zéro initial s'il passe par un tableur, et l'adresse devient fausse sur toutes les cartes.

vCard statique ou page de contact hébergée

Tout ce qui précède décrit une vCard statique : vos coordonnées sont inscrites dans le code imprimé. Vous y gagnez un scan hors connexion, aucun coût récurrent et un code qui n'expire jamais. Mais les données sont figées à l'impression : nouveau numéro, nouveau poste, nouvel employeur, et chaque carte en circulation enregistrera toujours les anciennes coordonnées.

L'alternative est un code qui porte une URL courte vers une page de contact hébergée. La page affiche vos coordonnées et propose un bouton d'enregistrement qui télécharge un .vcf frais, donc vous pouvez changer de numéro après l'impression et chaque carte existante se met à jour instantanément. Les coûts : le scan a besoin d'internet, il y a une étape navigateur avant l'enregistrement, et les codes hébergés sont une fonctionnalité payante sur la plupart des plateformes. Chez QRolling, les codes dynamiques s'accompagnent d'un essai de 7 jours et ajoutent des statistiques de scan, donc vous voyez aussi quand et où vos cartes se font scanner. Un générateur de QR code de carte de visite qui prend en charge les deux vous laisse adapter le choix à la carte : coordonnées stables, encodées directement dans le motif ; coordonnées qui changent, hébergées.

Avant que quoi que ce soit ne parte chez l'imprimeur, générez votre code vCard, scannez-le avec un iPhone et un téléphone Android, et lisez chaque champ du contact enregistré. Deux minutes de test coûtent moins cher que 500 cartes réimprimées.

Partager cet article