Sunrise 2027 au Canada

GS1 Digital Link dans les deux langues officielles du Canada

Un seul code imprimé, deux langues officielles, et un résolveur qui doit trancher entre les deux. La décision linguistique est la partie du GS1 Digital Link que les marques canadiennes doivent réussir, et presque personne n'en parle.

Pour commencer, brièvement

Le GS1 Digital Link est une façon d'écrire un identifiant de produit sous la forme d'une adresse web. Le même symbole sur un emballage peut transmettre un GTIN à une caisse et ouvrir une page web dans le téléphone d'un client. Derrière cette adresse se trouve un résolveur : le service qui reçoit la requête et décide quoi renvoyer.

Ce mécanisme est bien expliqué à plusieurs endroits, notamment dans l'explication de QRbolt, qui détaille la structure de l'URI. Il n'y a aucune raison de le réécrire ici. Si les termes de cette page ne vous sont pas familiers, le glossaire en donne de courtes définitions, et l'aperçu de Sunrise 2027 explique ce que Sunrise 2027 est et ce qu'il n'est pas.

Cette page porte sur la partie que les guides rédigés pour des marchés unilingues passent entièrement sous silence. Au Canada, un résolveur ne décide pas seulement quelle page renvoyer. Il décide dans quelle langue la renvoyer. Cette décision entraîne des obligations qui n'ont rien à voir avec les codes à barres, et elle est prise des centaines de fois par jour par un système que la plupart des équipes de marque ne regardent jamais.

Un code, deux langues, une destination

Un symbole imprimé encode une seule adresse. Ce n'est pas une limite de la norme, c'est une propriété de l'encre. Vous ne pouvez pas imprimer un code qui mène un client francophone vers une page en français et un client anglophone vers une page en anglais, parce que le client ne fait pas partie de ce qui est imprimé.

La bifurcation doit donc se produire après le balayage. Peu importe ce que votre équipe d'emballage décide par ailleurs, le résolveur et la page qu'il dessert sont les seuls endroits où deux langues peuvent sortir d'un même symbole. Il vaut la peine de le dire clairement, parce que l'hypothèse inverse refait constamment surface à la révision des maquettes : quelqu'un propose deux codes, un par langue, et il faut revenir sur l'idée. Deux codes, cela veut dire deux identifiants ou deux destinations pour un seul produit, plus d'espace consommé sur le panneau plutôt que moins, et un client qui doit deviner quel carré lui est destiné.

Si cela pèse plus lourd ici qu'ailleurs, c'est pour une raison. L'emballage canadien porte déjà l'anglais et le français, si bien que le panneau est déjà chargé avant même qu'on y ajoute un code 2D. C'est précisément cet encombrement qui rend le code 2D attrayant : il déplace le détail hors d'une surface qui n'a plus de place. Mais sortir de l'information du panneau, c'est la faire entrer dans un système qui doit désormais faire le bon choix de langue, chaque fois, pour une personne qui ne voit pas comment le choix a été fait et qui n'a aucun moyen de vous dire qu'il était mauvais.

Pour la personne qui construit la page

Cette section s'adresse à celles et ceux qui réalisent la destination, et la version courte, pour tous les autres, tient en une phrase : choisissez une valeur par défaut à partir du réglage de langue du navigateur, puis placez dans la page un sélecteur de langue visible, parce que la supposition automatique sera fausse assez souvent pour que cela compte.

Ce qui arrive réellement quand quelqu'un balaie le code

Quand un téléphone ouvre l'adresse, le navigateur envoie un en-tête Accept-Language. Celui-ci transporte les étiquettes de langue que l'appareil est configuré pour préférer, dans l'ordre, parfois avec des pondérations. Sur un appareil canadien, vous pourriez voir fr-CA en premier, ou en-CA, ou un fr ou un en générique, ou encore une liste plus longue qui contient les deux.

Cet en-tête est le point de départ honnête pour établir une valeur par défaut. Il est aussi peu fiable, et de façons qui comptent :

  • Il reflète l'appareil, pas la personne qui lit. Beaucoup de Québécois francophones utilisent leur téléphone en anglais. Beaucoup de ménages bilingues partagent un même appareil. L'en-tête décrit un réglage du système d'exploitation, pas une préférence de lecture pour une liste d'ingrédients.
  • Il peut être générique. fr seul ne vous dit pas si vous devriez servir du français québécois ou du français européen. Pour une étiquette canadienne, ce n'est pas la même chose.
  • Il peut ne pas arriver du tout, ou arriver du mauvais endroit. Les balayages se font souvent dans un navigateur intégré à une application : une application d'appareil photo, une application de messagerie, une application sociale. Ce que celles-ci transmettent varie, et ce n'est pas toujours la préférence de l'utilisateur lui-même.
  • L'emplacement n'est pas la langue. Résoudre par géolocalisation IP est tentant, et pire que l'en-tête. Savoir qu'une requête provient du Québec ne vous apprend rien de fiable sur la langue que lit la personne dans l'allée. Savoir qu'elle provient de l'Ontario vous en apprend encore moins, parce que les communautés francophones ne se limitent pas à une seule province.

L'en-tête est donc une valeur par défaut raisonnable et un mauvais décideur. Traitez-le comme une première supposition dont vous prévoyez qu'elle sera fausse dans une proportion non négligeable des cas.

Pourquoi un sélecteur visible vaut mieux qu'une détection ingénieuse

La détection automatique a un défaut structurel : elle est invisible et elle n'a aucune boucle de rétroaction. Le client ne voit pas ce qui a été décidé, ne peut pas vous dire que c'était faux et, dans la plupart des implémentations, ne peut pas le corriger sans le chercher.

La conception qui tient la route n'a rien de spectaculaire. Servez-vous de l'en-tête pour choisir une valeur par défaut, placez ensuite dans la page une commande de langue visible et évidente, et retenez le choix de cette personne. Quelques détails font la différence entre un sélecteur qui fonctionne et un sélecteur qui agace :

  • Donnez à chaque langue sa propre adresse URL stable. Une page qui change de langue à la même adresse ne peut être ni partagée, ni mise en signet, ni liée, ni indexée correctement, et quelque chose finira par la mettre en cache de travers. Des chemins distincts sont plus faciles à raisonner et plus faciles à démontrer.
  • Si vous faites malgré tout varier le contenu à une même adresse, dites-le. Une réponse qui change selon Accept-Language a besoin d'un en-tête Vary, sinon un réseau de diffusion de contenu servira allègrement la langue d'un client à tout le monde derrière ce nœud de cache. C'est une défaillance vraiment courante, et elle se produit à l'échelle d'une région plutôt qu'un balayage à la fois.
  • Gardez le lecteur là où il est. Changer de langue devrait mener au même produit, idéalement à la même section. Un sélecteur qui laisse tomber l'utilisateur sur une page d'accueil générique est la façon la plus courante, pour un site bilingue, de punir la personne qui en avait le plus besoin.
  • Indiquez la langue dans le balisage. L'attribut lang et les renvois croisés entre les deux versions coûtent peu, et ils aident à la fois les technologies d'assistance et les robots d'indexation à comprendre qu'il s'agit de deux versions d'une même chose plutôt que de doublons.

La norme n'est généralement pas l'obstacle ici, et il vaut la peine de vérifier la spécification actuelle du résolveur directement auprès de GS1 plutôt que de vous fier à la parole d'un fournisseur quant à ce qu'elle permet. L'obstacle, c'est habituellement que personne n'a spécifié le comportement, de sorte que la valeur par défaut de la plateforme est devenue la politique sans que personne ne s'en aperçoive.

Étiquetage ou marketing, et pourquoi la distinction décide de tout

Voici la question qui détermine réellement l'importance de tout ceci, et ce n'est pas une question technique.

Une page atteinte par balayage peut être deux choses très différentes. Elle peut relever du marketing : histoire de marque, recettes, campagne, récit de provenance. Ou elle peut porter du contenu d'étiquette : ingrédients, allergènes, quantité nette, mode d'emploi, mises en garde, valeur nutritive, allégations sur le produit.

Les attentes rattachées à l'un et à l'autre ne sont pas les mêmes. Les renseignements obligatoires figurant sur l'étiquette des produits de consommation préemballés au Canada sont déjà soumis à des exigences de bilinguisme en vertu de la réglementation fédérale sur l'emballage, l'étiquetage et les aliments. Le matériel promotionnel est encadré autrement. Si la page derrière votre code fonctionne comme du contenu d'étiquette, l'hypothèse de travail raisonnable est qu'elle hérite des attentes rattachées au contenu d'étiquette plutôt que des attentes plus souples rattachées à une brochure.

Ce qui demeure véritablement incertain, c'est l'endroit où passe la frontière dans le cas d'une page qu'un consommateur atteint en balayant un code. S'agit-il d'une partie de l'étiquette, d'un document accompagnant le produit ou d'une publication commerciale? La réponse dépend vraisemblablement de ce que contient la page, du fait que l'emballage y dirige ou non le client pour obtenir des renseignements obligatoires, et de ce qui reste ou non imprimé sur le panneau. Je ne vais pas vous tracer de ligne nette, parce que je ne crois pas qu'il en existe une que je pourrais défendre.

Ceci ne constitue pas un avis juridique.

Il s'agit d'une synthèse éditoriale rédigée à l'intention des équipes d'emballage et de marque, pour qu'elles sachent quelles questions soulever. La question de savoir si une obligation précise s'applique à votre produit, à votre page et à votre marché est une question juridique qui dépend des faits. Obtenez l'avis d'un conseiller juridique canadien compétent, et plus particulièrement d'un conseiller juridique du Québec si vous vendez au Québec.

Ce qui découle de cette incertitude est un enjeu de gouvernance, pas un enjeu juridique. Dès qu'un contenu de nature étiquette vit dans une page, quiconque peut modifier cette page peut modifier du contenu d'étiquette sans tirage d'impression, sans révision de maquette et sans que personne aux affaires réglementaires ne s'en aperçoive. Si la destination balayée doit porter ce genre de contenu, elle a besoin du contrôle des changements dont la maquette bénéficie déjà : gestion des versions, étape d'approbation et registre de ce qui était en ligne à une date donnée.

La Charte de la langue française

La Charte de la langue française du Québec est l'élément que les marques canadiennes découvrent le plus souvent trop tard.

À un niveau que je suis à l'aise d'énoncer : la Charte exige le français sur les inscriptions apposées sur un produit et sur les documents fournis avec celui-ci, et lorsqu'une autre langue y figure aussi, le français ne doit pas y occuper une place moins en évidence. Elle traite également des publications commerciales et du matériel qu'une entreprise met à la disposition du public, et l'attente, en pratique, a été qu'une entreprise qui exerce ses activités au Québec n'offre pas une expérience en français plus mince ou plus difficile d'accès que son expérience en anglais. Des modifications adoptées ces dernières années, couramment appelées la Loi 96, ont renforcé le régime et modifié l'approche en matière d'application qui l'entoure.

Savoir si une page atteinte en balayant un code sur l'emballage constitue une inscription, un document d'accompagnement, une publication commerciale ou quelque chose que la Charte n'avait pas envisagé, c'est exactement le genre de question pour laquelle je ne me fierais pas à la réponse assurée d'un fournisseur, y compris à une réponse assurée voulant qu'elle ne s'applique pas. Consultez un conseiller juridique. Posez la question avec précision : non pas « pouvons-nous utiliser un code QR », mais « si ce contenu précis passe du panneau à la page balayée, qu'est-ce qui change à nos obligations au Québec ».

Il existe une posture de conception défendable quelle que soit l'issue de cette question, et c'est celle que je recommanderais pour des motifs d'expérience client même si aucune loi n'existait. Faites en sorte que la version française soit complète, et non un sous-ensemble réduit de la version anglaise. Faites en sorte qu'elle s'atteigne en autant d'étapes, pas davantage. Faites-la traduire pour le Québec plutôt que de l'adapter à partir du français européen, qui sonne étranger d'une manière qui compte sur un marché qui le remarque. Une marque dont la page française est équivalente sur le fond et tout aussi facile à atteindre n'est pas celle qui finit par devoir s'expliquer.

La Loi 25, et le balayage que vous venez de consigner

La consignation des balayages est activée par défaut dans beaucoup de plateformes de ce marché, et le journal est plus intéressant qu'on le suppose. Un événement de balayage peut porter une adresse IP, un emplacement approximatif qui en est dérivé, une empreinte de l'appareil et du navigateur, un horodatage, le produit balayé et, souvent, un identifiant qui persiste d'un balayage à l'autre.

Selon ce qui est recueilli et selon le degré d'identifiabilité, il peut s'agir de renseignements personnels. La loi applicable dépend de l'endroit où vous exercez vos activités et de ce que vous êtes : la LPRPDE au fédéral, la loi québécoise sur la protection des renseignements personnels dans le secteur privé telle que modifiée par la Loi 25, et les lois provinciales sur le secteur privé en Alberta et en Colombie-Britannique. Les produits qui touchent à la santé peuvent encore une fois faire entrer d'autres régimes en jeu.

Sur la Loi 25 précisément, à un niveau de généralité que je peux assumer : elle a modernisé par étapes la loi québécoise sur la protection des renseignements personnels dans le secteur privé, resserré les attentes en matière de transparence et de consentement, introduit la déclaration des incidents de confidentialité ainsi qu'une personne désignée responsable de la protection des renseignements personnels, et ajouté une obligation d'évaluation visant les renseignements qui circulent à l'extérieur du Québec. Elle traite aussi des technologies permettant d'identifier, de localiser ou de profiler une personne, en exigeant qu'une entreprise informe la personne du recours à une telle technologie et des moyens offerts pour en activer les fonctions. La lecture pratique est que l'identification, la localisation et le profilage sont censés être inactifs à moins que la personne ne les active, ce qui constitue une valeur par défaut plus stricte que le fait d'offrir un mécanisme de retrait. La question de savoir si quoi que ce soit de tout cela se rattache à votre consignation de balayages dépend de ce que vous recueillez réellement. Confirmez-le auprès d'un conseiller juridique plutôt qu'auprès de la fiche technique d'un fournisseur.

Deux choses méritent d'être dites sans détour. D'abord, personne n'est « entièrement conforme à la LPRPDE » au sens d'une quelconque certification. Aucun régime de certification ou d'attestation ne soutient cette formule : traitez-la donc comme du marketing partout où vous la voyez. Ensuite, la mesure de protection la plus efficace ici relève habituellement d'une décision de produit plutôt que d'une décision juridique : déterminez si vous avez seulement besoin d'une identité par balayage. Il y a une grande différence entre savoir qu'un produit a été balayé douze mille fois le mois dernier et savoir qu'un même appareil a balayé ces cinq produits-là dans cet ordre-là. La première information répond à presque toutes les questions d'affaires qu'une marque se pose vraiment. La seconde est ce qui crée les obligations.

Et l'avis de confidentialité est lui-même du contenu de la page. Si vous recueillez quoi que ce soit à la destination, l'explication de ce que vous recueillez a sa place dans les deux langues, pour la même raison que le reste de la page.

Ce qu'il faut demander à un fournisseur de plateforme

Ce sont des questions d'approvisionnement, pas des questions juridiques. Des réponses nettes ne rendent personne conforme. Elles sont la matière dont votre conseiller juridique a besoin pour vous dire quoi que ce soit d'utile. Des questions connexes sur la résidence des données en général se trouvent dans la page sur la préparation au Canada.

  • Où le résolveur s'exécute-t-il physiquement, et dans quelles régions les journaux de balayage sont-ils stockés et sauvegardés? Demandez des régions, pas des assurances.
  • La langue est-elle négociée au résolveur ou à la page de destination? Que se passe-t-il quand Accept-Language est absent ou générique?
  • Un même identifiant peut-il servir fr-CA et en-CA sous forme d'adresses URL distinctes et stables, vers lesquelles on peut pointer des liens?
  • Pouvons-nous définir la valeur par défaut par marché et la remplacer par produit, ou s'agit-il d'un seul réglage global?
  • S'il manque une traduction française, la page bascule-t-elle vers l'anglais en silence, ou échoue-t-elle de façon visible? Le basculement silencieux est la pire valeur par défaut qui soit.
  • Qui peut changer la destination, y a-t-il une étape d'approbation, et existe-t-il une piste de vérification montrant ce qui était en ligne à une date donnée?
  • Quels champs exactement figurent dans un enregistrement de balayage, combien de temps sont-ils conservés, et lesquels pouvons-nous désactiver?
  • Existe-t-il une entente de traitement des données, et vise-t-elle le Québec précisément plutôt que de renvoyer uniquement à des cadres européens ou américains?
  • Pouvons-nous exporter et supprimer définitivement les données de balayage sur demande?
  • Que voit un client si le résolveur est injoignable? Un code imprimé survit à n'importe quel contrat de plateforme.

Modes de défaillance à prévoir dès la conception

Le client francophone qui aboutit sur une page en anglais. On écarte ce cas comme étant cosmétique. Il ne l'est pas. Sur le plan de l'expérience client, c'est une personne à qui l'on dit, au moment précis où elle voulait savoir ce qu'elle mange, que la marque n'avait pas prévu sa présence. Sur le plan de la conformité, tout dépend de ce qui se trouvait dans cette page, et c'est pourquoi la question de l'étiquetage abordée plus haut n'a rien de théorique.

Le basculement silencieux. Une page française manquante qui sert discrètement l'anglais est pire qu'une page qui affiche une erreur, parce que rien ne la fait remonter. Elle sera découverte par un client ou par un organisme de réglementation, pas par vous.

La page à moitié traduite. Des titres en français au-dessus d'un tableau d'ingrédients en anglais, c'est un résultat courant quand la traduction est cadrée comme une tâche de contenu plutôt que comme une tâche d'étiquetage. La partie non traduite est habituellement la partie obligatoire, parce que c'est le contenu qui provenait d'un autre système.

La langue mise en cache. Une seule réponse mal mise en cache, et c'est toute une région qui reçoit la mauvaise langue jusqu'à l'expiration du cache. Cette défaillance est invisible depuis vos propres appareils, qui sont presque assurément bien configurés.

La destination de campagne. Un code pointé vers un microsite de campagne qui se termine dans huit mois, imprimé sur un emballage dont la durée de conservation est de trois ans. L'emballage survit à la campagne, et le balayage n'aboutit à rien.

La protection des renseignements personnels soulevée après le lancement. La consignation des balayages est facile à activer et malcommode à défaire une fois que des tableaux de bord analytiques en dépendent. Le moment peu coûteux pour décider de ce que vous recueillez, c'est avant l'impression du premier code, ce qui correspond à peu près au moment où le guide de migration vous ferait mener un projet pilote.

Où cela nous laisse

La question du bilinguisme n'est pas vraiment une question Sunrise 2027. Rien dans la cible de 2027 n'oblige une marque à faire quoi que ce soit de tout ceci, et rien n'expire, un point que l'aperçu de Sunrise 2027 développe plus longuement. La décision linguistique compte parce qu'une page atteinte par balayage est une nouvelle surface pour s'adresser aux consommateurs canadiens, et le Canada a des attentes de longue date quant à la langue dans laquelle cela se fait.

Ce que cette surface a de particulier, c'est que la décision est prise par un logiciel, en silence, à un moment que personne n'observe. Une erreur d'emballage est interceptée à l'épreuve. Un résolveur qui sert la mauvaise langue est intercepté par un client, ou par personne. Cette asymétrie est l'argument qui milite pour spécifier le comportement délibérément, pour écrire noir sur blanc ce qui devrait se produire quand l'en-tête est absent, et pour tester le parcours français avec autant de soin que le parcours anglais. Il est moins coûteux de décider pendant que la maquette est encore ouverte, non pas parce qu'une échéance approche, mais parce que tout ce qui touche à l'emballage devient plus cher une fois imprimé.