- El análisis de posicionamiento competitivo
- Los cálculos de brecha de precio e índice de precio
- La automatización de precios dinámicos
- El monitoreo de promociones
- El modelado de elasticidad y presión competitiva con IA
Cómo cargar datos emparejados
Ambos aceptan el mismo CSV UTF-8, ejecutan la misma validación y publican de la misma forma. La API admite un archivo por solicitud, de hasta 25 MiB en total. Consulta Cargas de matching para las opciones de cobertura, el sondeo del progreso y la gestión de errores.
La cabecera decide cómo se procesa un archivo:
item_idestá presente - el archivo se trata como datos emparejados y se publica contra tu catálogo de Products.item_idestá ausente - el archivo se trata como una exportación de competidor sin emparejar, y Retailgrid lo empareja primero con tu catálogo. Consulta Exportaciones de competidores sin emparejar.
Sube el conjunto emparejado completo con una cadencia regular (diaria funciona bien), no un delta. Las filas sin cambios conservan su historial, y los precios que cambian se registran como una nueva observación sobre la misma coincidencia.
Esquema de los datos emparejados
Los nombres de columna son exactos y distinguen mayúsculas de minúsculas. Toda columna que describe la ficha del competidor empieza porcompetitor_. Las columnas sin prefijo describen tu producto (item_id) o la propia coincidencia (match_*).
Columnas obligatorias
Columnas de la coincidencia
Describen la coincidencia: cuál de tus productos es la ficha y con qué fundamento. Son opcionales, pero envíalas. La cola de revisión filtra y ordena por ellas, y las políticas de aprobación automática usan la confianza y el tipo de coincidencia para decidir qué coincidencias se saltan la revisión manual.Columnas de precio y disponibilidad
Columnas de la ficha del competidor
Columnas de variante
Cuando una página de competidor vende varios tamaños o variantes, estas columnas los distinguen. Envíacompetitor_variant_sku siempre que la página exponga uno: es la señal de variante más fiable.
Archivo de ejemplo
item_id.
Reglas del archivo
- CSV UTF-8 con una fila de cabecera. La cabecera debe caber en 64 KiB.
- Una fila = uno de tus productos x una ficha de competidor.
- Una celda vacía significa “no indicado”. Nunca significa cero.
- Los precios son decimales simples con separador de punto, sin separador de miles ni símbolo de moneda.
- Todos los precios de una fila comparten la moneda de
competitor_currency. - Las columnas no listadas en esta página se rechazan. Pon los datos adicionales en
attributes. confidence,verified,matched_by,assurance,review_statusy campos de revisión similares están reservados. Retailgrid los establece durante la validación y la revisión, así que un archivo no puede hacerlo.- Cada columna puede aparecer solo una vez.
Qué ocurre después de la carga
- Comprobación de la cabecera. El archivo completo se rechaza si tiene una columna desconocida, reservada o duplicada, o si no tiene
item_id. Todas las columnas problemáticas se indican a la vez. - Validación de filas. Cada fila se comprueba contra las reglas anteriores. Las filas rechazadas se informan con su número de línea y un código de motivo; el resto continúa. Si se rechazan demasiadas filas, toda la entrega falla y no se publica nada.
- Publicación. Las coincidencias aceptadas aparecen en la página Matching de competidores.
- Revisión. Las coincidencias esperan en Revisar coincidencias hasta su aprobación, salvo que una política de aprobación automática las apruebe.
- Pricing. Las coincidencias directas aprobadas que están en stock (o cuya disponibilidad es desconocida) alimentan los precios de competidores en los Grids, las métricas CPI y las reglas Price Match.
partial, nunca elimina competidores que el archivo no menciona. full declara que el archivo lo es todo y retira lo que omite. Consulta Cargas de matching.
Reglas de validación
Motivos habituales por los que se rechaza una fila:
Una fila cuyo
item_id no está en tu catálogo de Products también se rechaza.
Algunos problemas rechazan toda la entrega en lugar de una sola fila:
- Dos filas describen la misma coincidencia (mismo
item_id, URL y variante). - La misma URL de competidor es específica de variante en una fila pero no en otra.
- El nombre, código de barras, MPN o tamaño de un producto cambió en tu catálogo después de que empezara la carga. Vuelve a exportar esas filas y súbelas de nuevo.
Exportaciones de competidores sin emparejar
Si tienes fichas de competidores pero todavía no tienes coincidencias, sube el mismo archivo sinitem_id y sin las columnas de la coincidencia (external_match_id, match_relation, match_method, match_confidence). Retailgrid empareja cada ficha con tu catálogo usando el código de barras y el nombre del producto, y después publica los resultados en Competitor matching para su revisión, como con cualquier archivo emparejado.
Para obtener la mejor tasa de emparejamiento sin emparejar, rellena competitor_barcode y competitor_product_name en todas las filas.
Alcance de los competidores
Por defecto, cada competidor se aplica a todas tus tiendas. Si distintas tiendas, zonas de precios o canales de venta se enfrentan a rivales distintos, acota cada competidor al lugar donde compite - consulta Asignar competidores a tiendas, zonas y canales. El alcance determina qué competidores usan las reglas de precios por tienda y las métricas de brecha con competidores.Lógica de interpretación de precios
competitor_pricees el precio de venta activo.- Si
competitor_regular_priceestá presente, Retailgrid calcula el % de descuento, la profundidad de la promoción, la brecha de precio respecto a tu precio y el índice de precio a partir del par. - Si solo está presente
competitor_price, se usa como precio activo y como precio regular.
Historial de precios
Cada entrega se guarda. Cada coincidencia conserva una identidad estable entre cargas, de modo que un cambio de precio en la misma ficha amplía el historial de esa coincidencia en lugar de crear una fila nueva. Esto permite:- Seguimiento de cambios de precio
- Análisis de frecuencia de promociones
- Puntuación de volatilidad
- Detección de guerras de precios
- Clasificación EDLP frente a Hi-Lo
- Modelado de elasticidad con IA
Otras formas de cargar precios de competidores
El conjunto de datos Competitor Prices importa observaciones de precio directamente, sin pasar por Competitor matching. Úsalo para cargar precios históricos (se recomiendan de 6 a 24 meses) o cuando solo tienes observaciones a nivel de SKU y no URLs de fichas. Las filas cargadas de esta forma no se revisan en Competitor matching.Esquema del conjunto de datos Competitor Prices
Esquema del conjunto de datos Competitor Prices
Cada fila es una observación de precio de un competidor para un producto en un momento dado.
* Se requiere al menos un identificador (
itemId, barcode o sku). Retailgrid vincula cada fila a tus productos primero por itemId, luego por barcode y luego por sku. Proporciona itemId para tener el menor número de filas sin vincular.Los formatos admitidos son CSV (recomendado) y XLSX, en UTF-8, con separador decimal de punto. Una fila = un producto x un competidor x una marca de tiempo. Se pueden añadir atributos adicionales como columnas en las cargas CSV / XLSX.La carga falla si falta datetime, competitorName o regularPrice, si no hay ningún identificador, si datetime o regularPrice no es válido, si las filas no se pueden vincular a tu conjunto de datos Products, o si hay filas idénticas duplicadas.API: POST /v1/competitor_prices/bulk (registros JSON) o POST /v1/imports/competitor_prices (CSV). JSON usa nombres en snake_case: item_id, observed_at (obligatorio), competitor_name (obligatorio), regular_price (obligatorio), promo_price, source_url, competitor_sku, stock_on_hand, barcode, status, currency. La API JSON rechaza los campos desconocidos.
