PS PrestaShop Intermedio

dfgoogletryon — Módulo de probador virtual IA (Google Vertex AI)

Instalación, creación del proyecto Google Cloud y de la cuenta de servicio, configuración, funcionamiento del widget de probador, privacidad RGPD, control de costes y resolución de problemas de dfgoogletryon.

Actualizado Versión del módulo 1.0.0

Presentación

dfgoogletryon añade un widget de probador virtual a tus fichas de producto PrestaShop 8 y 9. El cliente sube una foto (o usa su cámara) y se ve con la prenda de la ficha puesta, gracias al modelo generativo Google Vertex AI Virtual Try-On. Todas las llamadas a Google se procesan del lado servidor: la clave de la cuenta de servicio nunca llega al navegador. El módulo incluye el consentimiento RGPD, el no almacenamiento de fotos, la marca de agua SynthID y límites de coste.

¿En qué se diferencia del try-on de Google Shopping?

Google ofrece dos cosas distintas que no deben confundirse:

  • El probador de ropa del Merchant Center — una insignia que aparece solo en la búsqueda de Google y en Google Shopping. No se puede integrar en tu tienda ni ofrece API para tu ficha de producto.
  • Vertex AI Virtual Try-On — la API generativa que usa este módulo. Es la única pieza que permite un widget de probador directamente en tus fichas de producto.

dfgoogletryon se basa exclusivamente en Vertex AI. Es un servicio generativo de pago por imagen: cada prueba genera una o varias imágenes facturadas por Google.

Requisitos

  • PrestaShop 8.0 a 9.x
  • PHP 8.1, 8.2, 8.3 o 8.4
  • Extensiones PHP: curl, openssl, gd
  • Un proyecto Google Cloud con facturación activada
  • La API Vertex AI activada en ese proyecto
  • Una cuenta de servicio con el rol Usuario de Vertex AI y su clave JSON

Paso 1 — Preparar Google Cloud

  1. Abre console.cloud.google.com y crea (o selecciona) un proyecto. Anota su ID de proyecto.
  2. Activa la facturación en el proyecto (menú Facturación).
  3. Activa la API Vertex AI: busca «Vertex AI API» (aiplatform.googleapis.com) en la biblioteca de API y haz clic en Activar.

Paso 2 — Crear la cuenta de servicio

  1. Ve a IAM y administración > Cuentas de servicio.
  2. Haz clic en Crear cuenta de servicio y dale un nombre (por ejemplo tryon-prestashop).
  3. Asígnale el rol Usuario de Vertex AI (roles/aiplatform.user).
  4. Una vez creada, ábrela y ve a Claves > Agregar clave > Crear clave nueva > JSON. El archivo JSON se descarga.

Esta clave JSON da acceso a Vertex AI en tu nombre. Nunca la publiques ni la subas a un repositorio público. El módulo la mantiene del lado servidor y nunca la expone al front-office.

Paso 3 — Instalar el módulo

  1. Descarga dfgoogletryon.zip desde tu cuenta de cliente.
  2. En el back-office de PrestaShop: Módulos > Administrador de módulos > Subir un módulo.
  3. Sube el ZIP y haz clic en Instalar.
  4. Al instalar, el módulo guarda su configuración por defecto y un texto de consentimiento, luego se engancha a los hooks displayProductAdditionalInfo (botón en la ficha) y actionFrontControllerSetMedia (carga de recursos, solo en la página de producto).

Paso 4 — Configurar el módulo

Abre la configuración del módulo. Rellena la sección Google Cloud / Vertex AI:

  • GCP Project ID — el ID de proyecto anotado en el Paso 1.
  • Region — la ubicación de Vertex AI, por ejemplo us-central1.
  • Model ID — por defecto virtual-try-on-preview-08-04 (también puedes usar virtual-try-on-001).
  • Service-account JSON key — pega el contenido íntegro del archivo JSON descargado en el Paso 2.

Luego haz clic en Save & test authentication. El módulo firma un JWT, obtiene un token OAuth y confirma «Authentication OK» si todo es correcto.

El token OAuth se guarda en caché unos 55 minutos para no regenerarlo en cada prueba. Cualquier cambio en las credenciales borra automáticamente la caché.

Ajustes de generación y seguridad

Sección Generation & safety:

  • Images per try-on — de 1 a 4 imágenes generadas por prueba. Cada imagen es facturada por Google.
  • SynthID watermark — añade una marca de agua IA invisible a las imágenes generadas (recomendado).
  • Safety setting — nivel de filtrado (block_low_and_above, block_medium_and_above, block_only_high, block_none). block_medium_and_above por defecto.
  • Person generationallow_adult recomendado para una tienda de ropa.
  • Max generations per session — límite anti-abuso por sesión de cliente.
  • Cooldown between generations (seconds) — retraso mínimo entre dos pruebas de la misma sesión.

Sección Display:

  • Enable widget — activa o desactiva el widget globalmente.
  • Restrict to category IDs — IDs de categorías separados por comas. Deja vacío para mostrar en todos los productos, o indica tus categorías de ropa para mostrar el widget solo donde tiene sentido.
  • Consent text (GDPR) — el texto mostrado junto a la casilla de consentimiento obligatoria.

Funcionamiento para el cliente

  1. En una ficha de producto elegible, aparece un botón Try it on.
  2. El cliente abre la ventana, sube una foto (JPEG, PNG o WebP) o captura desde su webcam.
  3. La foto se redimensiona en el navegador (máx. 1024 px, JPEG) antes del envío, para reducir latencia y coste.
  4. El cliente marca la casilla de consentimiento y hace clic en Generate try-on.
  5. El módulo envía la foto y la imagen de portada del producto a Vertex AI, luego muestra la o las imágenes generadas.

Privacidad y RGPD

La foto del cliente se procesa en memoria y se envía a Google para la generación, pero nunca se guarda en el sistema de archivos ni en la base de datos de la tienda. La casilla de consentimiento, obligatoria y personalizable, aparece antes de cualquier envío. Adapta el texto de consentimiento a tu política de privacidad y menciona la transferencia a Google.

Control de costes

Cada imagen generada es facturada por Google según la tarifa Vertex AI por imagen. Para mantener costes previsibles:

  • Fija Images per try-on a 1 al principio.
  • Establece un Max generations per session razonable (5 por defecto).
  • Usa un Cooldown para evitar el spam de generación.
  • Restringe la visualización a las categorías de ropa con Restrict to category IDs.

Un token por producto y la verificación same-origin desalientan el uso del proxy fuera de tus páginas. No es una autenticación fuerte, sino un límite de coste combinado con los topes anteriores.

Buenas prácticas para la imagen de producto

El módulo envía la imagen de portada del producto como referencia de la prenda. La calidad del probador es mucho mejor con un packshot limpio de la prenda (fondo neutro, prenda bien visible) que con una foto lifestyle ya puesta sobre un modelo. Las prendas superiores, inferiores y de una pieza (vestidos) dan los mejores resultados.

Resolución de problemas

  • «Authentication failed» en la prueba — comprueba el ID de proyecto, la validez de la clave JSON, que la API Vertex AI esté activada y el rol Usuario de Vertex AI de la cuenta de servicio.
  • Ninguna imagen generada — la solicitud pudo ser filtrada por los ajustes de seguridad. Prueba otra foto o suaviza Safety setting. Comprueba también el saldo de facturación de Google Cloud.
  • El botón no aparece — comprueba que Enable widget esté activo y que el producto pertenezca a una categoría permitida (campo Restrict to category IDs).
  • Error de red / timeout — asegúrate de que el servidor permita conexiones HTTPS salientes a oauth2.googleapis.com y REGION-aiplatform.googleapis.com.
  • «You have reached the maximum number of try-ons» — se ha alcanzado el límite por sesión; es el comportamiento esperado. Ajusta Max generations per session si es necesario.

Desinstalación

La desinstalación elimina la configuración del módulo, incluida la clave de la cuenta de servicio y el token en caché. El módulo no almacena ninguna foto de cliente, así que no hay nada más que limpiar.

¿Te ha resultado útil esta página?

¿Sigues atascado? Contacta con soporte