GTIN manquant dans Google Merchant Center : trouver tous les produits PrestaShop sans GTIN

5 min de lecture Autres langues : PL EN

« Code GTIN manquant ou incorrect » est l’un des problèmes les plus fréquents dans Google Merchant Center pour les boutiques PrestaShop. La correction est simple : saisir le bon code-barres dans le bon champ. Le plus difficile est de retrouver tous les produits et déclinaisons concernés. Ce guide montre où PrestaShop stocke le GTIN, comment lister tous les manques avec quelques requêtes SQL, et quand il est légitime de s’en passer.

Ce que Google demande vraiment

Le GTIN est le numéro de code-barres d’un produit : EAN-13 en Europe, UPC en Amérique du Nord, ISBN pour les livres. Google s’en sert pour rattacher votre offre au bon produit de son catalogue. La règle pour les identifiants uniques est courte : un produit a besoin soit d’un GTIN exact, soit d’un MPN et d’une marque. Selon le pays et la catégorie, vous devrez peut-être aussi indiquer explicitement qu’aucun identifiant n’existe.

Deux points comptent en pratique :

  • N’envoyez qu’un GTIN dont vous êtes sûr. Google le dit clairement. Un code inventé ou réutilisé est pire que pas de code du tout, car il rattache votre offre au produit de quelqu’un d’autre.
  • Pour Google, chaque déclinaison est un produit distinct. Un t-shirt en 4 tailles et 3 couleurs représente 12 articles dans le flux, et chacun a besoin de son propre GTIN. Un seul code sur le produit parent ne suffit pas.

Où PrestaShop stocke le GTIN

Type de produitChamp dans le back-officeColonne en base
Produit simpleProduit › Détails (Références) › code-barres EAN-13 ou JANps_product.ean13
Produit avec déclinaisonsProduit › Déclinaisons › chaque déclinaison › EAN-13ps_product_attribute.ean13
Autres identifiantsUPC, ISBN, MPN (MPN depuis PrestaShop 1.7.7)upc, isbn, mpn dans les mêmes tables

L’erreur la plus courante : le code-barres est renseigné sur le produit, alors que la boutique vend des déclinaisons. La plupart des modules de flux envoient un article par déclinaison, et Google voit donc toute une famille de variantes sans GTIN.

Trouver tous les produits sans GTIN (SQL)

Exécutez ces requêtes dans phpMyAdmin ou Adminer. Elles ne font que lire les données. Remplacez le préfixe ps_ par le vôtre, et id_lang = 1 / id_shop = 1 par votre langue et votre boutique par défaut si elles diffèrent.

1. Produits simples sans aucun identifiant

SELECT p.id_product, p.reference, pl.name
FROM ps_product p
JOIN ps_product_lang pl
  ON pl.id_product = p.id_product AND pl.id_lang = 1 AND pl.id_shop = 1
WHERE p.active = 1
  AND NOT EXISTS (SELECT 1 FROM ps_product_attribute pa WHERE pa.id_product = p.id_product)
  AND COALESCE(p.ean13, '') = ''
  AND COALESCE(p.upc, '') = ''
  AND COALESCE(p.isbn, '') = ''
ORDER BY p.id_product;

2. Déclinaisons sans EAN

SELECT p.id_product, pl.name, pa.id_product_attribute,
       pa.reference AS reference_declinaison
FROM ps_product_attribute pa
JOIN ps_product p ON p.id_product = pa.id_product
JOIN ps_product_lang pl
  ON pl.id_product = p.id_product AND pl.id_lang = 1 AND pl.id_shop = 1
WHERE p.active = 1
  AND COALESCE(pa.ean13, '') = ''
ORDER BY p.id_product, pa.id_product_attribute;

3. Codes d’une longueur impossible

Un GTIN valide compte 8, 12, 13 ou 14 chiffres. Tout le reste – une référence collée dans le mauvais champ, un chiffre manquant – sera refusé.

SELECT p.id_product, pl.name, p.ean13
FROM ps_product p
JOIN ps_product_lang pl
  ON pl.id_product = p.id_product AND pl.id_lang = 1 AND pl.id_shop = 1
WHERE p.ean13 <> ''
  AND p.ean13 NOT REGEXP '^[0-9]{8}$|^[0-9]{12,14}$';

Faites la même vérification sur ps_product_attribute.ean13 pour les déclinaisons. Le test de longueur ne vérifie pas la clé de contrôle, mais il attrape la plupart des fautes de frappe.

Quand peut-on se passer du GTIN ?

Tous les produits n’ont pas de code-barres. C’est souvent le cas des articles faits main, sur mesure, vintage ou des produits de marque propre vendus uniquement chez vous. Pour eux, envoyez identifier_exists = no dans le flux au lieu d’une valeur vide ou inventée, et renseignez la marque. Vérifiez le comportement de votre module de flux : beaucoup n’envoient cet indicateur que si le GTIN, le MPN et la marque sont tous vides.

N’utilisez pas cet indicateur pour faire taire l’avertissement sur des produits qui ont un code-barres sur l’emballage. Google rapproche les produits par leur code, et les offres sans code sont moins performantes dans les résultats Shopping.

Corriger une fois, puis surveiller

Compléter les codes manquants est un travail ponctuel. Les garder complets ne l’est pas : nouveaux produits, nouvelles tailles et imports fournisseurs ramènent les manques à chaque saison. Deux habitudes aident :

  • Ajoutez le code-barres comme colonne obligatoire de votre modèle d’import, y compris au niveau des déclinaisons.
  • Contrôlez le catalogue avant chaque campagne ou changement de flux, pas après le message de Merchant Center.

Vérifiez-le automatiquement

Product Data Guardian effectue ces contrôles sur tout le catalogue en un seul scan : produits et chaque déclinaison sans EAN/GTIN, marques, images, descriptions et stock manquants. Chaque produit reçoit un score de 0 à 100, et un clic affiche exactement les produits à corriger. Les produits sous votre seuil peuvent être exclus automatiquement des flux Google Shopping et Meta.

Découvrir Product Data Guardian

Sources

← Tous les articles

Formulaire de contact

Module concerné : Product Data Guardian – score qualité du catalogue et flux publicitaires