e-Misión
conversaciones · actualiza cada 30 s
Atiende clientes de e-Misión por WhatsApp, 24 horas al día, 7 días a la semana.
Responde preguntas, identifica clientes, detecta errores técnicos y conecta con el equipo humano cuando es necesario.
Números en tiempo real
Conversaciones
clientes atendidos
Políticas aceptadas
registros legales
Mensajes procesados
intercambios totales
852
Fragmentos de conocimiento
46 documentos indexados
¿Cómo funciona Lía?
Cliente escribe
Lía IA
Recibe y entiende
Base de conocimiento
Busca la respuesta
Responde
Precisa y rápida
Transfiere
Si lo necesita
Lía conoce todos los productos y servicios de e-Misión
Facturación Electrónica
planes, precios, habilitación DIAN
Nómina Electrónica
Nómina-Me, Nómina Express
POS Electrónico
puntos de venta, documentos equivalentes
Eventos Mercantiles / RADIAN
recepción de facturas, ENDOSO
SG-SST
seguridad y salud en el trabajo
VAULT
firma digital y documentos
Planes Integrales
combos multiservicio
Soporte Técnico
FAQs, resolución de incidentes
Contexto técnico y mejoras obtenidas con el cambio
El problema con Oracle OCI GenAI
Errores 404 constantes
El endpoint del agente OCI retornaba "404 Not Found" de forma recurrente. Cada conversación podía fallar en cualquier momento sin aviso.
Sesiones que se perdían sin razón
OCI Agent maneja sesiones propias (oci_session_id). Si la sesión expiraba o era inválida, la conversación quedaba interrumpida y el cliente recibía un error.
Sin control real del comportamiento
OCI es una "caja negra": no se podía ajustar el system prompt, el historial de conversación ni las reglas de comportamiento directamente. Dependíamos de lo que Oracle exponía.
Latencia alta e inconsistente
Las respuestas tardaban entre 5 y 15 segundos en algunos casos, lo que generaba mala experiencia en WhatsApp donde el usuario espera respuesta inmediata.
Costo fijo elevado aunque no se use
El Agent Endpoint de OCI cobra por el tiempo que está activo (24/7), no por el uso real. Significa pagar $150–$300/mes incluso en días sin una sola conversación.
Base de conocimiento limitada a herramientas OCI
Para actualizar el conocimiento de Lía había que usar la consola de OCI y esperar re-indexación. Sin panel propio, sin control de versiones, sin subida de archivos personalizada.
Lo que ganamos con Claude API (Anthropic) + RAG propio
Cero errores 404 desde la migración
Claude API es una llamada HTTP estándar (sin sesiones externas). Si responde 200 OK, la conversación continúa. La estabilidad es total.
Control total del comportamiento de Lía
El system prompt tiene 14+ reglas que controlan tono, transferencias, horarios, contexto numérico, coherencia de producto. Cualquier ajuste se aplica sin tocar Oracle.
Respuesta en 1–3 segundos
Claude Haiku es el modelo más rápido de Anthropic. En WhatsApp, la respuesta llega en 1 a 3 segundos, comparable a un chat humano ágil.
RAG propio — base de conocimiento 100% nuestra
852 fragmentos en Qdrant. El equipo sube archivos desde el panel, entrena a Lía con un clic, sin depender de ninguna consola externa ni de Oracle.
Pago solo por lo que se usa
Claude API cobra por token. 0 conversaciones = $0 de IA. El costo escala con el uso real, no con el tiempo que el servidor está encendido.
Historial de conversación completo para la IA
Cada llamada a Claude recibe TODO el historial de la sesión. La IA nunca "olvida" lo que se dijo antes. En OCI la gestión del historial era opaca y limitada.
Antes · OCI
6
problemas críticos
Hoy · Claude
0
errores de plataforma
Ahorro anual
~$1.700
USD estimados
Comparativo de costos: Oracle OCI vs Claude (Anthropic)
Basado en el consumo real de Lía — modelo claude-sonnet-4-6 (Claude 4 · Sonnet, el más actual)
| Criterio | Oracle OCI GenAI ❌ | Claude API ✅ |
|---|---|---|
| Modelo de cobro | Costo fijo mensual por instancia activa + tokens | Solo pagas lo que Lía usa (por token) |
| Disponibilidad | Error 404 frecuentes — agente caído | 99.9% uptime garantizado por Anthropic |
| Calidad de respuesta | Inventaba planes y precios, ignoraba KB | Sigue instrucciones con alta fidelidad, no alucina |
| Tiempo de respuesta | 4 – 8 segundos por mensaje | 1 – 3 segundos por mensaje |
| Costo estimado mensual |
~USD $150–300
infraestructura OCI + tokens (sin importar uso) |
~USD $5–25
solo por conversaciones reales (~500/mes) |
| Ahorro anual estimado | — | ~USD $1.700–3.300/año |
* Estimado con claude-sonnet-4-6 a $3/M tokens entrada + $15/M tokens salida. 500 conversaciones × 10 mensajes × 3.500 tokens entrada + 300 tokens salida ≈ $30–50/mes. OCI incluía costo de Agent endpoint activo 24/7 más tokens (~$150–300/mes).
Lo que Lía hace por e-Misión
Atención 24/7 sin intervención humana
Responde inmediatamente a cualquier hora
Identifica al cliente (NIT + Razón Social)
Valida y registra la identidad antes de atender
Registro legal de política de datos
Cada aceptación queda en historial inmutable
Transfiere inteligentemente al equipo humano
Detecta cuándo un asesor es necesario
Conocimiento actualizable sin código
El equipo sube documentos y entrena desde el panel
Exportación de datos a CSV
Conversaciones y políticas descargables en Excel
Cierre automático por inactividad (bifásico)
Recordatorio a T+8 min · cierre definitivo a T+16 min
System prompt editable desde el panel
Sin tocar código ni reiniciar el servidor
Detección de conversaciones problemáticas
Flags ⚠️ cuando Lía no tiene información o el cliente se frustra
Alertas WhatsApp al administrador
Notificación automática si Lía falla 3 veces seguidas
Healthcheck Docker con auto-recuperación
El contenedor se reinicia solo si Lía se congela (no solo si crashea)
Explorar el panel
Conversaciones
Chats, NIT, RS, historial y exportar
Base de Conocimiento
Subir documentos y entrenar a Lía
Analíticas
Estadísticas y gráficos de actividad
Política de Datos
Historial legal, búsqueda por NIT, CSV
Pipeline interno completo — desde el mensaje hasta la respuesta
El cliente escribe un mensaje
El mensaje llega al número de WhatsApp de e-Misión a través de LiveConnect, la plataforma de mensajería empresarial.
LiveConnect envía el mensaje al servidor de Lía
Mediante un webhook (llamada HTTP automática) el mensaje llega al servidor en Oracle Cloud donde corre Lía.
¿El cliente ya aceptó la Política de Datos?
Sí → continúa. No → Lía envía el texto de la política y espera aceptación. Cada aceptación queda registrada en el historial legal inmutable.
¿Ya proporcionó NIT y Razón Social?
Sí → continúa con la consulta. No → Lía solicita el NIT y la razón social. Ambos datos quedan guardados en la base de datos y visibles en el panel.
Busca los fragmentos más relevantes en la base de conocimiento
El mensaje del cliente se convierte en un vector matemático y se compara contra los 914 fragmentos indexados en Qdrant. Se recuperan los 5 más parecidos al tema de la pregunta.
Claude (Anthropic) genera la respuesta
¿La respuesta tiene una instrucción de acción?
La respuesta llega al cliente por WhatsApp
El mensaje se envía de vuelta vía LiveConnect, la conversación se guarda en la base de datos con timestamp, y el panel de administración se actualiza en tiempo real. Todo el proceso tarda 1–3 segundos.
Estado de preparación para producción
Flujo de conversación completo
Política, NIT/RS, respuesta IA, transferencia, cierre
Base de conocimiento RAG (914 fragmentos)
46 documentos · 9 productos · actualizable sin código
Registro legal de datos (Habeas Data)
Historial inmutable, versiones de política, CSV descargable
Panel de administración completo
Conversaciones, KB, analíticas, política, seguridad 2FA
QA completado — 10 casos resueltos
NIT/RS, horarios, correos, transferencias, contexto
Migración OCI → Claude Sonnet 4.6
Sin errores 404, respuesta 1–3 s, modelo más actual
Captura y almacenamiento de NIT + Razón Social
Visible en panel y exportable a CSV
Servidor en producción (Oracle Cloud)
Docker · lia.emision.dev · HTTPS · 24/7
Healthcheck Docker — auto-recuperación
Reinicio automático si Lía se congela (no solo si crashea)
Inactividad bifásica (T+8 min / T+16 min)
Recordatorio suave y cierre automático con estado visible en panel
System prompt editable desde el panel
Tab Conocimiento → instrucciones personalizadas sin tocar código
Alertas de calidad y notificaciones al admin
Flags ⚠️ en conversaciones problemáticas + WA al número admin
Prueba de carga con conversaciones simultáneas — Pendiente
Simular 10–20 clientes al mismo tiempo para validar rendimiento. Único ítem pendiente antes de escalar masivamente.
Funcionalidades añadidas para operación autónoma y sin dependencia humana
Inactividad bifásica
Recordatorio suave a los 8 minutos sin respuesta. Cierre automático a los 16 minutos con estado "Cerrado por inactividad" visible en el panel.
Healthcheck Docker
El contenedor verifica el endpoint /health cada 30 s. Si Lía se congela (no solo si crashea), Docker la reinicia automáticamente.
System Prompt editable
Las instrucciones de comportamiento de Lía se editan desde el panel (tab Conocimiento → System Prompt) sin tocar código ni reiniciar el servidor.
Flags de calidad
Cada respuesta de Lía es analizada. Se marcan automáticamente: sin_info, cliente_frustrado y preguntas_excesivas. Las conversaciones problemáticas aparecen con badge ⚠️ en el panel.
Alertas al administrador por WA
Si Lía falla 3 veces seguidas al llamar la IA, el administrador recibe un mensaje de WhatsApp automático en tiempo real.
Modelo Claude Sonnet 4.6
Actualización al modelo más reciente de Anthropic. Mayor precisión en respuestas complejas, mejor seguimiento de instrucciones y contexto extendido.
Tecnologías utilizadas
Pasa el cursor sobre cada tecnología para ver su rol en el sistema
Lenguaje principal
Todo el backend de Lía está escrito en Python: el webhook, la lógica de conversación, el sistema RAG, las migraciones de base de datos y el panel de administración.
Servidor web de Lía
Recibe los mensajes de WhatsApp vía webhook, expone todos los endpoints del panel (/api/chats, /api/stats, /api/kb…) y maneja la autenticación con JWT.
El cerebro de Lía (IA generativa)
El modelo más actual de Anthropic (Claude 4 · Sonnet 4.6). Genera respuestas precisas combinando el system prompt editable, contexto RAG y el historial. Mayor calidad que Haiku con tiempos de respuesta similares.
Base de conocimiento vectorial
Almacena los 852 fragmentos de los documentos de e-Misión como vectores matemáticos. Cuando un cliente pregunta algo, Qdrant encuentra los 5 fragmentos más relevantes en milisegundos.
Técnica que hace a Lía precisa
En lugar de que la IA "invente" respuestas, primero busca información real en los documentos de e-Misión y luego responde basándose en esos datos. Evita alucinaciones y mantiene la información actualizada.
Base de datos en producción
Guarda todas las conversaciones, el historial de políticas de datos aceptadas, la configuración del sistema y los registros de la base de conocimiento. En local usa SQLite como alternativa.
Empaquetado y despliegue
Lía corre dentro de un contenedor Docker en el servidor. Eso garantiza que funcione igual sin importar el entorno y permite actualizar la aplicación con un simple reinicio del contenedor.
Servidor en la nube
El servidor físico donde vive Lía está alojado en Oracle Cloud. Tiene acceso 24/7, HTTPS con dominio lia.emision.dev y respaldo en infraestructura empresarial.
Canal de comunicación con el cliente
LiveConnect es la plataforma empresarial de mensajería de e-Misión. Recibe los mensajes de WhatsApp de los clientes y los reenvía a Lía mediante webhook automático, y entrega las respuestas de vuelta al cliente.
Panel de administración
Alpine.js maneja toda la interactividad del panel (tabs, tablas, modales, búsquedas) sin framework pesado. Tailwind CSS define el diseño visual con clases utilitarias aplicadas directamente en el HTML.
Total
FiltradoActivos
Resueltos
Transferidos
| Número | NIT | Razón Social | Último Mensaje | Fecha / Hora | Estado | Política | Acción |
|---|---|---|---|---|---|---|---|
|
⚠️
|
Aceptó — | ||||||
| Sin conversaciones para este filtro. | |||||||
Cargando analíticas...
Total
conversaciones
Transferidos
Resueltos IA
Mensajes
procesados por Lía
Conversaciones · Últimos 7 días
Política aceptada
Distribución
Costos API · Claude Sonnet 4.6
Presupuesto mensual alcanzado
El gasto este mes superó el límite configurado de . Se envió alerta por WhatsApp al administrador.
Hoy
Este mes
Proyección
al cierre del mes
Presupuesto
límite mensual
Uso del presupuesto este mes
$0
Precios: $3/M tokens entrada · $15/M tokens salida (Claude Sonnet 4.6)
Total en el rango mostrado
Límite de alerta mensual
Cuando el gasto mensual supere este valor, Lía enviará un WhatsApp de alerta al administrador.
Tokens hoy
Cotizaciones · Motor de precios
Hoy
cotizaciones
Este mes
cotizaciones
Total
histórico
Productos más cotizados
Sin datos aún
Últimas cotizaciones
Sin datos aún
·
Archivos KB
Catálogo de precios
Motor de cotización determinístico — fuente única de precios para Lía.
Cargando...
v ·
planes · desde $
No se pudo cargar el catálogo
System Prompt activo
Las reglas de comportamiento que Lía sigue en cada conversación. Edítalo desde el panel derecho.
● Versión personalizada activa ● Versión por defectoLog de entrenamiento
Procesando...
📋 System Prompt de Lía
Reglas de comportamiento que guían cada respuesta de la IA
💰 Catálogo de precios activo
Fuente de verdad del motor de cotización determinístico de Lía
Validando y cargando catálogo...
Productos
Planes totales
Versión
·
$ — $ COP
Última actualización:
No se pudo cargar el catálogo
Para actualizar precios: edita el catalog.json y usa el botón "Actualizar catálogo" en el panel izquierdo. El motor de cotización se recargará instantáneamente sin reiniciar Lía.
Selecciona un archivo para editarlo
O crea uno nuevo con una plantilla
Solo TXT y DOCX
Gestión de versiones y evidencia legal de aceptación
cliente(s) deben re-aceptar la política vigente
La próxima vez que escriban a WhatsApp se les mostrará la nueva versión para aceptar.
Versión Activa
Aceptaron Vigente
clientes con versión actual
Pendientes
deben re-aceptar
Borrar todas las aceptaciones de política
Útil para limpiar datos de prueba. Los clientes deberán aceptar nuevamente. El historial legal no se borra.
Al publicar, todos los clientes con versión anterior deberán re-aceptar la próxima vez que escriban. El historial de aceptaciones previas queda intacto como evidencia legal.
* campos requeridos
Historial de versiones de la política
Evidencia legal — este registro nunca se elimina, ni con "Borrar todo"
| Número WhatsApp | NIT | Razón Social | Versión | Aceptó con | Fecha | Hora | |
|---|---|---|---|---|---|---|---|
| — | |||||||
Página de · registros totales
Autenticación de Dos Factores (2FA)
¿Qué es el 2FA?
La autenticación de dos factores añade una capa extra de seguridad al inicio de sesión. Además de la contraseña, se requiere un código temporal de 6 dígitos generado por tu app autenticadora.
Instala Google Authenticator o Authy en tu celular
Genera y escanea el código QR desde este panel
Confirma con el primer código de 6 dígitos para activar
Apps compatibles
Google Authenticator
iOS · Android
Authy
iOS · Android · Desktop
Microsoft Authenticator
iOS · Android
Genera el QR, escanéalo con tu app y confirma el código para activar la protección.
Escanea este QR con tu app
Abre tu app autenticadora, toca "Agregar cuenta" y escanea el código.
O ingresa este código manualmente:
2FA está activo y protegiendo el panel
Cada inicio de sesión requiere tu código de Google Authenticator. Tu cuenta está protegida.
Compartir con otros administradores
Muestra el QR para que otros lo agreguen a su app
Escanea este código con Google Authenticator, Authy o Microsoft Authenticator
Código manual (si no puedes escanear el QR)
No compartas este QR por canales inseguros (WhatsApp, email). Muéstralo directamente en pantalla. Oculta el QR cuando todos hayan escaneado.
Zona de peligro
Esta acción reduce la seguridad del panel
Al desactivar, el panel solo requerirá usuario y contraseña. Hazlo únicamente si vas a migrar a un nuevo dispositivo autenticador.