dfgoogletryon — Module d’essayage virtuel IA (Google Vertex AI)
Installation, création du projet Google Cloud et du compte de service, configuration, fonctionnement du widget d'essayage, confidentialité RGPD, maîtrise des coûts et dépannage de dfgoogletryon.
Présentation
dfgoogletryon ajoute un widget d’essayage virtuel sur vos fiches produit PrestaShop 8 et 9. Le client téléverse une photo (ou utilise sa caméra) et se voit porter le vêtement de la fiche, grâce au modèle génératif Google Vertex AI Virtual Try-On. Tous les appels à Google sont proxifiés côté serveur : la clé du compte de service n’atteint jamais le navigateur. Le module intègre le consentement RGPD, le non-stockage des photos, le watermark SynthID et des garde-fous anti-coûts.
En quoi est-ce différent du try-on de Google Shopping ?
Google propose deux choses distinctes, à ne pas confondre :
- L’essayage d’apparel du Merchant Center — un badge qui apparaît uniquement sur la recherche Google et Google Shopping. Il n’est pas intégrable sur votre boutique et n’offre aucune API pour votre fiche produit.
- Vertex AI Virtual Try-On — l’API générative que ce module utilise. C’est la seule brique qui permet un widget d’essayage directement sur vos pages produit.
dfgoogletryon repose exclusivement sur Vertex AI. C’est un service génératif payant à l’image : chaque essayage génère une ou plusieurs images facturées par Google.
Prérequis
- PrestaShop 8.0 à 9.x
- PHP 8.1, 8.2, 8.3 ou 8.4
- Extensions PHP :
curl,openssl,gd - Un projet Google Cloud avec la facturation activée
- L’API Vertex AI activée sur ce projet
- Un compte de service doté du rôle Utilisateur Vertex AI et sa clé JSON
Étape 1 — Préparer Google Cloud
- Ouvrez console.cloud.google.com et créez (ou sélectionnez) un projet. Notez son ID de projet.
- Activez la facturation sur le projet (menu Facturation).
- Activez l’API Vertex AI : recherchez « Vertex AI API » (
aiplatform.googleapis.com) dans la bibliothèque d’API et cliquez sur Activer.
Étape 2 — Créer le compte de service
- Allez dans IAM et administration > Comptes de service.
- Cliquez sur Créer un compte de service, donnez-lui un nom (par exemple
tryon-prestashop). - Attribuez-lui le rôle Utilisateur Vertex AI (
roles/aiplatform.user). - Une fois créé, ouvrez-le, onglet Clés > Ajouter une clé > Créer une clé > JSON. Le fichier JSON se télécharge.
Cette clé JSON donne accès à Vertex AI en votre nom. Ne la publiez jamais et ne la déposez pas dans un dépôt public. Le module la conserve côté serveur et ne l’expose jamais au front-office.
Étape 3 — Installer le module
- Téléchargez
dfgoogletryon.zipdepuis votre compte client. - Dans le back-office PrestaShop : Modules > Module Manager > Ajouter un nouveau module.
- Téléversez le ZIP et cliquez sur Installer.
- À l’installation, le module enregistre ses réglages par défaut et un texte de consentement, puis se branche sur les hooks
displayProductAdditionalInfo(bouton sur la fiche) etactionFrontControllerSetMedia(chargement des assets, page produit uniquement).
Étape 4 — Configurer le module
Ouvrez la configuration du module. Renseignez la section Google Cloud / Vertex AI :
- GCP Project ID — l’ID de projet noté à l’étape 1.
- Region — la localisation Vertex AI, par exemple
us-central1. - Model ID — par défaut
virtual-try-on-preview-08-04(vous pouvez aussi utiliservirtual-try-on-001). - Service-account JSON key — collez le contenu intégral du fichier JSON téléchargé à l’étape 2.
Cliquez ensuite sur Save & test authentication. Le module signe un JWT, obtient un jeton OAuth et confirme « Authentication OK » si tout est correct.
Le jeton OAuth est mis en cache environ 55 minutes pour éviter de le régénérer à chaque essayage. Toute modification des identifiants invalide automatiquement le cache.
Réglages de génération et de sécurité
Section Generation & safety :
- Images per try-on — de 1 à 4 images générées par essayage. Chaque image est facturée par Google.
- SynthID watermark — ajoute un filigrane IA invisible aux images générées (recommandé).
- Safety setting — niveau de filtrage (
block_low_and_above,block_medium_and_above,block_only_high,block_none).block_medium_and_abovepar défaut. - Person generation —
allow_adultrecommandé pour une boutique de prêt-à-porter. - Max generations per session — plafond anti-abus par session client.
- Cooldown between generations (seconds) — délai minimal entre deux essayages d’une même session.
Section Display :
- Enable widget — active ou désactive le widget globalement.
- Restrict to category IDs — liste d’IDs de catégories séparés par des virgules. Laissez vide pour afficher sur tous les produits, ou renseignez vos catégories de vêtements pour n’afficher le widget que là où il a du sens.
- Consent text (GDPR) — le texte affiché à côté de la case de consentement obligatoire.
Fonctionnement côté client
- Sur la fiche produit éligible, un bouton Try it on apparaît.
- Le client ouvre la modale, téléverse une photo (JPEG, PNG ou WebP) ou capture depuis sa webcam.
- La photo est redimensionnée dans le navigateur (max 1024 px, JPEG) avant envoi, pour réduire la latence et le coût.
- Le client coche la case de consentement, puis clique sur Generate try-on.
- Le module transmet la photo et l’image de couverture du produit à Vertex AI, puis affiche la ou les images générées.
Confidentialité et RGPD
La photo du client est traitée en mémoire et transmise à Google pour la génération, mais n’est jamais enregistrée sur le système de fichiers ni en base de la boutique. La case de consentement, obligatoire et personnalisable, s’affiche avant tout envoi. Adaptez le texte de consentement à votre politique de confidentialité et mentionnez le transfert vers Google.
Maîtrise des coûts
Chaque image générée est facturée par Google selon la tarification Vertex AI par image. Pour garder des coûts prévisibles :
- Limitez Images per try-on à 1 si vous débutez.
- Fixez un Max generations per session raisonnable (5 par défaut).
- Utilisez un Cooldown pour éviter le spam de génération.
- Restreignez l’affichage aux catégories de vêtements via Restrict to category IDs.
Un jeton par produit et la vérification same-origin découragent l’utilisation du proxy hors de vos pages. Ce n’est pas une authentification forte, mais un garde-fou coût combiné aux plafonds ci-dessus.
Bonnes pratiques pour l’image produit
Le module envoie l’image de couverture du produit comme référence vêtement. La qualité de l’essayage est bien meilleure avec un packshot propre du vêtement (fond neutre, vêtement bien visible) qu’avec une photo lifestyle déjà portée par un mannequin. Les hauts, bas et pièces uniques (robes) donnent les meilleurs résultats.
Dépannage
- « Authentication failed » au test — vérifiez l’ID de projet, la validité de la clé JSON, l’activation de l’API Vertex AI et le rôle Utilisateur Vertex AI du compte de service.
- Aucune image générée — la requête a pu être filtrée par les réglages de sécurité. Essayez une autre photo, ou assouplissez Safety setting. Vérifiez aussi le solde de facturation Google Cloud.
- Le bouton n’apparaît pas — vérifiez que Enable widget est actif et que le produit appartient à une catégorie autorisée (champ Restrict to category IDs).
- Erreur réseau / timeout — assurez-vous que le serveur autorise les connexions HTTPS sortantes vers
oauth2.googleapis.cometREGION-aiplatform.googleapis.com. - « You have reached the maximum number of try-ons » — le plafond par session est atteint ; c’est le comportement attendu. Ajustez Max generations per session si besoin.
Désinstallation
La désinstallation supprime les réglages du module, y compris la clé du compte de service et le jeton en cache. Aucune photo client n’est stockée par le module, il n’y a donc rien d’autre à nettoyer.