clinica-veterinaria/docs/04-fase-saas/MGN-018-webhooks/README.md
rckrdmrd c4620ca4e9 [DOCS] feat: Add phase 04-SAAS and 05-IA documentation structure
- Update docs/_MAP.md with new phase references
- Add docs/04-fase-saas/ phase structure
- Add docs/05-fase-ia/ phase structure

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-16 00:28:18 -06:00

178 lines
4.4 KiB
Markdown

# MGN-018: Webhooks Veterinarios
**Modulo:** MGN-018
**Nombre:** Webhooks Outbound para Clinicas Veterinarias
**Fase:** 04 - SaaS
**Estado:** Draft
**Ultima actualizacion:** 2026-01-13
---
## Descripcion
Sistema de webhooks outbound para notificar eventos veterinarios a sistemas externos. Permite a las clinicas registrar endpoints HTTP para recibir notificaciones automaticas cuando ocurren eventos como vacunaciones, citas, hospitalizaciones, etc.
---
## Funcionalidades Principales
1. **Registro de Endpoints** - CRUD de endpoints webhook por clinica
2. **Firma HMAC-SHA256** - Firma criptografica de payloads para verificacion
3. **Reintentos con Backoff** - Politica de reintentos exponencial (1min -> 6h)
4. **Dead Letter Queue** - Almacenamiento de entregas fallidas
5. **Delivery Logs** - Historial completo de entregas
---
## Eventos Veterinarios Disponibles
| Categoria | Eventos |
|-----------|---------|
| **Mascotas** | `mascota.registrada`, `mascota.actualizada`, `mascota.fallecida` |
| **Vacunacion** | `vacuna.aplicada`, `vacuna.proxima`, `vacuna.vencida` |
| **Desparasitacion** | `desparasitacion.aplicada`, `desparasitacion.proxima` |
| **Citas** | `cita.agendada`, `cita.confirmada`, `cita.cancelada`, `cita.completada` |
| **Hospitalizacion** | `hospitalizacion.ingreso`, `hospitalizacion.evolucion`, `hospitalizacion.alta` |
| **Laboratorio** | `laboratorio.muestra_recibida`, `laboratorio.resultados_listos` |
| **Cirugia** | `cirugia.programada`, `cirugia.iniciada`, `cirugia.completada` |
| **Facturacion** | `factura.emitida`, `factura.pagada` |
---
## Casos de Uso Veterinarios
### Integracion con SENASICA
- Notificar vacunacion de rabia para registro oficial
- Reportar brotes de enfermedades
- Trazabilidad de lotes de vacunas
### Integracion con Laboratorios
- Recibir resultados de analisis
- Actualizar expediente automaticamente
- Notificar al propietario
### Notificaciones a Propietarios
- Recordatorios de vacunacion via email/SMS
- Confirmacion de citas
- Alta de hospitalizacion
### Sincronizacion con CRM
- Actualizar datos de propietarios
- Historial de servicios
- Preferencias de comunicacion
---
## Payload de Ejemplo
### Evento: vacuna.aplicada
```json
{
"event": "vacuna.aplicada",
"timestamp": "2026-01-13T10:30:00Z",
"clinica_id": "vet-clinica-001",
"data": {
"mascota": {
"id": "pet-123",
"nombre": "Max",
"especie": "canino",
"raza": "Labrador"
},
"propietario": {
"id": "owner-456",
"nombre": "Juan Perez",
"telefono": "+5255123456"
},
"vacuna": {
"id": "vac-789",
"nombre": "Rabia",
"lote": "LOT-2026-001",
"fecha_aplicacion": "2026-01-13",
"fecha_proxima": "2027-01-13",
"veterinario": "Dr. Garcia"
}
}
}
```
### Evento: hospitalizacion.ingreso
```json
{
"event": "hospitalizacion.ingreso",
"timestamp": "2026-01-13T14:00:00Z",
"clinica_id": "vet-clinica-001",
"data": {
"mascota": {
"id": "pet-123",
"nombre": "Luna",
"especie": "felino"
},
"hospitalizacion": {
"id": "hosp-001",
"motivo": "Cirugia de esterilizacion",
"fecha_ingreso": "2026-01-13T14:00:00Z",
"veterinario_responsable": "Dra. Martinez",
"estado": "estable"
}
}
}
```
---
## Normativas y Cumplimiento
### SENASICA
- Eventos de vacunacion deben incluir lote y fabricante
- Trazabilidad de vacunas de rabia obligatoria
- Formato compatible con sistema de notificacion oficial
### Bienestar Animal
- Eventos de hospitalizacion incluyen estado del paciente
- Registro de condiciones de internamiento
- Trazabilidad de tratamientos
---
## Disponibilidad por Plan
| Plan | Webhooks | Eventos | Retenciones |
|------|----------|---------|-------------|
| Basico | No | - | - |
| Profesional | No | - | - |
| Clinica | Si | Todos | 30 dias |
| Hospital | Si | Todos | 90 dias |
---
## Dependencias
**Este modulo depende de:**
- MGN-001 Auth (autenticacion de administradores)
- MGN-004 Tenants (aislamiento por clinica)
- MGN-017 Plans (feature gating - solo Clinica/Hospital)
---
## Indices
- [Requerimientos](./requerimientos/INDICE-RF-WEBHOOKS.md)
- [Especificaciones](./especificaciones/INDICE-ET-WEBHOOKS.md)
- [Historias de Usuario](./historias-usuario/INDICE-US-WEBHOOKS.md)
- [Trazabilidad](./implementacion/TRACEABILITY.yml)
---
*Modulo: MGN-018-webhooks-vet*
*Propagado desde: erp-core/MGN-018-webhooks*
*Adaptado para: Dominio veterinario*
*Fecha: 2026-01-13*