Ir al contenido
EN

Pipeline de ventas (Deals)

El Pipeline es el corazón del CRM. Presenta los Deals (oportunidades) en un tablero Kanban donde cada columna representa una etapa del proceso de venta.

Rediseño 2026-Q2: el pipeline ahora opera sobre Deals, no sobre Leads. Ver Modelo de entidades.

EtapaProbabilidadDescripción
Prospecto10%Deal recién abierto desde lead calificado
Calificación25%Contacto realizado, evaluando necesidades
Propuesta50%Cotización enviada al cliente
Negociación75%En discusión de términos y condiciones
Ganado (WON)100%Venta cerrada exitosamente
Perdido (LOST)0%Oportunidad descartada

Las etapas son completamente configurables. Se pueden agregar, renombrar, reordenar y ajustar probabilidades según el proceso comercial de cada empresa.

Tablero Kanban del Pipeline con Deals organizados por etapa

Los Deals se crean habitualmente al convertir un Lead calificado (ver Leads). También es posible crear un Deal manualmente sobre un Contact existente:

  1. Desde CRM → Deals → Nuevo (C desde la lista) o desde el drawer de un Contact → Nuevo Deal.
  2. Completar:
    • Nombre: descripción breve de la oportunidad.
    • Contact: a quién se le vende (obligatorio).
    • Company: empresa del contacto (automático si existe).
    • Valor estimado y moneda: respeta cfg.Country.Currency del tenant.
    • Fecha de cierre esperada: para proyecciones y forecast.
    • Vendedor (AE): responsable del seguimiento.
    • Pipeline y Etapa inicial: normalmente “Prospecto”.
  • Drag-drop: arrastrar la tarjeta de una columna a otra (Kanban).
  • Atajos: [ / ] mueven el Deal focuseado al stage anterior / siguiente.
  • Desde el drawer: cambiar el stage en el formulario del Deal.

Cada cambio de stage queda registrado en DealHistory con fecha, usuario, stage anterior/nuevo y origen (UI / API / automation / backfill). Esto alimenta los reportes de velocity.

Cada tarjeta muestra:

  • Nombre del Deal.
  • Contact y Company asociados.
  • Valor estimado en moneda base.
  • Fecha de cierre esperada (con indicador si está vencida).
  • Vendedor asignado (avatar).
  • Indicador de actividades pendientes.
  • Ganar (W): pasa a WON, CloseDate = hoy, probabilidad 100%.
    • El sistema ofrece promocionar el Contact a Cliente contable (si aún no lo es) y generar cotización/factura automática.
  • Perder (X): pasa a LOST, pide razón (reason code). El Contact queda disponible para futuros ciclos de venta.

En la parte superior del tablero se muestran KPIs en tiempo real:

  • Valor total del pipeline: suma de Deals OPEN.
  • Valor ponderado: suma ponderada por probabilidad de cada stage.
  • Deals activos: cantidad total OPEN.
  • Tasa de conversión (Win rate): WON / (WON + LOST).
  • Tiempo promedio de cierre: días desde creación hasta WON/LOST.
  • Velocity por stage: días promedio en cada etapa (desde DealHistory).

El pipeline se filtra vía SavedViewsBar:

  • Vendedor asignado.
  • Rango de fechas de cierre.
  • Rango de valor estimado.
  • Etapa específica.
  • Contact / Company.

Vistas guardadas default: “Mis Deals abiertos”, “Deals > $10k”, “Deals vencidos”, “Por cerrar este mes”.

Al mover un Deal a Ganado (WON), el sistema:

  1. Valida que el Contact esté promocionado a master.Customer (si no, ofrece crear).
  2. Genera una cotización o factura con los datos del Contact/Company y el monto acordado (suma de DealLine).
  3. El registro pasa al módulo de Facturación manteniendo trazabilidad DealId → InvoiceId.

Evento emitido al event bus: deal.won con payload { dealId, contactId, companyId, value, currency } — disponible para automations (webhooks, email, Slack).

AtajoAcción
CNuevo Deal
[ / ]Mover Deal al stage anterior / siguiente
WMarcar como WON
XMarcar como LOST (pide razón)
NNueva Activity sobre el Deal
G + PIr al Pipeline Kanban
G + DIr a lista de Deals

Lista completa: ver Resumen CRM — Atajos.

Vista no técnica del proceso. Pensada para personal de operación, contabilidad, ventas o administración.

Flujo del usuario — CRM · Pipeline de ventas

Editable en draw.io: descarga el SVG → en draw.io: File → Import from → Device → selecciona el SVG. Cada nodo queda editable.

Vista técnica para desarrolladores: endpoints, stored procedures/funciones, tablas y servicios involucrados.

Flujo técnico — CRM · Pipeline de ventas

ComponenteTipoUbicación
GET /v1/crm/pipelineRoute Expressweb/api/src/routes/crm/pipeline
PATCH /v1/crm/deals/:id/stageRoute Expressweb/api/src/routes/crm/deals
GET /v1/crm/pipeline/metricsRoute Expressweb/api/src/routes/crm/pipeline
WS /v1/crm/pipeline/wsWebSocket Gatewayweb/api/src/gateways/crm/
usp_CRM_Deal_MoveStageStored procedure dual PG + MSSQLweb/api/sqlweb-pg/includes/sp/
usp_CRM_Pipeline_GetStored procedure dual PG + MSSQLweb/api/sqlweb-pg/includes/sp/
usp_CRM_Pipeline_MetricsStored procedure dual PG + MSSQLweb/api/sqlweb-pg/includes/sp/
usp_CRM_Stage_VelocityStored procedure dual PG + MSSQLweb/api/sqlweb-pg/includes/sp/
crm.DealTabla operativaweb/api/migrations/postgres/
crm.DealHistoryTabla auditoría velocityweb/api/migrations/postgres/
crm.PipelineStageTabla configuración etapasweb/api/migrations/postgres/
PipelineKanbanPage.tsxComponente Frontendweb/modular-frontend/packages/module-crm/src/

Editable en draw.io: descarga el SVG → File → Import from → Device.