Pantalla Selector

Pantalla de entrada donde el tutor selecciona la especie y el grupo etario de su mascota. Esta selección determina cuál de los 8 formularios se carga. No requiere login en la versión inicial.

ventas.tuseguroparamascotas.com/declaracion-salud

Declaración de Salud de tu Mascota

Cuéntanos sobre la salud de tu mascota

Este cuestionario nos ayuda a conocer mejor el estado de salud de tu compañero.

¿Qué tipo de mascota tienes?

🐕
Canino
🐈
Felino

¿Cuántos años tiene tu mascota?

Cachorro
5m–1a
Joven
1–5a
Adulto
5–7a
Senior
7–15a

Componentes de esta pantalla

EncabezadoLogo MVO + badge con código de versión del formulario
EyebrowTexto contextual de marca. No modificar.
H1Fraunces Bold 700, tamaño 2rem
Cards especieGrid 2 columnas. Al seleccionar: borde teal, fondo #EAF5F3. Estado: selected.
Cards etarioAparecen SOLO después de seleccionar especie. Grid 4 columnas (2 en mobile). Estado: selected.
CTA buttonAparece SOLO cuando ambos están seleccionados. Muestra el label del formulario que se cargará.

Lógica de selección

La combinación especie + grupo etario determina cuál de los 8 formularios se carga. El formKey generado sigue el patrón {especie}-{grupo} (ej: canino-joven). El código de versión correspondiente se asigna automáticamente.

Pantalla de Formulario (Fluido)

El formulario se presenta en secciones secuenciales. Una sola sección visible a la vez. El tutor navega con botones Anterior/Siguiente. La barra de progreso muestra el avance total.

ventas.tuseguroparamascotas.com/ds/canino-joven

Canino Joven

Identificación
Preventivo
Antecedentes
Digestivo
Locomotor
Neurológico
Dérmico
Reproductivo
Declaración

Sección 4 de 9

Sistema Digestivo y Alergias

Cuéntanos sobre cualquier problema digestivo o alergia que haya presentado tu mascota.

¿Tiene episodios de vómito frecuentes (más de 2 veces en una semana)?
No
No sé
¿Ha sido diagnosticado con alguna alergia o intolerancia alimentaria?
No
No sé
← Anterior
Siguiente →

Componentes del formulario

SidebarLista de pasos con estados: pendiente / completado / activo. Oculto en mobile (<700px).
Progress barCalcula porcentaje: (sección_actual / total_secciones) × 100. Transición 0.3s ease.
Punto rojo ●Marca preguntas de riesgo (risk: true). Indica al analista en revisión que esta pregunta alimenta el semáforo.
Hint boxFondo #F0F6F5, borde izquierdo 3px teal. Solo aparece en preguntas con campo hint.
Botones Sí/NoAl seleccionar "Sí" en pregunta tipo ynf: aparece textarea de detalle con animación slideDown.
NavegaciónSticky en la parte inferior. "Anterior" invisible en sección 1. "Siguiente" cambia a "Ver Resumen →" en la última sección.

Semáforo de Riesgo (Código de Alerta)

Al completar el formulario, el sistema calcula automáticamente un puntaje de riesgo basado en las respuestas positivas ("Sí") a preguntas marcadas como críticas. El resultado se muestra en la pantalla de resumen bajo un separador "Uso Interno".

ventas.tuseguroparamascotas.com/ds/resumen
🐾
¡Declaración enviada exitosamente!

Nuestro equipo revisará la información y te contactará en las próximas 24–48 horas hábiles.

Resultado Interno · Solo Equipo Miveteonline
🚦 Semáforo Interno de Riesgo Puntaje: 5 pts · 4 hallazgos
CRÍTICO
Hallazgos críticos · 9+ pts
ROJO
Hallazgos significativos
AMARILLO
Hallazgos menores · 1–3 pts
VERDE
Sin hallazgos · 0 pts
Acción recomendada: Revisión médica obligatoria antes de emisión. Evaluar exclusiones o prima diferencial.
NivelPuntajeSignificadoAcción
🟢 VERDE
0 pts Sin hallazgos de riesgo en la declaración Suscripción recomendada sin restricciones
🟡 AMARILLO
1 – 3 pts Hallazgos menores o antecedentes leves Revisión por analista · Posible exclusión de preexistencias o cláusula de espera
🔴 ROJO
4 – 8 pts Condiciones de salud que elevan el riesgo Revisión médica obligatoria · Evaluar exclusiones, cláusula o prima diferencial
⚫ CRÍTICO
9+ pts Múltiples o graves condiciones identificadas Consulta con aseguradoras · Evaluar rechazo o condicionado especial

Pesos por tipo de pregunta

Peso 3 (Crítico)Diagnóstico confirmado grave: parvovirus, moquillo, ERC diagnosticada, tumores, displasia confirmada, convulsiones tratadas, piometra, hipertiroidismo confirmado, obstrucción urinaria.
Peso 2 (Alto)Síntomas significativos: soplo cardíaco, desmayos, tos nocturna, bultos, señales de diabetes, Cushing, hipotiroidismo, PIF, CMH.
Peso 1 (Moderado)Resto de preguntas marcadas como risk: true.
FeLV/FIV positivoSi la respuesta seleccionada incluye "positivo" → suma directa de 5 puntos. Lleva inmediatamente a nivel ROJO o CRÍTICO.

Tipos de Pregunta

El sistema maneja 5 tipos de pregunta. El tipo ynf es el más frecuente — combina toggle Sí/No con campo de detalle condicional que aparece solo al seleccionar "Sí".

Tipo YN · Sí / No / No sé (sin detalle)

¿Convive con otros animales sin vacunar?
No
No sé

Tipo YNF · Sí / No / No sé + campo de detalle condicional

¿Ha tenido convulsiones o pérdida del conocimiento?
No
No sé

Tipo SELECT · Selección única de lista

¿Está castrado o esterilizado?

Tipo MC · Selección múltiple (checkboxes)

¿Cuáles vacunas ha recibido? (marcar todas las aplicadas)

Tipo TXT · Campo de texto libre

¿Hay algo más que quieras agregar sobre la salud de tu mascota?
Estados de los botones Sí / No
No
No sé
Sin respuesta

El color del estado activo varía: Sí → rojo (alerta), No → verde (ok), No sé → ámbar (pendiente).

Matriz de Formularios (8 versiones)

Cada combinación especie × grupo etario carga un formulario con secciones específicas. Las secciones de Identificación, Historia Preventiva, Antecedentes Médicos y Declaración son comunes a todos.

CódigoEspecieGrupoRango de EdadVersiónSecciones Específicas
canino-cachorroCaninoCachorro5 meses – 1 añoDS-CAN-CAC-001Infeccioso, Digestivo, Respiratorio, Congénito, Neurológico
canino-jovenCaninoJoven1.1 – 5 añosDS-CAN-JOV-001Digestivo/Alergias, Locomotor, Neurológico, Dérmico, Reproductivo
canino-adultoCaninoAdulto5.1 – 7 añosDS-CAN-ADU-001Cardiovascular, Renal/Urinario, Endocrino, Locomotor, Oncológico
canino-seniorCaninoSenior7.1 – 15 añosDS-CAN-SEN-001Cardiovascular, Renal, Endocrino, Locomotor, Cognitivo, Sensorial/Oncológico
felino-cachorroFelinoCachorro5 meses – 1 añoDS-FEL-CAC-001Resp. Viral (URI), Viral Felino (FeLV/FIV), Digestivo, Congénito
felino-jovenFelinoJoven1.1 – 6 añosDS-FEL-JOV-001Urinario FLUTD, Viral Felino, Digestivo, Dérmico, Reproductivo
felino-adultoFelinoAdulto6.1 – 10 añosDS-FEL-ADU-001Renal (ERC), Tiroideo, Cardiovascular, Digestivo (EII), Urinario, Respiratorio/Asma
felino-seniorFelinoSenior10.1 – 15 añosDS-FEL-SEN-001Renal (ERC crítico), Tiroideo, Cardio/Hipertensión, Locomotor/Cognitivo, Oncológico/Sensorial

Flujo del Tutor

El tutor completa la declaración sin necesidad de crear cuenta ni iniciar sesión en la versión inicial. El formulario se puede acceder desde un link personalizado por póliza enviado vía WhatsApp, email o SMS.

1

Acceso al formulario

El tutor recibe un link único: ventas.tuseguroparamascotas.com/ds?poliza=XXXXX. El número de póliza puede pre-cargar algunos campos de identificación desde el backend.

2

Selección de especie y edad

Pantalla simple con dos pasos: especie (2 opciones) y grupo etario (4 opciones). Al completar ambos, aparece el botón de inicio con el nombre del formulario que se cargará.

3

Sección de Identificación

Datos básicos de la mascota y el tutor. Algunos campos pueden pre-llenarse desde el CRM si el número de póliza fue recibido por URL.

4

Secciones de salud (5–8 secciones según formulario)

El tutor responde las preguntas una sección a la vez. Las respuestas afirmativas revelan campos de detalle adicionales. Las secciones se guardan automáticamente en localStorage al cambiar de sección (auto-save local).

5

Declaración y confirmación

El tutor lee el texto de declaración, marca el checkbox de aceptación, ingresa su nombre y fecha, y envía el formulario.

6

Pantalla de resumen / confirmación

El tutor ve el banner de "¡Declaración enviada!" con el nombre de su mascota y el tiempo estimado de respuesta. Internamente, el sistema calcula el semáforo y lo muestra debajo del separador "Uso Interno" visible solo para el equipo.

7

Notificación al equipo MVO

El backend envía una notificación interna (email/webhook) al equipo de analistas con el código de semáforo, el puntaje, y los hallazgos positivos identificados.

Modelo de Datos

Estructura de datos que debe almacenar el backend por cada declaración de salud enviada.

CampoTipoDescripciónEjemplo
ds_idUUIDIdentificador único de la declaraciónds_2026_CAC_001
form_keystringFormulario cargadocanino-joven
versionstringVersión del formularioDS-CAN-JOV-001
poliza_idstringN° de póliza / expedienteMVO-2026-001234
mascota_nombrestringNombre de la mascotaThor
especieenumcanino | felinocanino
grupo_etarioenumcachorro | joven | adulto | seniorjoven
razastringRaza de la mascotaLabrador
sexoenumM | FM
fecha_nacimientodateFecha de nacimiento o edad aproximada2022-03-15
tutor_nombrestringNombre completo del tutorMaría González
tutor_cedulastringCédula o pasaporte del tutorV-12345678
answersJSONObjeto con todas las respuestas: {q_id: "si"|"no"|"ns"|valor}{"convul":"si","vomito":"no"}
detailsJSONTextos de detalle para respuestas "Sí": {q_id: "texto libre"}{"convul":"Hace 6 meses, tratamiento con fenobarbital"}
risk_scoreintegerPuntaje total del semáforo5
risk_levelenumverde | amarillo | rojo | criticorojo
risk_flagsJSON arrayLista de IDs de preguntas que activaron riesgo con su puntaje[{"id":"convul","pts":3}]
declaracion_aceptaboolean¿El tutor aceptó la declaración?true
fecha_registrodatetimeFecha y hora UTC del envío2026-08-22T14:30:00Z
ip_origenstringIP del dispositivo del tutor (para auditoría)186.1.2.3
canalenumweb | whatsapp | email | presencialweb

Requerimientos de Desarrollo

Frontend

FrameworkReact / Vue / Vanilla JS + CSS moderno (según stack existente)
ResponsiveMobile-first. Breakpoint crítico: 700px (sidebar se oculta). Min-width testear: 320px.
Auto-saveGuardar respuestas en localStorage al cambiar de sección. Recuperar si el tutor recarga la página.
ValidaciónLa Declaración requiere: checkbox marcado + nombre tutor + fecha. El resto de campos son opcionales para facilitar el llenado.
TemaSoportar dark/light mode via prefers-color-scheme + toggle manual. CSS variables para el sistema de colores.
AccesibilidadFocus visible en todos los controles. Labels asociados a inputs. ARIA labels en botones de toggle.
FuentesFraunces (headings) + DM Sans (body) via Google Fonts. Fallbacks: Georgia / system-ui.
Colores primarios#1A6B60 Teal (primario) · #C97A08 Ámbar (acento) · Ver sistema de tokens completo.

Backend

API endpointPOST /api/ds/submit — recibe el JSON con todas las respuestas y calcula el riesgo
Cálculo de riesgoEl backend debe poder recalcular el semáforo independientemente del frontend. Usar la tabla de pesos documentada.
StorageBase de datos estructurada (PostgreSQL recomendado). Tabla health_declarations con los campos documentados.
NotificacionesWebhook o email interno al equipo MVO al recibir una declaración con nivel ROJO o CRÍTICO.
URL pre-fillSoportar ?poliza=XXX en la URL para pre-cargar datos del expediente desde el CRM.
SeguridadRate limiting en el endpoint de envío. Sanitización de inputs. Logging de IP para auditoría de fraude.
ExportaciónEndpoint GET /api/ds/{id}/pdf para generar PDF de la declaración firmada (para expediente digital).

Integraciones Requeridas

CRM MVOLeer datos de póliza/expediente para pre-llenar campos
Sistema TPAEscribir resultado del semáforo en el expediente de la mascota
WhatsApp APIEnviar link de DS al tutor con número de póliza pre-cargado
EmailConfirmación al tutor + alerta interna al equipo en riesgo ROJO/CRÍTICO