Carrefour Pricing System
Sistema interno de control y gestión de precios para Carrefour España, desarrollado con Sencha JS. Permitió actualizaciones de precios en tiempo real, registros de auditoría y gestión multi-tienda para las operaciones de precios de la cadena minorista.
Tecnologías
Sencha JS · ExtJS · REST API
La gestión de precios minoristas a gran escala es un problema operativo en el que la mayoría de la gente no piensa hasta que está dentro de él. Carrefour España opera cientos de tiendas con decenas de miles de referencias (SKU), campañas promocionales que cambian cada semana y requisitos normativos que varían según la categoría de producto. El sistema de precios es la capa operativa que conecta las decisiones comerciales de la central con las terminales de punto de venta de cada tienda.
Este proyecto fue un encargo freelance para construir y ampliar el sistema interno de control y gestión de precios de Carrefour — la herramienta que usan los equipos comerciales y de precios para gestionar los cambios de precio en toda la red de tiendas.
La herramienta y sus usuarios
Los usuarios de este sistema no son desarrolladores ni analistas — son coordinadores comerciales y gestores de precios que manejan operaciones sensibles al tiempo. Un cambio de precio promocional puede necesitar aplicarse en 200 tiendas simultáneamente a una hora precisa. Un tope regulatorio de precios aplica a ciertas categorías de producto en ciertas regiones, pero no en otras. Un cambio en el contrato con un proveedor repercute en cientos de referencias vinculadas. La interfaz tenía que hacer estas operaciones precisas sin requerir conocimientos técnicos.
Qué se construyó
El sistema se construyó con Sencha JS (ExtJS), el estándar de frontend empresarial de la época para herramientas internas de esta complejidad. Los componentes de cuadrícula (grid) y formularios de ExtJS son ideales para interfaces operativas con alta densidad de datos: columnas configurables, edición en línea, selección de múltiples filas y paginación del lado del servidor funcionan de fábrica, algo importante dado el volumen de datos de SKU involucrado.
Los módulos principales cubrían: flujos de actualización masiva de precios (subir un CSV, previsualizar los cambios antes de confirmarlos, aplicarlos con capacidad de reversión), asignación multi-tienda (qué tiendas reciben qué precio, con excepciones para diferencias regionales), precios promocionales con programación de activación y desactivación, y registros de auditoría que documentan quién cambió qué, cuándo, y de qué valor a cuál.
El registro de auditoría era un requisito ineludible: la normativa minorista española exige documentar los cambios de precio. El sistema registra cada operación de escritura con marca de tiempo, ID de usuario, valores antes/después, y el alcance de tiendas afectadas por el cambio.
Integración con la infraestructura de punto de venta
Los cambios de precio no se quedan solo en el sistema de gestión — tienen que propagarse a las terminales de punto de venta de cada tienda. El sistema se integra con la infraestructura existente de distribución de datos de punto de venta de Carrefour mediante llamadas a la API REST que activan la sincronización de tiendas después de confirmar una actualización de precios.
Nota sobre la tecnología
Sencha JS / ExtJS no es una elección común hoy en día, y para la mayoría de proyectos nuevos no lo recomendaría. Para herramientas internas en este contexto empresarial, fue la opción correcta: cubrió los requisitos de densidad de datos, los requisitos de compatibilidad de navegadores de la época, y la complejidad de los formularios sin necesidad de desarrollar componentes personalizados extensos. La herramienta adecuada para el contexto.