Listas de precios El módulo Listas de precios constituye el núcleo del Price Engine de Horfal-EOS y permite construir estrategias comerciales reutilizables, escalables y completamente desacopladas del catálogo de productos. A diferencia de los esquemas tradicionales donde el precio se captura directamente sobre cada producto, Horfal-EOS utiliza un modelo basado en atributos, listas y lógica de resolución que permite generar políticas comerciales altamente especializadas sin duplicar información ni incrementar el mantenimiento operativo. El motor se encuentra dividido en cuatro componentes principales: Atributos. Listas. Lógica. Diagnóstico. Atributos Los atributos representan las piezas elementales utilizadas para construir una estrategia de precios. Cada atributo encapsula una regla económica individual que posteriormente puede ser reutilizada por múltiples listas de precios sin necesidad de duplicar configuraciones. Clave Identificador único utilizado internamente por el sistema. Se recomienda utilizar claves estables, descriptivas y orientadas al propósito comercial del atributo. Ejemplos: UTILIDAD40 DESCUENTO_DISTRIBUIDOR COSTO_IMPORTACION MARGEN_PREMIUM Nombre Descripción operativa utilizada por los usuarios para identificar rápidamente el propósito del atributo. Ejemplos: Utilidad del bien 40%. Descuento distribuidor nacional. Incremento por logística internacional. Descripción Permite documentar el contexto comercial y el objetivo del atributo. Una buena documentación reduce errores de interpretación y facilita la administración a largo plazo. Clase La clase funciona como una clasificación semántica del atributo. Ejemplos posibles: Tipo de cálculo Determina la naturaleza matemática del atributo. Actualmente el motor soporta principalmente: TASA Aplica un porcentaje sobre una base determinada. Ejemplo: Costo base: 100.00 MXN Utilidad: 40% Resultado: 140.00 MXN IMPORTE Aplica un monto fijo sobre la base seleccionada. Ejemplo: Costo base: 100.00 MXN Cargo logístico: 25.00 MXN Resultado: 125.00 MXN Valor Representa el porcentaje o importe asociado al atributo. La precisión es administrada utilizando el canon financiero del sistema basado en BigDecimal . Vigencia Permite limitar temporalmente la utilización del atributo. Resulta especialmente útil para: Promociones temporales. Ajustes inflacionarios. Campañas comerciales. Programas de incentivos. Estado Indica si el atributo se encuentra disponible para nuevas resoluciones de precios. La desactivación preserva el historial y evita afectar operaciones históricas.   Listas Las listas representan contratos comerciales completos construidos a partir de uno o varios atributos. Una misma organización puede administrar simultáneamente decenas o cientos de listas orientadas a distintos segmentos de mercado. Clave Identificador técnico único de la lista. Ejemplos: CONTADO_MXN MAYOREO_MXN DISTRIBUIDOR_USD EXPORTACION_USD Nombre Nombre comercial utilizado por usuarios y procesos de negocio. Ejemplos: Contado. Mayorista nacional. Distribuidor autorizado. Exportación Norteamérica. Descripción Permite documentar el objetivo comercial y el alcance de la lista. Moneda operativa Determina la moneda en la cual opera la lista y dentro de la cual serán ejecutados todos los cálculos asociados. Cada lista pertenece exclusivamente a una moneda operativa. Ámbito Define dónde puede utilizarse la lista dentro del ecosistema comercial. Valores habituales: Compras. Ventas. Ambos. Orden de aplicación Determina la prioridad relativa cuando múltiples listas resultan candidatas durante una resolución. Valores menores representan mayor prioridad. Vigencia Permite definir periodos temporales de disponibilidad para campañas o acuerdos comerciales específicos. Aplica a Permite especializar listas utilizando filtros comerciales y de catálogo. Entre los criterios soportados se encuentran: Marca. Departamento. Línea. Familia. Categoría. Tipo de bienes. Suscripción. Tipo de bienes. Este mecanismo permite construir estrategias extremadamente específicas sin necesidad de duplicar productos. Marca Permite restringir la lista de precios a productos pertenecientes a una marca específica. Ejemplos: HP Dell Acer Hikvision LinkedPro Una lista configurada para la marca HP únicamente participará en la resolución cuando el producto evaluado pertenezca a dicha marca. Departamento Representa el nivel más alto de agrupación comercial dentro del catálogo de productos. Ejemplos: Ferretería Electrónica Refacciones Material eléctrico Es común utilizar este criterio para definir estrategias comerciales amplias aplicables a una división completa del negocio. Línea Permite segmentar productos dentro de un departamento específico. Ejemplos: Línea profesional Línea industrial Línea doméstica Línea premium Este nivel suele utilizarse cuando diferentes grupos de productos requieren márgenes o estrategias distintas dentro del mismo departamento. Familia Agrupa productos con características comerciales similares dentro de una línea determinada. Ejemplos: Herramientas manuales Herramientas eléctricas Equipo de protección personal Accesorios de instalación La familia representa un nivel de especialización superior al departamento y a la línea. Categoría Corresponde al nivel más específico de clasificación comercial disponible dentro del catálogo. Ejemplos: Taladros inalámbricos Brocas SDS Plus Conectores RJ45 categoría 6 Cerraduras electrónicas Las categorías permiten construir listas extremadamente especializadas cuando el modelo comercial así lo requiere. Suscripción Indica si la lista aplica a productos comercializados bajo un esquema recurrente o periódico. Valores disponibles: Sí No Ejemplos de productos con suscripción: Licencias SaaS. Mantenimiento anual. Servicios administrados. Arrendamientos periódicos. Tipo de bienes Permite restringir la lista según la naturaleza operativa del producto dentro del ERP. Valores observados actualmente: Activo fijo Consumo interno Este criterio resulta especialmente útil cuando una organización desea separar estrategias comerciales entre mercancías, activos y consumibles internos. Lógica La sección de lógica define el algoritmo interno utilizado para construir el precio final de una lista determinada. Mientras la pestaña anterior define qué lista existe, esta sección determina cómo se calcula matemáticamente. Cada fila representa un paso dentro de la cadena de construcción del precio. Orden Define la secuencia exacta de ejecución de cada atributo. El orden es fundamental porque un mismo atributo puede operar sobre bases distintas dependiendo del momento en que sea ejecutado. Atributo Referencia al atributo reutilizable que participará en el cálculo. Base operativa Determina el origen económico utilizado para iniciar el cálculo. Algunos ejemplos incluyen: Precio lista del producto. Último costo. Costo promedio. Costo estándar. Precio sugerido. Base de cálculo Define sobre qué importe se aplicará el atributo. Ejemplos: BASE_ORIGINAL Siempre utiliza el valor inicial de referencia. BASE_ACUMULADA Utiliza el resultado parcial construido hasta ese momento. BASE_ANTERIOR Utiliza únicamente el resultado del paso inmediatamente anterior. Afecta base siguiente Indica si el resultado generado por el atributo debe formar parte de la base utilizada por los siguientes pasos. Esta opción permite construir márgenes acumulativos, descuentos encadenados o cálculos escalonados. Obligatorio Define si el atributo debe existir obligatoriamente para que la lista sea considerada válida durante una resolución. Si un atributo obligatorio no puede resolverse, la lista completa es descartada automáticamente. Simulación La sección superior permite visualizar el comportamiento del algoritmo utilizando una base de referencia. Su objetivo es validar rápidamente la coherencia matemática antes de liberar cambios a producción. Diagnóstico La pestaña Diagnóstico constituye una herramienta de análisis y trazabilidad del proceso de resolución del Price Engine. Su objetivo no consiste en calcular precios finales sino en explicar el razonamiento seguido por el motor. Es equivalente a un trazador o plan de ejecución dentro de una base de datos. Contexto de resolución Representa el conjunto de variables utilizadas para simular una operación comercial específica. Entre ellas: Ámbito de operación. Rol del socio. Moneda operativa. Fecha de operación. Marca. Departamento. Línea. Familia. Categoría. Tipo de bienes. Producto. Variante. Proveedor específico. Resolver lista Ejecuta el algoritmo de selección y presenta el resultado del análisis. Resultado esperado El diagnóstico explica: Qué listas fueron consideradas candidatas. Qué listas fueron descartadas. Qué condición provocó el descarte. Qué lista resultó ganadora. Qué criterio de prioridad fue utilizado. Qué filtros participaron en la decisión. Casos de uso habituales La herramienta resulta particularmente útil para: Validación funcional durante implementación. Auditorías comerciales. Análisis de incidencias. Capacitación de usuarios. Verificación de configuraciones complejas. Soporte técnico avanzado. Recomendaciones de implementación Se recomienda iniciar con un conjunto reducido de atributos reutilizables y expandir progresivamente el catálogo conforme madure la estrategia comercial de la organización. La reutilización de atributos produce una reducción significativa en el mantenimiento y mejora la consistencia de las políticas de precios. Las listas deben representar estrategias comerciales y no clientes individuales. Cuando un cliente requiera una negociación específica, resulta preferible utilizar condiciones comerciales o asignaciones antes que multiplicar innecesariamente el número de listas. La herramienta de diagnóstico debe formar parte del proceso habitual de validación antes de liberar nuevas estrategias de precios hacia ambientes productivos. Una arquitectura correctamente diseñada permite administrar políticas comerciales complejas manteniendo trazabilidad, auditabilidad y simplicidad operativa incluso en organizaciones con miles de productos y múltiples monedas.