← Volver al manual

Guía técnica · Módulo opcional

🕐 Control de Fichajes

Cumple con el RD-ley 8/2019 sin papeleo ni hardware extra. Cada trabajador ficha desde su móvil escaneando un QR, o desde el propio CRM.

Contenido

  • 1. Qué es y por qué tu clínica lo necesita
  • 2. Cómo se ficha — tres modos disponibles
  • 3. Configuración paso a paso para el admin
  • 4. Operativa diaria del trabajador
  • 5. Lo que ve el admin: equipo, informes, anomalías
  • 6. Cumplimiento legal: SHA-256, conservación 4 años
  • 7. Preguntas frecuentes

1. Qué es y por qué tu clínica lo necesita

El RD-ley 8/2019 obliga a TODA empresa española con asalariados a llevar un registro horario diario, conservarlo 4 años y tenerlo disponible para inspección. Sin papeles sueltos, sin Excel a mano, sin "ya me lo apuntaré luego".

Lo que exige la ley (resumen)

  • Registro diario de hora de entrada y salida de cada trabajador.
  • Acceso para el trabajador, sus representantes, y la Inspección de Trabajo.
  • Conservación durante 4 años.
  • Mecanismo "objetivo, fiable y accesible".

Multas por incumplimiento: de 626 € (leve) a 7.500 € (grave). No es una broma — la Inspección hace controles aleatorios y por denuncia.

El módulo cubre los 4 requisitos. Activarlo desde /suscripcion ya te pone en regla.

2. Cómo se ficha

Hay tres modos disponibles, combinables. Cada clínica usa el que mejor le encaja.

💻

A) Desde el CRM (ordenador)

El usuario logueado en el CRM ve un icono de cronómetro en la barra superior. Clic → /fichajes → botón gigante "Fichar entrada" o "Fichar salida". Útil para recepción o admin que siempre está delante del PC.

Ventaja: sin móvil. Pega: cada trabajador necesita su propia sesión.

📱

B) Desde el móvil con QR (recomendado)

Recepción muestra un QR en pantalla (icono QR en la barra superior → ventana). El trabajador lo escanea con la cámara de su móvil. La primera vez elige su nombre, mete PIN 0000 y el sistema le obliga a definir uno propio de 4 dígitos. La cookie del móvil lo recuerda 1 año. Las siguientes veces: escanear y pulsar botón.

Ventaja: cada empleado en su móvil, sin colas en recepción.

✍️

C) Manual (admin)

Si alguien olvida fichar (móvil descargado, urgencia…), el admin lo registra a mano desde /fichajes con motivo obligatorio. En el historial queda marcado con una etiqueta azul "manual".

Para corregir olvidos, no para uso diario.

3. Configuración paso a paso

Lo que el administrador de la clínica configura una sola vez al activar el módulo.

  1. 1

    Contratar en /suscripcion

    En la matriz, elige una celda «CRM + Fichaje» del plan que prefieras. Stripe cobra el delta del módulo. Al volver: módulo activo, item "Fichajes" en el menú lateral, icono QR en la barra superior.

  2. 2

    Configurar auto-cierre

    En /configuracion?tab=fichaje pon el máximo de horas que una jornada puede estar abierta antes del cierre automático diario:

    • 12h para clínicas de turno único (default).
    • 25h para clínicas con guardias 24h.
    • Vacío si prefieres gestionarlo a mano.
  3. 3

    Ajuste por usuario (opcional)

    Si en la misma clínica hay personas con jornadas distintas (recepción 8h + médico de guardia 24h), en cada usuario en /usuarios/{id}/editar hay un campo "Máximo horas por jornada (ajuste individual)".

  4. 4

    Geolocalización (opt-in, RGPD)

    Activable en la pestaña Fichaje. Si encendido, el móvil del trabajador pide permiso al fichar; sin permiso no se ficha. Si apagado, se guarda solo si el navegador la concede automáticamente. Útil para clínicas multi-sede; con sede única se puede dejar OFF.

  5. 5

    Mostrar el QR en recepción

    Icono QR en la barra superior → ventana. O directamente /fichajes/qr para verlo a tamaño completo e imprimirlo. La URL es estable: una vez impreso sirve para siempre (salvo que el admin lo regenere con el botón "🔄 Regenerar").

  6. 6

    Iconos en la barra superior por usuario

    En cada usuario hay una casilla «Mostrar icono QR en su barra superior». Por defecto ON para admin y recepcionista, OFF para doctor/higienista/coordinador/contable. Cada empleado puede tener configuración distinta.

4. Operativa diaria del trabajador

Lo que cada trabajador hace, sin esfuerzo, día a día.

PRIMERA VEZ VECES SIGUIENTES ───────────── ──────────────── 1. Escanea QR con la cámara → 1. Escanea QR 2. Selecciona su nombre 2. ⚡ Ya identificado por cookie 3. Mete PIN 0000 3. Pulsa "Entrada" / "Pausa" / "Salida" 4. Define PIN propio (2 veces) 4. Listo 5. Pulsa "Fichar entrada" 6. Listo

La cookie del móvil dura 1 año. Si el trabajador cambia de móvil o limpia cookies, simplemente vuelve a escanear el QR y se identifica de nuevo con su PIN.

Pausas (comer, fumar, etc.)

Cuando el trabajador hace una pausa pulsa "☕ Iniciar pausa". El cronómetro entra en modo amarillo. Al volver, pulsa "▶ Reanudar". Los minutos de pausa se descuentan automáticamente del tiempo total trabajado.

Recordatorios automáticos

Si un trabajador se va sin fichar salida, el proceso automático diario (20:00) le envía:

Si aun así no la ficha, el sistema cierra la jornada automáticamente al cabo del límite configurado (12h por defecto) y la marca con una etiqueta roja "⚠ auto-cierre" para revisión del admin.

5. Lo que ve el admin

5.1 Vista del equipo (/fichajes/equipo)

Tabla con todos los fichajes del equipo. Filtros por rango de fechas, por empleado y por tipo (auto-cierre / manual). Totales agregados por persona en el rango.

Badges visibles:

5.2 Exportar CSV (Inspección de Trabajo)

Botón verde "📥 Exportar CSV". Genera un fichero con BOM UTF-8 (abre directo en Excel) con todos los fichajes del rango filtrado. Es el formato estándar que pide Inspección.

5.3 Informes mensuales firmados

Botón "📋 Informes mensuales" arriba a la derecha. Lleva a un repositorio histórico donde cada mes aparece como una fila descargable. Cada informe incluye:

El proceso automático genera el informe del mes anterior el día 2 de cada mes. El admin puede regenerar manualmente si hay correcciones (crea revisión #2, #3…).

5.4 Notificaciones de anomalías

Cada día el sistema analiza los fichajes del día anterior y notifica al admin si detecta:

Una sola notificación por día al admin, con lista resumida. Clic → lleva a la vista del equipo filtrada por ese día.

6. Cumplimiento legal

Conservación 4 años

Los fichajes individuales se guardan indefinidamente en la BD. Los informes mensuales firmados se guardan en disco (fuera del webroot, no accesibles por URL pública). La política de retención del CRM borra automáticamente los datos personales tras los 4 años exigidos legalmente, no antes.

Sellado con SHA-256

Cada informe mensual lleva una huella SHA-256 calculada sobre los datos canónicos de los fichajes del mes (orden estable de filas → mismo hash siempre).

Si en el futuro alguien edita un fichaje incluido en un informe ya generado, basta recalcular el hash sobre la BD actual y comparar con el guardado: si difiere, fue manipulado. Trazabilidad técnica sin necesidad de firma digital.

Auditoría completa

Cada acción queda en activity_log:

Visible para el admin en /configuracion?tab=auditoria.

RGPD

La geolocalización es opt-in a nivel de clínica + requiere consentimiento explícito del trabajador en su navegador (estándar web). Si está desactivada nunca se pide. Los datos personales del trabajador (nombre, email) se manejan según la política de privacidad general del CRM.

7. Preguntas frecuentes

¿Y si un trabajador no tiene móvil?

Puede fichar desde el CRM si tiene usuario logueado, o pedirle al admin que registre el fichaje manualmente con motivo. No es la operativa ideal pero cubre casos puntuales.

¿Qué pasa si olvida su PIN?

El admin va a /usuarios/{id}/editar y marca "Resetear PIN a 0000". En su próximo fichaje desde móvil, el sistema obliga al trabajador a definir un PIN nuevo. Sin emails ni llamadas a soporte.

¿Y si pierdo el QR / alguien lo copia?

El QR contiene una URL con un token aleatorio de 32 caracteres. Si se filtra, el admin va a /fichajes/qr y pulsa "🔄 Regenerar". El antiguo deja de funcionar inmediatamente y los móviles ya identificados tendrán que volver a escanear el QR nuevo.

Aun teniendo el QR, sin PIN no se ficha. La seguridad real está en el PIN.

¿Sirve para una inspección de trabajo?

Sí. Para la mayoría de inspecciones basta con el CSV de /fichajes/equipo filtrado por el periodo pedido. Si el inspector quiere algo más sólido, descarga el informe mensual firmado con SHA-256 desde /fichajes/equipo/informes.

¿Qué pasa al cancelar la suscripción CRM?

El módulo Fichaje queda desactivado automáticamente (los addons no tienen sentido sin el producto principal). Los datos quedan archivados en BD y accesibles si se reactiva la suscripción, hasta los 4 años legales.

¿Funciona si no hay internet en recepción?

Para fichar desde el CRM hace falta internet. Pero para fichar con QR desde el móvil del trabajador, basta con que su móvil tenga 4G/wifi — no depende del wifi de la clínica.

¿Puedo usarlo con personal de varias sedes?

Sí. Cada sede tiene su propio QR y su propio módulo. Si activas la geolocalización, en el informe puedes ver desde qué punto físico fichó cada trabajador (indicador 📍 que abre Google Maps).

¿Listo para cumplir el RD-ley 8/2019?

Activa el módulo desde Planes y servicios. Stripe cobra el delta del módulo y tu clínica queda en regla.