Un PIM, o sistema de gestión de información de producto (product information management), es donde vive el contenido de producto antes de llegar a tu tienda: títulos, atributos, descripciones, traducciones, imágenes y las relaciones entre ellos. En una arquitectura de PIM ecommerce es el único registro del que leen todos los canales. Si gestionas cientos o miles de SKUs en Shopify o WooCommerce y no tienes un PIM, tu PIM es una carpeta de hojas de cálculo, una exportación del ERP y la memoria de una sola persona.
El almacenamiento rara vez es el problema. El camino sí. Los datos pasan de los archivos de proveedor y del ERP a la tienda a base de copiar y pegar, traducciones tardías y arreglos manuales, y cada traspaso es un punto donde una unidad, una variante o una descripción pueden salir mal.
Este artículo sigue un registro de producto desde el origen hasta la página publicada. Mostramos dónde hace trabajo real un agente de IA (enriquecimiento, descripciones, traducción, texto alternativo), dónde tiene que haber una validación humana y qué reglas de sincronización y rollback mantienen seguro el catálogo. Cierra con un flujo funcional de n8n y la Admin GraphQL API de Shopify.
Puntos clave
- Un PIM es la fuente de verdad del contenido de producto, y el pipeline que lo lleva a la tienda importa más que la herramienta que elijas.
- Los agentes de IA son buenos redactando borradores, enriqueciendo, traduciendo y etiquetando, pero nunca deberían encargarse de publicar, de los precios ni de las afirmaciones de cumplimiento.
- Los controles de calidad deben decidir por nivel de riesgo: publicar automáticamente los cambios de bajo riesgo, enviar a revisión el contenido y bloquear lo que incumpla una regla estricta.
- La propiedad por campo, la detección de cambios con hashes, las copias de seguridad y un rollback probado hacen segura la automatización en un catálogo en vivo.
- Empieza con una categoría, un idioma y un grupo de campos, y amplía el alcance cuando los controles se hayan ganado la confianza.
Qué hace un PIM en ecommerce
La gestión de información de producto es la práctica, y el software, de reunir los datos de producto en un solo lugar, enriquecerlos y distribuirlos a cada canal que vende el producto. La explicación de Akeneo sobre PIM da la visión del proveedor. Nosotros nos quedamos con la operativa: un PIM guarda los hechos y los textos, comprueba que un producto esté completo y lo entrega a cada canal con el formato que necesita.
Una tienda lo necesita cuando el mismo producto debe aparecer en varios lugares o idiomas, o cuando lo edita más de una persona. Antes de eso, el PIM cuesta más que el desorden que elimina.
PIM, ERP y tienda: quién es dueño de qué
Tres sistemas tocan un producto y cada uno es dueño de cosas distintas. Confundirlos es la raíz de la mayoría de los errores de sincronización.
| Sistema | Es dueño de | No es dueño de |
|---|---|---|
| ERP | SKU, coste, listas de precios, stock, clase de impuesto | Textos de marketing, atributos de filtro, traducciones |
| PIM | Títulos, descripciones, atributos, medios, traducciones, completitud | Niveles de stock, pedidos, checkout |
| Tienda | Presentación, handles de URL, colecciones, orden de merchandising | Los hechos sobre el producto |
Shopify y WooCommerce están hechos para vender, no para gestionar el contenido de producto como fuente maestra. No tienen puntuación de completitud por canal, ni flujo de trabajo por campo, ni estado de aprobación. Ese hueco es el que cubre un PIM.
Los síntomas que indican que necesitas uno
El tamaño del catálogo por sí solo no es la señal. Estas sí lo son:
- El mismo producto se describe de tres maneras distintas en la tienda, en un marketplace y en un catálogo en PDF.
- Las traducciones llegan semanas después del lanzamiento al que pertenecen.
- El archivo de trabajo se llama algo como final_v7 y dos personas tienen copias diferentes.
- Los SKUs nuevos esperan a que una persona rellene los campos.
- Los filtros fallan porque Negro, negro y NGR existen como valores.
- Nadie sabe decir quién cambió una descripción ni cuándo.
Con dos o tres de estos a la vez, la hoja de cálculo ha dejado de ser un sistema.
Cuándo una hoja de cálculo sigue bastando
Con menos de unos cientos de SKUs, un idioma, un canal y un editor, no necesitas un PIM. Necesitas un proceso: un vocabulario controlado para colores, materiales y tallas, una hoja maestra y un script o importación que la envíe a la tienda. Los metafields y metaobjects de Shopify pueden guardar atributos estructurados sin software adicional.
Compra o construye un PIM cuando el proceso empiece a requerir aprobaciones, completitud por canal o varios editores a la vez. No antes.
Flujo de datos de PIM ecommerce a la tienda
Piensa en el pipeline como cuatro etapas con un responsable en cada traspaso. Los recursos multimedia y la traducción no son etapas aparte. Son trabajo de enriquecimiento que ocurre antes del control.
Origen
Registro del PIM o ERP
Enriquecer
El agente redacta, traduce, etiqueta
Control
Reglas, revisión, aprobación
Publicar
API de Shopify o WooCommerce
La razón de dibujarlo es encontrar los traspasos. Cada flecha es un lugar donde un campo puede sobrescribirse, un lote puede fallar a medias o un valor obsoleto puede salir a producción.
Las cuatro etapas del pipeline
- Origen: el ERP es dueño del precio, el coste, el stock y la clase de impuesto. Los archivos de proveedor y el PIM son dueños de las especificaciones en bruto y del conjunto de imágenes. Nada posterior las edita.
- Enriquecer: los agentes convierten las especificaciones en bruto en atributos estructurados, redactan textos, traducen y escriben texto alternativo. Se comprueban el número y el formato de los recursos antes de escribir ningún texto.
- Control: reglas automáticas puntúan cada cambio, una persona revisa lo arriesgado y los fallos se bloquean con un motivo.
- Publicar: una capa de integración escribe los campos aprobados en la tienda mediante su API y registra lo que cambió.
En la práctica, la capa de integración es la pieza que a la mayoría de las tiendas les falta. Es también donde el trabajo de integración de APIs da frutos, porque guarda el mapeo de campos, los reintentos y el registro.
Pipeline de datos de producto
- 01ERP y archivos de proveedorEl ERP: precio y stock
- 02PIMEl PIM: textos y atributos
- 03Enriquecimiento n8nEnriquecer, traducir, alt text
- 04Control de calidadEl agente redacta, la persona aprueba
- 05TiendaShopify o WooCommerce: merchandising
Pipeline desde el ERP y los archivos de proveedor por el PIM, el enriquecimiento en n8n y el control de calidad hasta Shopify o WooCommerce, con un dueño en cada traspaso
Integración PIM Shopify: API, webhook o archivo
Hay tres formas de mover datos del PIM a Shopify. La adecuada depende de lo rápido que deban publicarse los cambios y de lo que pueda emitir tu PIM.
| Método | Ideal para | Ten cuidado con |
|---|---|---|
| Archivo programado (CSV o JSON) | Catálogos pequeños, actualizaciones nocturnas | Sin cambios en tiempo real, los fallos parciales son difíciles de ver |
| Webhook más envío por API | Actualizaciones por eventos, la mayoría de tiendas medianas | Entregas duplicadas, reintentos, idempotencia |
| Polling por fecha de actualización | PIMs sin webhooks | Llamadas desperdiciadas, borrados que se escapan |
En Shopify, la vía de escritura es la Admin GraphQL API. En WooCommerce es la REST API, donde los campos estándar viven en el producto y los atributos personalizados en el meta del producto. El pipeline es el mismo. Solo cambia la última etapa.
Propiedad de campos: quién escribe cada atributo
Cada campo tiene exactamente un dueño. El precio y el stock pertenecen al ERP. La descripción, los atributos y las traducciones pertenecen al PIM, con el agente como redactor y una persona como aprobadora. El orden de las colecciones, las insignias y los textos promocionales pertenecen al merchandiser, en la tienda.
Escribe ese mapa como una tabla en la configuración de tu integración. Si un campo tiene dos dueños, uno de ellos lo sobrescribirá, y te enterarás por un cliente.
Dónde ayudan los agentes de IA con el contenido de producto
Un agente de IA, aquí, es un paso de modelo de lenguaje con una tarea acotada, una entrada definida, un esquema para su salida y una lista corta de herramientas que puede llamar. No es un chatbot que deambula por tu catálogo. Cuanto más acotada la tarea, más fácil de controlar. Para la visión más amplia, mira Shopify y automatización con IA y nuestro servicio de automatización con IA.
Enriquecimiento y normalización de atributos
Los datos de proveedor llegan como texto libre: un título como Zapatilla trail hombre WP 42 negro y un bloque de especificaciones. Un agente puede extraer atributos estructurados (talla, color, material, impermeable sí o no), normalizarlos a tu vocabulario controlado y clasificar el producto en tu taxonomía.
Dos reglas lo hacen seguro. El agente devuelve null cuando un valor no está en la fuente, y cada valor se corresponde con una lista permitida. Profundizamos en este patrón en enriquecimiento de datos con IA para activos B2B.
Descripciones con IA que mantienen la voz de marca
Buenas descripciones de producto con IA para ecommerce parten de atributos verificados, no del título. Dale al agente los hechos estructurados, una guía de estilo corta, tres ejemplos aprobados y una lista de frases y afirmaciones prohibidas. Pide una estructura fija y un límite de caracteres.
El riesgo SEO no es que un modelo haya escrito el texto. La guía de Google sobre contenido generativo se centra en si es útil, no en cómo se produjo. El riesgo mayor es el texto pobre o el texto del fabricante repetido en todas las tiendas que venden el producto.
Traducción y localización a escala de catálogo
La traducción es donde los agentes ahorran más tiempo, porque el volumen se multiplica. Por ejemplo, una tienda con 2.000 productos y 4 idiomas tiene 8.000 descripciones que traducir, además de títulos y campos SEO. Hacerlo a mano significa que los lanzamientos esperan a los traductores.
Traduce solo los campos que cambiaron, dale al agente un glosario de términos de marca y de producto, y localiza unidades y tallas, no solo palabras. El español de España, México y Argentina difiere en vocabulario, así que define el locale de forma explícita. En Shopify, las traducciones se escriben con la mutation translationsRegister.
Texto alternativo de imágenes y etiquetado de recursos
Un modelo de visión puede describir lo que se ve en una imagen de producto: el objeto, el color, el ángulo. Eso basta para un texto alternativo útil de una frase o menos, sin relleno de palabras clave. En Shopify, el texto alternativo de un archivo se actualiza con la mutation fileUpdate.
El mismo modelo puede proponer atributos a partir de las imágenes, como el color dominante o el estampado. Trátalos como sugerencias de baja confianza. Cuando la imagen y la especificación discrepan, gana la especificación.
Lo que los agentes no deben decidir solos
El precio, el stock, las certificaciones, las declaraciones sobre alérgenos o seguridad, los textos legales y las guías de tallas quedan fuera de las manos del agente. Son hechos con consecuencias. El agente puede señalar un hueco o redactar una propuesta, y decide una persona o un sistema de registro.
Revisión humana y controles de calidad antes de publicar
El control es donde se intercambian velocidad y seguridad, así que haz explícito el intercambio. Las comprobaciones baratas se ejecutan sobre todo. La atención humana, que es cara, va solo donde un error costaría dinero o confianza reales.
Comprobaciones automáticas que se ejecutan primero
Las máquinas detectan los errores mecánicos más rápido y con más fiabilidad que los revisores. Ejecuta estas comprobaciones en cada cambio, antes de que nadie lo mire:
- Los campos obligatorios están presentes y no vacíos
- Cada número y unidad del texto coincide con un atributo estructurado
- Las unidades y valores pertenecen al vocabulario permitido
- El título, la descripción y los campos SEO respetan sus límites de caracteres
- Los términos de marca están bien escritos y no hay afirmaciones prohibidas
- Cada idioma activo tiene traducción para cada campo cambiado
- Cada imagen tiene texto alternativo
- La salida cumple el esquema JSON que se le pidió al agente
La segunda comprobación es la que detecta las especificaciones inventadas. Si el texto dice 20 L y el atributo dice 25 L, el cambio se bloquea.
Qué debe aprobar una persona
Una persona aprueba todo lo que habla en nombre de la marca o hace una afirmación: el primer lote de cada categoría nueva, las descripciones nuevas de productos estrella, las traducciones de los más vendidos, cualquier texto cercano a seguridad o cumplimiento y los borradores que el agente marcó con baja confianza.
Los productos nuevos deberían entrar en Shopify como borradores para que la revisión se haga en el admin, no en una hoja de cálculo. Para las actualizaciones de productos en vivo, guarda los valores propuestos en una cola y publica al aprobarlos. Revisa una muestra del resto cada semana.
Niveles de riesgo: publicar, revisar, bloquear
Tres resultados bastan. El nivel depende del campo y del tamaño del cambio, no de la opinión del agente sobre sí mismo.
| Nivel | Cambio típico | Acción |
|---|---|---|
| Publicación automática | Normalización de unidades, texto alternativo de imágenes de variante, mayúsculas de atributos | Publicar y registrar, muestrear cada semana |
| Revisión | Descripciones nuevas, traducciones, títulos SEO | A la cola de una persona, publicar al aprobar |
| Bloqueo | Campos obligatorios ausentes, afirmaciones prohibidas, saltos de precio por encima de un umbral, fallo de esquema | Detener y enviar el motivo al responsable |
Mide con qué frecuencia editan los revisores los borradores. Cuando la tasa de aceptación sin cambios de una categoría es estable, baja sus campos de bajo riesgo un nivel.
Reglas de sincronización, versionado y rollback
La automatización en un catálogo en vivo falla de dos maneras: escribe algo incorrecto, o escribe algo correcto encima de lo que una persona arregló. Las reglas de sincronización previenen lo segundo. El versionado y el rollback contienen lo primero.
Fuente de verdad por campo
El mapa de propiedad de antes se vuelve exigible aquí. La integración escribe solo los campos que posee el PIM, y cada producto lleva una lista de campos bloqueados, por ejemplo en un metafield JSON, que la integración debe omitir.
Detecta también la deriva. Si el valor en vivo de un campo propio difiere del hash del último valor que publicaste, alguien lo editó a mano. Bloquea ese campo y márcalo para revisión en lugar de sobrescribirlo.
Actualizaciones idempotentes y detección de cambios
Ejecutar el mismo evento dos veces debe dar el mismo resultado. Los webhooks pueden entregarse más de una vez y los reintentos son normales. Identifica cada escritura por el id del PIM o el SKU, calcula el hash de cada campo rastreado y compáralo con el hash guardado tras la última publicación.
Si nada cambió, omite la llamada. Ahorras cuota de API, evitas movimientos inútiles de updatedAt y mantienes legible el registro. El flujo de ejemplo de abajo hace exactamente esto.
Versionado y rollback de un lote erróneo
Shopify no ofrece un deshacer para las escrituras por API, así que lo construyes tú. Antes de cada escritura, guarda los valores anteriores de cada campo que vas a cambiar, etiquetados con un id de lote y un número de versión. Guarda la copia fuera de Shopify, en una base de datos o un almacén de archivos.
Hacer rollback significa volver a escribir los valores de la copia para ese lote, omitiendo cualquier campo que una persona editó después de que se ejecutara el lote. Pruébalo en una tienda de desarrollo de forma periódica, no por primera vez durante un incidente.
Ruta de rollback
- 01v12 publicadaLa versión en vivo apunta a v12
- 02Copia del lote del agentev13 candidata guardada fuera de Shopify
- 03Fallo de calidad detectadoLote erróneo frenado a tiempo
- 04El puntero vuelve a v12Campos bloqueados intactos siempre
- 05Reversión enviada a la tiendaValores de la copia restaurados, ediciones omitidas
Línea de tiempo de un registro de producto donde la versión 13 falla el control y el puntero de rollback devuelve la tienda a la versión 12 sin tocar los campos bloqueados
Ejemplo de flujo con n8n y Shopify
Esta es una versión mínima del pipeline, construida en n8n y escribiendo en Shopify. Supone que tu PIM puede enviar un webhook con el SKU y los campos cambiados cuando se aprueba un registro. La misma forma funciona con un ERP como disparador.
El flujo en seis pasos
El orden importa: primero el diff, para que el agente trabaje solo sobre lo que cambió; el control antes de cualquier escritura; la copia antes de la actualización.
Recibir el webhook del PIM
Un nodo Webhook de n8n recibe el SKU y los campos cambiados. Valida la firma y responde rápido.
Obtener y comparar
Carga el producto de Shopify por SKU y ejecuta un nodo Code que calcula hashes de los campos y descarta los bloqueados.
El agente redacta
Un paso de IA enriquece, escribe y traduce solo los campos cambiados y devuelve un JSON que cumple un esquema.
Control de calidad y cola de revisión
Reglas automáticas puntúan el borrador. Lo aprobado sigue, lo que requiere revisión va a una cola y lo bloqueado se detiene con un motivo.
Actualizar Shopify
Un nodo HTTP Request envía productUpdate y, si hace falta, translationsRegister y fileUpdate.
Registrar y guardar copia
Guarda los valores anteriores antes de la escritura y el resultado después, con el id de lote y los nuevos hashes.
El paso dos es el que la mayoría de los equipos se salta, y es el que evita tanto las llamadas inútiles como las ediciones sobrescritas. Este es el nodo Code.
// n8n Code node, mode: Run Once for All Items
// Self-hosted n8n needs NODE_FUNCTION_ALLOW_BUILTIN=crypto to allow this require.
const crypto = require('crypto');
// Fields the PIM is allowed to write
const TRACKED = ['title', 'description_html', 'seo_title', 'seo_description'];
const hash = (value) =>
crypto.createHash('sha256').update(String(value ?? '')).digest('hex');
return $input.all().map((item) => {
// pim: fields from the webhook. shopify: id, stored hashes and locked fields.
const { pim, shopify } = item.json;
const locked = new Set(shopify.locked_fields || []);
const lastHashes = shopify.hashes || {};
const changes = {};
const newHashes = { ...lastHashes };
for (const field of TRACKED) {
if (locked.has(field)) continue; // a merchandiser owns this field
const current = hash(pim[field]);
if (current === lastHashes[field]) continue; // nothing changed
changes[field] = pim[field];
newHashes[field] = current;
}
const changedFields = Object.keys(changes);
return {
json: {
productId: shopify.id,
sku: pim.sku,
changes,
changedFields,
newHashes,
skip: changedFields.length === 0,
},
};
});
Un nodo IF después envía los elementos con skip: true al final. Todo lo demás continúa hacia el paso del agente con solo changes como entrada.
La mutation GraphQL de Shopify Admin
Cuando el control aprueba un borrador, el nodo HTTP Request envía esta mutation. Actualiza la descripción y los campos SEO y guarda los nuevos hashes en un metafield para que la siguiente ejecución pueda compararlos.
mutation UpdateProductContent($product: ProductUpdateInput!) {
productUpdate(product: $product) {
product {
id
title
descriptionHtml
seo {
title
description
}
updatedAt
}
userErrors {
field
message
}
}
}
Las variables se envían como JSON junto a la query:
{
"product": {
"id": "gid://shopify/Product/1234567890",
"descriptionHtml": "<p>Approved description copy goes here.</p>",
"seo": {
"title": "Waterproof trail running shoe",
"description": "Waterproof trail running shoe with a grippy outsole for wet ground."
},
"metafields": [
{
"namespace": "custom",
"key": "content_hash",
"type": "single_line_text_field",
"value": "sha256-of-the-published-fields"
}
]
}
}
La petición va a POST https://{shop}.myshopify.com/admin/api/{version}/graphql.json con una cabecera X-Shopify-Access-Token y el scope write_products. Usa una versión de API vigente en la URL y consulta la referencia de la Shopify Admin GraphQL antes de publicar, porque las versiones se retiran según un calendario. Lee siempre userErrors: una actualización rechazada sigue devolviendo HTTP 200.
Límites de tasa y reintentos
La GraphQL Admin API de Shopify limita las peticiones por coste de consulta calculado, con un modelo de leaky bucket, y el objeto extensions.cost de cada respuesta muestra lo que queda. Cuando recibas un error THROTTLEDespera y reintenta con backoff en lugar de hacer fallar el lote. En n8n, procesa por lotes con el nodo Loop Over Items, activa Retry On Fail en el nodo HTTP y envía los elementos que sigan fallando a una dead-letter queue.
Para catálogos muy grandes, usa las operaciones masivas (bulk operations) de Shopify en lugar de miles de llamadas sueltas. El lado del LLM exige la misma disciplina, y lo tratamos en cómo gestionar los límites de tasa de las APIs de LLM en producción.
Errores comunes: ediciones sobrescritas y variantes rotas
La mayoría de los incidentes tienen tres causas. Las tres son problemas de diseño, no problemas del modelo.
El error más caro
El fallo más costoso es que una automatización sobrescriba en silencio una edición manual de un merchandiser. Cada campo necesita un dueño declarado, y la integración debe negarse a escribir campos que no posee.
Sobrescribir ediciones manuales
Un merchandiser corrige una descripción en el admin de Shopify para una campaña. La siguiente sincronización la reemplaza por la versión del PIM y nadie se entera hasta que la campaña está en marcha. La causa es la falta de un dueño, no un mal script.
Las defensas son las de la sección de sincronización: una lista de campos bloqueados, un hash del último valor publicado y una detección de deriva que convierte una discrepancia en un elemento de revisión en lugar de una escritura.
Variantes rotas y mapeo de opciones
Las variantes se rompen cuando la integración las empareja por posición o por título. Renombra una opción de Talla a Tallas, o reordena los valores, y obtienes variantes duplicadas o huérfanas. Empareja las variantes por SKU, nunca por etiqueta.
Mantén el precio, el stock y la estructura de variantes fuera del pipeline de contenido. Pertenecen al ERP y a mutations específicas de variantes como productVariantsBulkUpdate. Shopify también limita el número de opciones y variantes por producto, así que consulta los límites vigentes en shopify.dev antes de diseñar un mapeo.
Dos trampas menores merecen una línea. Los tipos de metafield deben coincidir con lo que produce el agente, o las escrituras fallan o se truncan. Y nunca dejes que la automatización cambie el handle de una URL: si un handle debe cambiar, crea la redirección en la misma operación.
Agentes que inventan datos de producto
Los modelos de lenguaje rellenan huecos. Dale uno una zapatilla sin datos de impermeabilidad y aun así puede escribir impermeable. La solución es estructural: fundamenta al agente solo en los atributos suministrados, deja que devuelva null y haz que el control compare cada afirmación del texto con un valor estructurado.
Para afirmaciones con peso legal (certificaciones, materiales, seguridad), exige aprobación humana incluso con confianza alta.
Por dónde empezar
Elige una categoría, un idioma y un grupo de campos. Por ejemplo: 150 productos de tu categoría principal, un idioma de destino y los campos de descripción y texto alternativo. Ejecuta primero el agente en modo solo sugerencias, de modo que escriba propuestas en una cola de revisión y no publique nada.
Mide con qué frecuencia cambian los revisores los borradores. Cuando la proporción aceptada sin cambios sea estable, pasa los campos de bajo riesgo a publicación automática y añade la siguiente categoría. Después añade el segundo idioma.
Si quieres un par de manos extra, nuestro servicio de integraciones cubre la fontanería entre ERP, PIM y tienda, y nuestro servicio de automatización con IA cubre los agentes y los flujos de n8n. Cuéntanos cómo es tu catálogo y mapeamos el pipeline contigo.
Preguntas frecuentes
¿Qué es un PIM en ecommerce?
Un PIM (sistema de gestión de información de producto) es el sistema de registro del contenido de producto: atributos, descripciones, traducciones, imágenes y relaciones. Enriquece y valida esos datos y los distribuye a la tienda y a otros canales. No sustituye al ERP, que es dueño del precio y el stock.
¿Mi tienda online necesita un PIM o basta con Shopify?
Shopify basta mientras tengas un canal, un idioma y pocas personas editando unos cientos de productos. Necesitas un PIM cuando los mismos datos alimentan varios canales o idiomas, cuando la completitud varía según el canal o cuando las ediciones requieren aprobación. Hasta entonces, los metafields, un vocabulario controlado y una hoja maestra disciplinada llegan muy lejos.
¿Cómo se conecta un PIM con Shopify?
Usa la Shopify Admin GraphQL API, normalmente a través de una capa de integración como n8n. El PIM envía un webhook al cambiar, la capa compara los campos, ejecuta las comprobaciones y llama a productUpdate. Para catálogos grandes, usa lotes programados u operaciones masivas de Shopify. En WooCommerce, el equivalente es la REST API y el meta del producto.
¿Pueden los agentes de IA escribir descripciones de producto sin perjudicar el SEO?
Sí, si el texto es preciso, específico y no está copiado del fabricante. La guía de Google sobre contenido generativo mira la utilidad, no cómo se produjo el texto. Genera a partir de atributos verificados, mantén una guía de voz de marca, revisa tus páginas principales y no dejes que el agente invente especificaciones.
¿Cómo evitar que la automatización sobrescriba ediciones manuales de producto?
Declara un dueño para cada campo y escribe solo los que posee el PIM. Guarda un hash del último valor publicado y, cuando el valor en vivo difiera, trátalo como una edición manual: bloquea el campo o envíalo a revisión. Una lista de campos bloqueados en cada producto hace la regla visible y exigible.
¿Cómo se revierte una actualización masiva de productos errónea en Shopify?
Shopify no tiene deshacer para las escrituras por API, así que lo construyes tú. Guarda una copia de los valores anteriores de cada campo que cambies, etiquetada con un id de lote. Para revertir, escribe esos valores de vuelta para ese lote, omitiendo los campos que las personas hayan editado desde entonces. Prueba el procedimiento en una tienda de desarrollo antes de necesitarlo.