Cómo automatizamos la asignación de expedientes en una oficina técnica con n8n y PostgreSQL

Cómo automatizamos la asignación de expedientes en una oficina técnica con n8n y PostgreSQL

Hace unos meses nos contactó el responsable de una oficina técnica de peritajes en Andalucía. Su equipo de seis peritos gestionaba entre 40 y 60 expedientes nuevos cada semana, y todos llegaban al mismo sitio: un buzón de correo genérico que revisaba la coordinadora de la oficina cada mañana.

El problema no era el volumen. Era que todo el reparto dependía de una sola persona, de su memoria y de que estuviera disponible. Cuando faltaba, los expedientes se quedaban sin asignar durante horas. Los peritos no sabían qué tenían pendiente. Los clientes llamaban preguntando por qué nadie les había contactado. Y al final del mes, siempre había un perito con el doble de carga que otro sin que nadie supiera exactamente cómo había pasado.

Le propusimos una solución con n8n y PostgreSQL que hoy funciona sin intervención humana: cada expediente que llega al buzón se asigna automáticamente al perito con menos carga, se registra en base de datos y se notifica al instante.

El diagnóstico: tres problemas que se retroalimentaban

El primero era la dependencia total de la coordinadora. Ella era la única persona que abría el buzón, decidía a quién asignar cada caso y reenviaba el email al perito. Si estaba en una reunión a las 9 de la mañana, los expedientes que llegaban a las 8:30 no se tocaban hasta las 11. En un sector donde el SLA marca tiempos de respuesta de 24 o 48 horas, perder dos o tres horas ya comprometía plazos.

El segundo era el desequilibrio de carga. La coordinadora repartía de memoria, sin un sistema que le dijera en tiempo real cuántos expedientes llevaba cada perito. El resultado: unos acumulaban muchos más casos que otros, generando frustración interna y problemas de calidad.

El tercero era la falta de trazabilidad. La pregunta "¿quién lleva el expediente 2024-1587?" requería buscar en cadenas de emails reenviados. El informe mensual para dirección se hacía a mano cruzando correos y hojas de Excel. Cada informe llevaba horas.

La solución: asignación automática por carga de trabajo

El sistema utiliza n8n como motor de automatización y PostgreSQL como base de datos. Ambas herramientas son open source, se instalan en el mismo servidor y no requieren licencias de pago. El flujo completo se ejecuta automáticamente cada vez que un email llega al buzón.

1. El trigger: vigilar el buzón 24/7

Un nodo IMAP en n8n vigila el buzón de la oficina. Cada vez que llega un email nuevo, n8n lo captura automáticamente y extrae los datos clave: remitente, fecha, asunto con el número de expediente y el cuerpo del mensaje con los detalles del siniestro. Este trigger funciona sin descanso: da igual si el expediente llega a las 3 de la madrugada, un sábado o en pleno agosto.

2. Consulta de carga: ¿quién tiene menos expedientes?

Una vez capturado el email, n8n lanza una consulta SQL a PostgreSQL que cuenta cuántos expedientes activos tiene cada perito y devuelve el que tiene menos. Si hay tres peritos con 12, 15 y 10 expedientes respectivamente, el sistema asigna al que tiene 10. Si hay empate, selecciona al primero por orden alfabético. Este algoritmo de balanceo por carga mínima garantiza un reparto equitativo sin que nadie tenga que decidir.

La tabla de peritos incluye un campo activo (booleano). Cuando un perito se va de vacaciones, basta con ponerlo a FALSE. Deja de recibir expedientes al instante, sin tocar la automatización.

3. Registro automático de la asignación

Con el perito seleccionado, n8n ejecuta un INSERT en la tabla de expedientes: nombre del perito, su correo, número de expediente, remitente y fecha exacta de la asignación. Cada expediente queda registrado con trazabilidad completa. La pregunta "¿quién lleva el expediente 2024-1587?" ahora se responde con una query en segundos.

4. Notificación instantánea al perito

Finalmente, n8n envía un email al perito asignado con toda la información del expediente y los documentos adjuntos que venían en el email original. El perito puede empezar a trabajar inmediatamente, sin esperar a que nadie le reenvíe nada. Desde que el email original entra en el buzón hasta que el perito tiene el expediente: menos de 10 segundos.

La base de datos: simple pero sólida

El sistema necesita solo dos tablas. La primera almacena el equipo:

CREATE TABLE gestores (
  id SERIAL PRIMARY KEY,
  nombre VARCHAR(100) NOT NULL,
  email VARCHAR(150) NOT NULL,
  activo BOOLEAN DEFAULT TRUE
);

La segunda registra cada asignación:

CREATE TABLE expedientes (
  id SERIAL PRIMARY KEY,
  gestor_id INTEGER REFERENCES gestores(id),
  gestor_nombre VARCHAR(100),
  gestor_email VARCHAR(150),
  expediente VARCHAR(100),
  remitente VARCHAR(200),
  fecha_entrada TIMESTAMP DEFAULT NOW()
);

Y esta es la consulta que n8n ejecuta para encontrar al perito con menos carga:

SELECT g.id, g.nombre, g.email, COUNT(e.id) AS total
FROM gestores g
LEFT JOIN expedientes e ON g.id = e.gestor_id
WHERE g.activo = TRUE
GROUP BY g.id, g.nombre, g.email
ORDER BY total ASC, g.nombre ASC
LIMIT 1;

Sin código JavaScript intermedio. Sin lógica compleja. Todo se resuelve con SQL estándar dentro de un nodo nativo de n8n.

¿Por qué PostgreSQL y no una hoja de cálculo?

La concurrencia es el primer motivo: si llegan tres expedientes en el mismo minuto, PostgreSQL maneja cada INSERT como una transacción atómica. Con Google Sheets, las escrituras simultáneas pueden generar datos inconsistentes. El rendimiento también importa: la consulta de carga con índices se ejecuta en milisegundos incluso con miles de registros. Y la escalabilidad es clave: PostgreSQL permite añadir campos, crear vistas, generar informes complejos y conectar herramientas de Business Intelligence sin que el sistema se vuelva frágil.

El resultado: qué cambió en la oficina

Aspecto Antes (manual) Después (automatizado)
Tiempo de asignación 30 min - 3 horas Menos de 10 segundos
Disponibilidad Solo en horario de la coordinadora 24/7, incluidos festivos
Equilibrio de carga Desviación de hasta un 40% Desviación inferior al 5%
Trazabilidad Cadenas de email reenviado Base de datos con timestamps
Informe mensual 3-4 horas de recopilación manual Una query SQL en 2 segundos
Dependencia de personas Total Ninguna
Incumplimientos de SLA 2-3 por semana Cero desde la implantación

El cambio más importante no está en la tabla: la coordinadora dejó de ser un cuello de botella y pasó a dedicar ese tiempo a revisión de informes, seguimiento de calidad y relación con compañías aseguradoras.

Evoluciones que ya estamos preparando

Asignación por especialidad: un paso de clasificación con IA que lee el contenido del email, identifica el tipo de siniestro y asigna al perito especializado, respetando el balanceo de carga dentro de esa especialidad.

Asignación por zona geográfica: el sistema extraerá la localización del siniestro y asignará al perito de esa zona. Si su carga está al límite, escalará a un perito de zona adyacente.

Notificación por Telegram: además del email, el perito recibirá un mensaje en Telegram con los datos clave del expediente para verlo desde el móvil mientras está en ruta.

Dashboard en Metabase: conectando PostgreSQL a Metabase, la dirección tendrá un panel visual con la carga de cada perito, tiempos medios de resolución y expedientes pendientes en tiempo real.

Integración con agentes IA: un agente que analice el contenido del expediente, extraiga datos clave (tipo de daño, dirección, urgencia) y los registre automáticamente antes de la asignación.

Esto no es solo para peritajes

El patrón de asignación automática por carga de trabajo aplica a cualquier negocio que reciba solicitudes y necesite distribuirlas entre un equipo: servicios de asistencia técnica (SAT), despachos de ingeniería y arquitectura, gestorías y asesorías, departamentos de soporte, clínicas y centros médicos, o corredurías de seguros. El patrón es siempre el mismo: entrada → consulta de carga → asignación → registro → notificación. Lo que cambia es el canal de entrada y el destino de la notificación.

Preguntas frecuentes

¿Qué pasa si un gestor está de vacaciones o de baja?
Se cambia su campo activo a FALSE en la tabla. La consulta SQL solo selecciona gestores activos, así que deja de recibir expedientes al instante. Cuando vuelve, se reactiva con un simple UPDATE.

¿Se puede usar con Outlook en lugar de Gmail?
Sí. El nodo IMAP de n8n funciona con cualquier servidor de correo que soporte IMAP: Gmail, Outlook, servidores propios. Solo hay que configurar las credenciales del buzón.

¿Qué ocurre si llegan dos expedientes a la vez?
PostgreSQL maneja la concurrencia de forma nativa. Cada asignación se ejecuta dentro de una transacción, de modo que el segundo expediente ya ve el registro del primero cuando calcula la carga. No hay riesgo de asignar ambos al mismo gestor.

¿Puedo ver un histórico de todas las asignaciones?
Sí. La tabla de expedientes acumula cada asignación con timestamp. Se pueden hacer queries por gestor, por rango de fechas o conectar Metabase o Grafana para visualización en tiempo real.

¿Cuánto cuesta mantener este sistema?
n8n y PostgreSQL son open source. Con un VPS básico de 5-10€/mes el coste de infraestructura es prácticamente cero. El coste real es el diseño e implementación inicial del flujo.

¿Se puede ampliar con más lógica?
Sí. Se puede ampliar con clasificación por IA, notificaciones por Telegram, recordatorios de expedientes sin cerrar e informes automáticos semanales.

Conclusión

Automatizar la asignación de expedientes no es un proyecto tecnológico complejo. Es una decisión práctica que elimina un cuello de botella real, libera tiempo del equipo y garantiza un reparto justo y trazable. Con n8n y PostgreSQL se puede tener un sistema robusto funcionando en cuestión de días, sin licencias de software y sin depender de que una persona esté pendiente del buzón.

En nacaIA podemos ayudarte con la implementación a medida del flujo completo adaptado a tu oficina, o con nuestra formación en nacaIA Academy para que construyas y mantengas tus propias automatizaciones. ¿Tu oficina reparte expedientes a mano? Cuéntanos tu caso y te proponemos una solución.

JB

Jorge Benítez

Fundador de nacaIA · Especialista en automatizaciones con n8n y desarrollo de software

Ayudo a empresas a automatizar procesos con n8n, IA y desarrollo a medida. Más sobre mí →