
Cómo controlar las horas del personal sin enviar ni un byte a la nube
- FaceClock Team
- Guides
- 15 de abril de 2026
Índice
Hay una suposición silenciosa detrás de casi todos los productos de control horario del mercado: que el fichaje de un empleado es un dato que hay que subir a algún sitio. Normalmente a la nube del proveedor. A veces replicado en tres regiones «por redundancia». A menudo conservado indefinidamente bajo una cláusula vaga de «el tiempo necesario para prestar el servicio».
Esa suposición no siempre es errónea. Pero para muchos negocios pequeños (una clínica dental, una imprenta, un teatro de barrio, una microcervecería) es exagerada en el mejor de los casos y un problema de verdad en el peor. Así que esta es una guía de la alternativa: cómo montar un control horario que no saque nada del dispositivo.
Primero la parte medio legal y aburrida, luego el montaje práctico y después las trampas.
¿Por qué evitar la nube?
Tres razones que me da la gente, más o menos en este orden.
Cumplimiento. Si manejas datos biométricos (y una cara lo es según casi todas las leyes modernas), enviarlos a un tercero te llena de obligaciones como responsable del tratamiento. La forma más sencilla de evitarlas es que los datos no salgan del dispositivo. Con el artículo 9 del RGPD, la BIPA, la CUBI de Texas o la cláusula biométrica de la CCPA, «nunca lo transmitimos» es una respuesta legítima y fácil de entender.
Coste. El control horario en SaaS suele costar entre 3 y 8 dólares por usuario al mes. Para un equipo de 15 personas son entre 540 y 1.440 dólares al año, indefinidamente. Las cuentas cambian a partir de unas 30 personas, pero para la mayoría de negocios pequeños la pregunta es: «¿por qué pago una cuota a alguien por el privilegio de anotar cuándo llegó mi gente?».
Confianza. El personal no siempre sabe qué pensar cuando le piden subir su cara al servidor de un proveedor. Algunos han oído hablar de las demandas de Illinois. A otros simplemente no les gusta. Si quitas la subida, desaparece la conversación.
No necesitas las tres razones. Con una suele bastar.
Las piezas de un sistema sin nube
Un control horario completo sin conexión tiene cinco partes:
- Un dispositivo de fichaje: una tablet, un móvil o un quiosco
- Verificación de identidad: cara, huella, PIN, RFID o simplemente una lista de nombres
- Almacenamiento local: el sitio donde viven de verdad los registros
- Informes / exportación: normalmente CSV
- Un plan de copias de seguridad
De estas, la 5 es la que casi todos se saltan. Volveremos a ella.
El dispositivo de fichaje
En la mayoría de casos es una tablet Android colgada cerca de la entrada. La gama barata (una Samsung Tab A8 o una Lenovo Tab M9 reacondicionadas) cuesta entre 100 y 150 dólares y dura años. Déjala enchufada y olvídate de la batería.
Algunas cosas prácticas:
- Colócala entre la altura del pecho y la del hombro, no a la de los ojos. La gente la mira hacia abajo con más naturalidad.
- Que no le dé el sol directo a la pantalla en ningún momento del día.
- Compra un soporte firme. Los flojos se doblan cuando la gente toca la pantalla.
Verificación de identidad
Aquí toca decidir: ¿cómo se identifica la gente ante el reloj?
Códigos PIN. Lo más sencillo. Cada persona tiene un código de 4 cifras. Barato de montar. Se puede compartir, y ese es justo el problema: se llama «fichar por otro».
Huellas dactilares. Fiables cuando funcionan. Molestas con frío, con guantes, con cortes en las manos, en cocinas profesionales.
Tarjetas o llaveros RFID. Muy buena opción si tu equipo ya lleva acreditación. El fallo típico son las tarjetas perdidas.
Reconocimiento facial. Sin manos, rápido e imposible de compartir, pero son datos biométricos, con todo el peso normativo que eso implica. Bien hecho (solo en el dispositivo), esquiva ese peso sin perder la comodidad.
No soy imparcial, pero el reconocimiento facial en local es la mejor opción por defecto para la mayoría de equipos. Las complicaciones legales que la gente imagina suelen evaporarse cuando puedes demostrar que ningún dato biométrico sale del dispositivo.
Almacenamiento local
Si usas un móvil o una tablet, esto es simplemente un archivo SQLite en el directorio privado de la app, más una carpeta de imágenes para las fotos de los fichajes. La base de datos entera de un equipo de 15 personas tras seis meses ocupa quizá 30-60 MB. No es un problema de escala.
Lo que hay que comprobar: ¿la app guarda los fichajes en disco en el acto, o los guarda en memoria y los escribe después? Guardarlos en memoria es lo que te hunde cuando el dispositivo se cuelga o alguien lo desenchufa. Una app bien diseñada escribe en disco antes de mostrar el «has fichado».
Informes
Para el 95 % de los negocios pequeños, lo que necesitas es un CSV. Cada fila es un turno, con columnas para el nombre, la hora de entrada, la de salida, la duración y notas opcionales. Dejas el CSV en una carpeta compartida. La gestoría lo abre el lunes por la mañana. Listo.
Cualquier cosa más sofisticada que un CSV suele significar integrarse con un sistema de nóminas, y entonces tienes entre manos un proyecto de ingeniería de verdad y el enfoque en el dispositivo probablemente no es el adecuado. Volveremos a eso.
Copias de seguridad
Esta es la parte que se salta todo el mundo. La regla es: si tus registros solo existen en la tablet de la pared, tus registros no existen. Las tablets se rompen. El personal de limpieza las desenchufa. A veces simplemente mueren un martes por la mañana.
Tres formas razonables de hacer copias:
- Exportación CSV semanal a una unidad compartida. Lo más sencillo. Alguien exporta cada viernes y comparte el archivo en una carpeta que ve la gestoría. Si la tablet muere, pierdes como mucho una semana.
- Exportación diaria en sitios con más movimiento. Los mismos dos toques, al cerrar. Merece la pena a partir de 20 personas, cuando perder una semana supondría una reconstrucción dolorosa.
- Un PDF mensual además. La exportación en PDF incluye las fotos de entrada y salida, así que sirve como prueba si surge un turno discutido cuando la ventana de 90 días ya lo ha borrado del dispositivo.
En FaceClock todo esto es manual a propósito: la app no tiene permiso de red, así que no puede enviar archivos a ningún sitio por su cuenta. La exportación pasa por el menú de compartir de Android y tú eliges dónde acaba. El CSV contiene nombres, horas y duraciones: ni caras ni vectores.
Nota: hacer copia de los datos agregados de turnos (CSV) está bien. Hacer copia de los vectores biométricos en general no: eso tira por tierra la idea de mantenerlos en local.
Un ejemplo real, en breve
Este es el montaje que funciona en una clínica dental de 9 personas que ayudé a montar la primavera pasada:
- Samsung Tab A8 en el pasillo de entrada del personal
- FaceClock instalado; nadie se dio de alta por adelantado: cada persona se registró en su primer fichaje un lunes por la mañana, nombre y una foto
- Turno máximo de 12 horas; la clínica casi nunca llega a tanto, pero cubre el caso de alguien que ficha para una urgencia un sábado y olvida fichar la salida
- Limpieza automática de turnos antiguos a los 90 días (la predeterminada)
- Una exportación CSV cada viernes desde la pantalla de turnos, compartida directamente en una carpeta de Google Drive que ve la gestoría. Es manual (dos toques) y está en la lista de tareas del viernes de la responsable de oficina
- Una hoja impresa junto a la tablet con instrucciones de emergencia por si algo raro pasa: nombre, hora e iniciales a mano. No se ha usado en 11 meses.
Coste total: unos 130 dólares de tablet, una tarde de domingo de montaje y cero cuotas.
Calcular horas extra cuando solo tienes CSV
Aquí es donde la gente a veces se agobia: «¿pero cómo calculo las horas extra sin un panel de administración?». La respuesta, algo aburrida, es que se hace en la hoja de cálculo, igual que hace diez años. Una fórmula típica:
weekly_hours = SUMIF(employee_id, [name], duration_hours)
overtime_hours = MAX(0, weekly_hours - 40)
Para las normas de horas extra de la mayoría de países, no necesitas más. Las complicaciones llegan cuando las horas extra se calculan por día (algunas provincias de Canadá, algunos países de la UE con convenio colectivo), pero esas reglas van en la hoja de cálculo, no en la app de fichaje. El trabajo de la app es darte un registro de turnos limpio. El cálculo es cosa de nóminas.
Cuándo se viene abajo
Quiero ser honesto con la escala.
Varios locales. Si tienes tres cafeterías y quieres que la oficina central vea los turnos en tiempo real, un quiosco sin conexión por local no es la forma adecuada. Acabarás enviando CSV por correo y deseando haber pagado el SaaS multilocal. El punto de equilibrio está en torno a los tres locales.
Automatización de nóminas en tiempo real. Si tu sistema de turnos necesita saber, ahora mismo, que alguien ha llegado tarde, una app sin conexión no se lo puede decir. Harían falta conexiones por API. La mayoría de apps sin conexión no las ofrecen, por diseño.
Más de unas 50 personas por dispositivo. El reconocimiento facial se vuelve más lento a medida que crece el grupo registrado. 50 personas van bien en hardware moderno. 200 no, en tablets baratas.
Relevos entre varios turnos en operaciones 24/7. Hospitales, fábricas, cualquier sitio con tres turnos al día. Es posible, pero el trabajo de corrección (salidas olvidadas, cambios) crece mucho y vas a querer la visibilidad centralizada de la nube.
Si te sales de esos límites, probablemente la nube es lo tuyo. Si estás dentro (y la mayoría de negocios pequeños lo están), el enfoque sin conexión ahorra dinero, esquiva las complicaciones de los datos biométricos y produce registros que no dependen de que el servidor de otro siga funcionando.
Una última idea
En la era del SaaS, lo normal es dar por hecho que cualquier dato de negocio debe vivir en la nube de alguien. Para muchas categorías es correcto. Pero los registros horarios son curiosamente buenos candidatos para no estar en la nube: son datos personales, están sujetos a plazos de conservación, son poco voluminosos y apenas ganan nada por centralizarse en un negocio de un solo local.
A veces la respuesta de toda la vida también es la moderna. Un dispositivo junto a la puerta. Un CSV al final de la semana. Registros que existen justo donde puedes verlos.
Eso es casi todo lo que necesita de verdad el control horario de un equipo pequeño.
