Integracion con Automatizacion
El modulo de firmas se integra con automatizacion para crear flujos eficientes.
Eventos Disponibles
SIGNATURE_REQUEST_COMPLETED
Evento emitido cuando:
- Ambas partes firmaron el documento
- Constancia NOM-151 obtenida
- Proceso de firma completado exitosamente
Datos del evento:
- requestId: ID de la solicitud
- documentTitle: Titulo del documento
- postulantId: ID del candidato
- postulantName: Nombre del candidato
- companyUserId: ID del firmante empresa
- ownerId: ID del propietario
- completedAt: Fecha de completado
- status: "completed"
Uso en Automatizacion
Configurar Automatizacion
- Trigger: Firma Completada
- Cuando: Documento firmado por ambas partes
- Accion:
- Enviar notificacion al equipo
- Mover candidato en proceso
- Crear tarea de seguimiento
- Actualizar CRM/sistema externo
Integracion con Onboarding
Items de Firma en Onboarding
En plantilla de onboarding:
Item tipo: signature_request
- Crea SignatureRequest automaticamente
- Vinculado al checklist item
- Estado sincronizado
Al inicializar onboarding:
- Sistema crea SignatureRequest
- Documento de plantilla asignado
- Candidato notificado
- Item aparece en checklist
Sincronizacion de Estado
| SignatureRequest | OnboardingChecklistItem |
|---|---|
| pending_company | pending |
| pending_postulant | pending |
| pending_constancia | in_progress |
| completed | completed |
| expired | pending (requiere accion) |
| cancelled | pending (requiere accion) |
Flujo Automatizado
- Onboarding inicializado
- Item de firma creado
- Empresa firma contrato
- Candidato notificado
- Candidato firma
- SignatureRequest: completed
- ChecklistItem: completed (auto)
- Progreso onboarding actualizado
- Si 100%: Onboarding completado
Crear Firma desde Automatizacion
Via Agente/Bot
El sistema puede crear firmas automaticamente:
ReclutadorAIService:
- Detecta necesidad de firma
- Selecciona documento apropiado
- Crea SignatureRequest
- Notifica al candidato
- Registra accion en conversacion
SignatureRequestService:
- Recibe parametros del agente
- Valida documento y candidato
- Crea la solicitud
- Trigger notificaciones
Desde Plantilla de Pasos
En configuracion de etapa:
Automatizacion de Firma
- [x] Crear solicitud de firma al entrar
- Documento a firmar: [Contrato Individual 2024.pdf]
- Fecha limite (dias desde hoy): [7]
Flujos de Automatizacion
Flujo de Contratacion
- Candidato acepta oferta verbal
- Reclutador marca "Contratado"
- Automatizacion: Crear solicitud de firma de contrato
- Empresa firma
- Candidato firma
- Evento: SIGNATURE_REQUEST_COMPLETED
- Automatizaciones:
- Iniciar onboarding
- Crear usuario en sistemas
- Notificar a RH
- Enviar kit de bienvenida
Flujo de Multiples Documentos
- Candidato contratado
- Crear solicitudes en secuencia:
-
- Contrato de Trabajo
-
- Acuerdo de Confidencialidad (NDA)
-
- Politicas de Empresa
-
- Candidato firma cada uno
- Al completar todos: Trigger: Todos firmados
- Continuar proceso
Flujo con Condiciones
Automatizacion condicional:
Si posicion = "Desarrollador":
- Incluir contrato TI
- Incluir NDA tecnico
- Incluir acuerdo de IP
Si posicion = "Ventas":
- Incluir contrato ventas
- Incluir acuerdo de comisiones
- Incluir politica de gastos
Base para todos:
- Contrato individual de trabajo
Notificaciones Automaticas
Al Crear Solicitud
Notificacion a empresa:
- "Solicitud de firma creada"
- Link para firmar
- Recordatorio de tiempo limite
Al Firmar Empresa
Notificacion a candidato:
- Email con link para firmar
- Notificacion en plataforma
- Recordatorio de tiempo limite
- Instrucciones de e.firma
Al Completar
Notificaciones automaticas:
- Email a ambas partes
- Adjunto: PDF firmado
- Adjunto: Evidencia XML
- Link de verificacion
- Evento para automatizaciones
Recordatorios
Configurar recordatorios:
- X dias antes de vencer
- Email al pendiente de firmar
- Notificacion en plataforma
- Puede ser recurrente
Webhooks y Eventos
Formato del Evento
// SIGNATURE_REQUEST_COMPLETED
{
type: "SIGNATURE_REQUEST_COMPLETED",
timestamp: "2024-01-18T14:45:45Z",
data: {
requestId: 123,
documentTitle: "Contrato Individual de Trabajo",
postulantId: 456,
postulantName: "Juan Perez",
companyUserId: 1,
ownerId: 1,
jobApplicationId: 789,
completedAt: "2024-01-18T14:45:45Z",
status: "completed",
constanciaStatus: "valid",
verificationUrl: "https://..."
}
}
Suscribirse a Eventos
Para recibir eventos:
- Configurar webhook en Automatizacion
- Usar EventBusService internamente
- Integrar con ActionHookExecutor
- O escuchar via WebSocket
Integracion con Procesos
En Etapa de Proceso
Etapa: "Firma de Contrato"
Configuracion:
- Al entrar: Crear solicitud de firma
- Bloquear hasta: Firma completada
- Al completar firma: Mover a siguiente etapa
Condiciones de Avance
Validar antes de mover:
- Solicitud de firma existe?
- Estado es "completed"?
- Constancia NOM-151 valida?
- Si no: Bloquear movimiento
API para Automatizacion
Crear Solicitud Programaticamente
// Desde servicio de automatizacion
await signatureRequestService.create({
documentId: 123, // ID del documento en repositorio
postulantUserId: 456, // Candidato a firmar
jobApplicationId: 789, // Aplicacion relacionada
title: "Contrato de Trabajo",
description: "Contrato individual",
expiresInDays: 7
});
Verificar Estado
// Verificar si firma esta completada
const request = await signatureRequestRepo.findOne({
where: { id: requestId }
});
if (request.status === 'completed') {
// Trigger siguiente accion
}
Casos de Uso Avanzados
Firma en Cadena
Secuencia de documentos:
- Documento A firmado -> Trigger: crear solicitud documento B
- Documento B firmado -> Trigger: crear solicitud documento C
- Documento C firmado -> Trigger: proceso completado
Firma Condicional
Logica:
- Si monto > $50,000: Requiere firma de director
- Si puesto es gerencial: Incluir clausula de no competencia
- Si es remoto: Incluir acuerdo de trabajo remoto
Recordatorios Escalonados
Configurar:
- 3 dias antes: Recordatorio amigable
- 1 dia antes: Recordatorio urgente
- Al vencer: Notificar a RH
- Post-vencimiento: Crear nueva solicitud
Mejores Practicas
Configurar Automatizaciones
Recomendaciones:
- Probar con documento de prueba primero
- Verificar que candidato tiene e.firma
- Tiempos razonables de expiracion
- Notificaciones claras
- Plan de contingencia si expira
Evitar Problemas
Cuidado con:
- Documentos incorrectos
- Tiempos muy cortos
- Candidatos sin e.firma
- Loops de notificaciones
- Firmas duplicadas del mismo doc
Monitoreo
Verificar regularmente:
- Firmas pendientes de empresa
- Firmas pendientes de postulante
- Solicitudes por vencer
- Errores de constancia
- Automatizaciones ejecutadas
Proximos Pasos
- Crear Solicitudes - Crear firmas manualmente
- Flujo de Firmas - Entender el proceso
- NOM-151 y Constancia - Cumplimiento legal