Skip to content

Extension CRM Comercial

Modulo: CRM Tipo: Resource Estado: Implementado Fecha: 2026-02-02


⚠️ CAMBIO MANDATORY — Renaming de "Industrial" a "Comercial"

Este tipo de CRM fue originalmente nombrado "Industrial" (tipo: industrial). El nombre no refleja su propósito real: gestión de llamadas comerciales, seguimiento de clientes potenciales y derivación en el proceso de ventas/pedidos.

Cambios requeridos en código (backend + frontend):

ElementoAntesDespués
Código de tipo CRMindustrialcomercial
Archivo de extensión docsextensiones/industrial.mdextensiones/comercial.md
Etiqueta visibleRegistro de atenciónRegistro Comercial
PermisosCRM_INDUSTRIAL_VER/CREAR/EDITAR/ELIMINARCRM_COMERCIAL_VER/CREAR/EDITAR/ELIMINAR
Prefijo numeraciónIND-XXXCOM-XXX
Tabla de extensión (BD)verificar nombre actualrenombrar a crm_ext_comercial

Impacto en implementación:

  • Migración de datos: actualizar el código del tipo en la tabla de tipos CRM
  • Migración de permisos: renombrar permisos existentes y migrar asignaciones de roles
  • Frontend: referencias al código "industrial" que condicionan comportamientos deben actualizarse a "comercial"
  • El archivo industrial.md debe eliminarse del repositorio una vez completado el rename en código

Referencia al proceso que usa este tipo: flujo-comercial-process


Descripcion

La extension Comercial amplía los registros base del CRM con campos especificos para gestionar llamadas comerciales, seguimiento de clientes potenciales y derivacion a concesionarias. Esta extension permite clasificar las interacciones comerciales segun multiples criterios y realizar seguimiento de intereses en productos. Es el tipo de CRM que ejecuta el flujo comercial completo: desde el registro de la oportunidad (ya sea por llamada directa o licitacion) hasta la generacion de pedidos y notas de venta.

Flags de origen de licitacion

Toda oportunidad comercial se registra como CRM Comercial. Si proviene de una licitacion, se marcan los siguientes flags:

CampoTipoDefaultDescripcion
es_licitacionbooleanfalseIndica si la oportunidad proviene de una licitacion formal
tiene_polizabooleanfalseIndica si la operacion cuenta con poliza de seguro de garantia (solo relevante cuando es_licitacion = true)

Modelo futuro: Los datos detallados de licitacion (numero, fechas, montos, estados) se implementaran como entidad vinculada al CRM en una etapa posterior. Ver licitacion-resource.

Proposito de la Extension

  • Clasificar llamadas/interacciones comerciales por tipo, origen, motivo y estado
  • Registrar interes en productos (modelos)
  • Derivar oportunidades a concesionarias de la red
  • Gestionar prioridades de atencion
  • Mantener historial de atenciones telefonicas

Frontend (Perspectiva de Usuario)

Vistas

  • Listado de Registros Comerciales: Vista principal con grilla de registros, filtros colapsables y acciones masivas
  • Formulario de Alta/Edicion: Modal con campos base y campos especificos de Registro Comercial organizados en secciones

Interacciones del Usuario

Creacion de Registro:

  1. Acceder al menu CRM y seleccionar tipo "Registro Comercial"
  2. Hacer clic en "Nuevo Registro" o usar atajo Alt+A
  3. Completar campos base (fecha/hora, contacto, titulo, detalle)
  4. Completar campos especificos:
    • Seleccionar tipo de llamada (Entrante/Saliente/Interna)
    • Seleccionar origen de la llamada
    • Seleccionar motivo de la llamada
    • Seleccionar clasificacion (subcategoria del motivo)
    • Seleccionar estado de la gestion
    • Seleccionar prioridad
    • Seleccionar modelos de interes (opcional, multiple)
    • Seleccionar concesionaria para derivacion (opcional)
  5. Guardar el registro

Consulta y Filtrado:

  • Filtrar por rango de fechas
  • Filtrar por tipo de llamada (Entrante/Saliente/Interna/Todas)
  • Filtrar por motivo de llamada
  • Filtrar por estado de llamada
  • Filtrar por operador responsable
  • Filtrar por origen
  • Filtrar por tipo de contacto
  • Filtrar por concesionaria de derivacion
  • Filtrar por provincia/localidad del contacto
  • Filtrar por modelo de interes
  • Filtrar por titulo o detalle (busqueda de texto)
  • Filtrar registros cancelados/sin cancelar/todos

Acciones sobre Registros:

  • Editar registro existente (doble clic o boton)
  • Ver/Gestionar relaciones con otros registros
  • Cancelar registro indicando motivo de cierre
  • Descancelar registro previamente cancelado
  • Exportar a Excel (en desarrollo)
  • Generar informe PDF (en desarrollo)

Indicadores Visuales

  • Fondo amarillo suave: Registros derivados a concesionaria
  • Opacidad reducida: Registros cancelados
  • Chip de cancelacion: Muestra fecha de cancelacion en registros cancelados

Permisos

  • CRM_COMERCIAL_VER: Visualizar registros comerciales
  • CRM_COMERCIAL_CREAR: Crear nuevos registros
  • CRM_COMERCIAL_EDITAR: Modificar registros existentes
  • CRM_COMERCIAL_ELIMINAR: Eliminar registros

Backend (Perspectiva de Datos de Negocio)

Entidades de Negocio

Extension Comercial

Almacena los campos especificos del tipo Comercial vinculados al registro base.

Datos necesarios:

  • Identificador unico de la extension
  • Vinculo al registro base de CRM
  • Tipo de llamada (Entrante/Saliente/Interna)
  • Categoria/Motivo de la llamada
  • Subcategoria/Clasificacion
  • Tipo de origen
  • Estado de la llamada/gestion
  • Prioridad
  • Concesionaria de derivacion (opcional)

Modelos de Interes

Almacena la relacion entre un registro comercial y los productos (modelos) de interes del cliente.

Datos necesarios:

  • Vinculo a la extension comercial
  • Vinculo al modelo/producto

Relaciones de Negocio

  • Cada registro de CRM tipo Comercial tiene exactamente UNA extension comercial
  • Una extension comercial puede tener MULTIPLES modelos de interes asociados
  • Los campos de clasificacion (categoria, subcategoria, origen, estado, prioridad) referencian catalogos del modulo CRM:
    • Categorias (Motivos de llamada)
    • Subcategorias (clasificaciones dentro de un motivo)
    • Tipos de origen
    • Estados de llamada
    • Prioridades
  • La concesionaria referencia el catalogo de concesionarias del sistema

Validaciones de Negocio

Campos Obligatorios:

  • Tipo de llamada: debe ser E (Entrante), S (Saliente) o I (Interna)
  • Origen: debe existir en el catalogo de tipos de origen
  • Motivo: debe existir en el catalogo de categorias
  • Clasificacion: debe existir en el catalogo de subcategorias y pertenecer al motivo seleccionado
  • Estado: debe existir en el catalogo de estados de llamada
  • Prioridad: debe existir en el catalogo de prioridades

Validaciones Adicionales:

  • La clasificacion debe corresponder al motivo seleccionado (relacion padre-hijo)
  • Si se indica concesionaria, debe existir en el catalogo de concesionarias
  • Los modelos de interes deben existir en el catalogo de modelos

Reglas de Negocio

  • Regla 1: Dependencia Motivo-Clasificacion

    • Condicion: Al seleccionar un motivo de llamada
    • Accion: Solo se muestran las clasificaciones pertenecientes a ese motivo. Si se cambia el motivo, la clasificacion se reinicia
  • Regla 2: Indicador Visual de Derivacion

    • Condicion: Cuando un registro tiene concesionaria asignada
    • Accion: Se muestra con fondo amarillo en el listado para destacar derivaciones pendientes
  • Regla 3: Multiples Modelos de Interes

    • Condicion: Al registrar una llamada comercial
    • Accion: Se pueden seleccionar multiples modelos/productos de interes para un mismo registro
  • Regla 4: Creacion de Catalogos en Linea

    • Condicion: Si no existe el origen, motivo, estado o prioridad necesario
    • Accion: El usuario puede crear el elemento del catalogo desde el mismo formulario sin salir

Casos de Uso

Caso 1: Registro de Llamada Entrante con Interes en Productos

Actor: Operador de atencion telefonica

Precondiciones:

  • El usuario debe estar autenticado con permisos de CRM Comercial
  • Debe existir el contacto en el sistema (o crearse previamente)
  • Deben existir los catalogos configurados (motivos, estados, etc.)

Flujo principal:

  1. El operador recibe una llamada de un cliente potencial
  2. Accede al modulo CRM y crea nuevo registro tipo "Registro de atención"
  3. Selecciona tipo "Entrante"
  4. Busca y selecciona el contacto existente o crea uno nuevo
  5. Ingresa titulo descriptivo (ej: "Consulta por vehiculo 0km")
  6. Selecciona origen "Telefono fijo"
  7. Selecciona motivo "Consulta comercial"
  8. Selecciona clasificacion "Vehiculos nuevos"
  9. Selecciona estado "En proceso"
  10. Selecciona prioridad "Alta"
  11. Selecciona los modelos de interes del cliente (puede seleccionar varios)
  12. Opcionalmente ingresa detalle con notas adicionales
  13. Guarda el registro

Postcondiciones:

  • Se crea registro de CRM con extension comercial
  • Se registran los modelos de interes
  • El registro queda disponible para seguimiento

Flujos alternativos:

  • Motivo no existe: El operador puede crear el motivo desde el mismo formulario usando el boton de agregar

Caso 2: Derivacion a Concesionaria

Actor: Operador de atencion telefonica

Precondiciones:

  • Existe un registro de llamada que requiere atencion de una concesionaria
  • Existen concesionarias configuradas en el sistema

Flujo principal:

  1. El operador crea o edita un registro de atencion
  2. Selecciona la concesionaria a la cual derivar en el campo "Derivar a Concesionaria"
  3. Guarda el registro

Postcondiciones:

  • El registro queda marcado con la concesionaria de derivacion
  • El registro se muestra con fondo amarillo en el listado

Caso 3: Busqueda de Registros por Criterios Multiples

Actor: Supervisor comercial

Precondiciones:

  • Existen registros historicos en el sistema

Flujo principal:

  1. El supervisor accede al listado de registros
  2. Expande el panel de filtros
  3. Selecciona rango de fechas (ultimo mes)
  4. Selecciona motivo "Consulta comercial"
  5. Selecciona modelo especifico de interes
  6. Selecciona provincia del contacto
  7. Aplica filtros automaticamente
  8. Visualiza resultados filtrados

Postcondiciones:

  • Se muestra listado filtrado segun criterios seleccionados
  • El supervisor puede exportar o analizar los resultados

Migracion de Datos Legacy

Sistema Anterior (Llamadas)

Esta extension incluye soporte para migracion desde el sistema legacy de "Llamadas" que existia anteriormente. La migracion:

Datos Migrados:

  • Fecha y hora de la llamada
  • Contacto asociado
  • Titulo y descripcion
  • Operador responsable
  • Categoria (motivo)
  • Subcategoria (clasificacion)
  • Tipo de origen
  • Estado
  • Prioridad
  • Tipo de llamada (E/S/I)
  • Concesionaria de derivacion
  • Fecha y motivo de cierre (si aplica)

Campos Legacy Preservados: Los siguientes campos del sistema anterior se mapean a la extension:

  • codcat -> Codigo de categoria/motivo
  • codsub -> Codigo de subcategoria/clasificacion
  • codtip -> Codigo de tipo de origen
  • codest -> Codigo de estado
  • codpri -> Codigo de prioridad
  • es -> Tipo de llamada (E/S/I)
  • concesi -> Codigo de concesionaria

Caracteristicas de la Migracion:

  • Es idempotente (puede ejecutarse multiples veces sin duplicar)
  • Mantiene trazabilidad con identificadores originales
  • Preserva derivaciones entre usuarios
  • Preserva relaciones entre registros (tipo "seguimiento")
  • Registros sin contacto son rechazados (requisito de negocio)
  • Operadores invalidos se reemplazan por usuario por defecto

Consideraciones

Seguridad

  • Solo usuarios con permisos de CRM Comercial pueden acceder a estos registros
  • Las acciones de crear, editar y eliminar tienen permisos independientes
  • Los datos de contacto estan protegidos por permisos del modulo

Auditoria

  • Se registra quien crea y modifica cada registro
  • Se mantiene historial de cancelaciones con fecha y motivo
  • Las derivaciones quedan registradas con usuario origen y destino

Rendimiento

  • Los filtros soportan grandes volumenes de datos
  • Las subcategorias se cargan dinamicamente segun categoria seleccionada
  • Los catalogos se cachean para mejorar tiempos de respuesta

Dependencias

Funcionalidades Relacionadas

  • Sistema base de CRM (registros, derivaciones, relaciones)
  • Catalogos de CRM (categorias, subcategorias, origenes, estados, prioridades)
  • Catalogo de modelos/productos
  • Catalogo de concesionarias
  • Modulo de contactos

Servicios Externos

  • Ninguno requerido

Criterios de Aceptacion

  • [ ] AC-001: El usuario puede crear un registro comercial con todos los campos especificos
  • [ ] AC-002: La clasificacion se filtra automaticamente segun el motivo seleccionado
  • [ ] AC-003: Los registros con concesionaria se muestran con indicador visual
  • [ ] AC-004: Se pueden seleccionar multiples modelos de interes
  • [ ] AC-005: Los filtros funcionan correctamente para todos los criterios disponibles
  • [ ] AC-006: El usuario puede crear elementos de catalogo sin salir del formulario
  • [ ] AC-007: Los datos migrados del sistema legacy son accesibles y correctos
  • [ ] AC-008: Las cancelaciones y descancelaciones funcionan correctamente

Notas Adicionales

  • El campo "Tipo de llamada" con valor "A" (Otro) existe por compatibilidad legacy pero no esta habilitado para nuevos registros
  • Los informes PDF y exportacion Excel estan planificados pero no implementados actualmente
  • La relacion con presupuestos se maneja a traves del flag presupuesto en la categoria
  • Este tipo de CRM es el punto de entrada unico del flujo comercial (tanto oportunidades directas como licitaciones) → ver flujo-comercial-process