Control de asistencia

Cómo hacer un control de asistencia con código QR

Te explicamos paso a paso cómo hacer un control de asistencia con código QR. Mira cómo automatizar tu chequeo de entradas y salidas.

consultor

¿Necesitas ayuda?

Isabel García

HR Consultant

control asistencia codigo qr

11 de julio, 2023

Existen muchas maneras de pasar lista de asistencia en una empresa. Y hoy aprenderemos a generar un control de asistencia con código QR.

Las formas más prácticas son aquellas que permiten que sean las mismas personas quienes registren su asistencia, en un sistema de modo automático. 

Para esto sirven mucho los sistemas de RR. HH. que gestionan el control horario, las vacaciones, las incidencias en nómina, etc.

Cómo hacer un control de asistencia con código QR y Google Sheets

Aunque el control de asistencia con código QR es un procedimiento un poco rudimentario en los tiempos actuales, sigue siendo útil en:

  • Escuelas
  • Algunas universidades
  • Pequeñas empresas.

Y es que generando el código QR para control de asistencia, sólo pediremos a las personas que lo escaneen, entonces no tendrán que validar o escribir nada.

Para lograr nuestro cometido, emplearemos herramientas de fácil acceso como Google Sheets. Con ello tendremos un sistema que nos permita tener el registro de asistencia.

Generar un control de asistencia con código QR te ayudará a automatizar tu pase de lista para tu centro de trabajo. Veamos paso a paso cómo puedes construir tu sistema.

1. Preparar tu hoja de cálculo

Lo primero que tenemos que hacer es preparar nuestra hoja de cálculo con las columnas necesarias. Para este sistema que te queremos mostrar ocuparemos dos hojas. 

En la primera, que llamaremos «Códigos», pondremos la información de cada persona. Algunos datos a capturar por columna pueden ser el número de empleado, el nombre de la persona, el puesto, zona de trabajo, etc. Por eso, ten actualizada tu base de datos de Recursos Humanos.

También, incluiremos cuatro columnas más que llamaremos: parámetros, URL doGet, URL QR y QR.

La segunda hoja la llamaremos «Asistencia». En esta hoja se registrará la información de cada persona, asociada a una hora y fecha en la que realizará su registro de asistencia. Esta es la hoja que se llenará de modo automático cada vez que alguien registre su asistencia escaneando el código QR.

2. Diseñar los parámetros para el control de asistencia con código QR

En nuestra hoja «Códigos» comentamos que después de las columnas con la información de la persona vendrían cuatro columnas más. La primera de ellas la llamamos «Parámetros».

La columna Parámetros va a contener la información que queremos codificar de cada columna, con información de las personas. El formato que se debe emplear es el siguiente:

?parametro1=valor1&parametro2=valor2

Cada columna es un parámetro y cada valor es la información que introducimos en la celda para cada persona. El formato es porque tenemos que crear la URL con la información de cada persona. Dicha información será codificada en nuestro QR.

Recuerda que tienes que incluir el mismo número de parámetros para cada columna de datos que definas. Por eso, lo ideal es incorporar sólo la información básica que te sirva para identificar a cada persona que se registre.

Un ejemplo de lo que pondríamos en una celda es el siguiente:

=»?id=»&A2&»&nombre=»&B2&puesto=»&C2

Esta fórmula incluye tres parámetros que son los títulos de mis tres columnas con los datos que voy a incorporar: número o ID del empleado, su nombre y su puesto.

3. Crear una web app

Una funcionalidad que nos ayudará a crear nuestro control de asistencia con código QR son las web app. Para usarla necesitamos una URL que reciba los datos y la función doGet en código de Apps Script con la que se procesará la información.

Para ello, iremos al menú Extensiones – Apps Script de Google Sheets. Nos abrirá una página de código, donde reemplazaremos el código existente por este:

function doGet(e) {

 // Cambia aquí tu idioma-país y zona horaria

 const fecha = new Date().toLocaleString("es-MX", {timeZone:"America/Mexico_City"});

 // Registramos la asistencia usando el puesto y los parámetros que vienen en la URL

 registrarAsistencia(e.parameter.puesto, e.parameter.id, e.parameter.nombre);

 // Damos retroalimentación sobre lo que sucedió:

 return HtmlService.createHtmlOutput(`

 Asistencia registrada correctamente. <br><br>

 Puesto que registró: ${e.parameter.puesto}<br>

 Fecha: ${fecha}<br>

 ID: ${e.parameter.id}<br>

 Nombre: ${e.parameter.nombre}`);

 }

 function registrarAsistencia(puesto, id, nombre) {

 // Debes cambiar este identificador por el de tu documento de hoja de cálculo

 const sheet = SpreadsheetApp.openById("1G-prWyWzgjf9IFtKPryxlMXn0XfOieEhK3P3Sgto");

 const asistencia = sheet.getSheetByName("Asistencia");

 const lastRow = asistencia.getLastRow() + 1; asistencia.getRange(lastRow, 1).setValue(puesto); asistencia.getRange(lastRow, 2).setValue(id); asistencia.getRange(lastRow, 3).setValue(nombre); asistencia.getRange(lastRow, 4).setValue(new Date());

 }

Como podrás notar, hay dos funciones en este código que es doGet y registrarAsistencia. La primer función recibirá un objeto que contiene los parámetros que vendrán en el código QR. También se define el formato de la zona horaria.

También en la función doGet generamos un código HTML para dar retroalimentación sobre lo que sucedió. Es decir, le diremos al usuario si se registró o no de manera correcta su asistencia. 

La segunda función recibe dichos parámetros para crear un registro nuevo en la hoja de cálculo. Lo que se le indica es que abra tu documento y después que vaya a la última celda vacía y en ella escriba los datos en las columnas correspondientes.

4. Publicar la web app

Para que se pueda ejecutar este código es necesario publicar nuestra web app. Primero guardamos nuestro código y nos vamos al menú Implementar – Nueva implementación. Y seleccionamos el tipo de implementación como «Aplicación web».

Deberás darle un nombre que sólo es para control interno. En el apartado de «Quién tiene acceso» puedes seleccionar la opción «cualquier usuario». Con ello lograrás que cualquier persona se pueda registrar con cualquier celular.

Por último, damos click al botón «Implementar». Nos va a pedir que autoricemos el acceso a los datos de la hoja de cálculo en nuestra cuenta. Cuando damos el acceso, tendremos una URL de la web app o aplicación web que acabamos de crear. Y copiaremos el dato.

5. Construir la URL de doGet

La segunda columna adicional que debemos tener en nuestra hoja «Códigos» es la que llamamos «URL doGet». En ella vamos a concatenar la URL de nuestra web app que acabamos de copiar con la columna de los parámetros.

La siguiente es una URL como ejemplo de cómo quedaría tu celda:

=»https://script.google.com/macros/s/AKfycbxILqA6gKs9xkqwxkdbOAi21Y2BnoC7LLxuxmImo-bE-yVbzPqJ0ojyA9SvOfp58HwjJALtSg/exec»&D2

Después jalas esta fórmula para todas las celdas hacia abajo. Cada una de estas URLs responde a una petición para registrar en la hoja de Asistencia los parámetros del trabajador con la fecha y hora de registro.

Puedes probar tu URL copiando y pegándola en tu navegador. Podrás ver que habrá ejecutado de manera correcta nuestro código y nos dará la retroalimentación correspondiente.

6. Crear los códigos QR para la asistencia

Cuando hemos generado nuestra URL de doGet, estaremos en posibilidad de generar la URL para el código QR de control de asistencia. Para ello podemos emplear la API oficial de Google o podemos emplear otros servicios que permiten más tipos de códigos.

Si quieres usar cualquier plataforma externa a Google, puedes tomar el dato capturado en la columna URL doGet y llevarla a dicha aplicación. Pegando esta URL te podrá generar tu código QR. Tendrás que hacer un código QR para cada trabajador.

Para hacer nuestro código QR en la misma hoja de Google Sheets necesitamos encapsular la información de la URL doGet. Para ello empleamos la fórmula ENCODEURL. Esto nos ayuda a no tener problemas si tenemos caracteres especiales como acentos, eñes, etc.

La tercera columna titulada «URL QR» quedaría de la siguiente manera:

=»https://chart.googleapis.com/chart?chs=500×500&cht=qr&chl=»&ENCODEURL(E2)

Por último, en la columna cuatro, titulada «QR» usamos la fórmula IMAGE para mostrar el código en pantalla. La fórmula quedaría así:

=IMAGE(E2)

Cómo llevar el control de asistencia con código QR

Una vez que tienes lista tu web app y tus hojas de cálculo con tus códigos QR, podrás implementar tu control. Estos códigos los debes imprimir o presentarlos de forma digital en la entrada de tu centro de trabajo.

Las personas deberán escanear el suyo con cualquier celular. Cada vez que sea escaneado, se creará un nuevo registro en la hoja de asistencia.

También puedes llegar a generar dos códigos para cada persona: uno indicando entrada y otro para las salidas.

Con la hoja de cálculo de «asistencias» puedes formular para llevar el conteo de las horas laboradas. Así podrás conocer si la persona está cumpliendo con su jornada laboral o incluso si ha laborado horas extra.

Otra opción: tomar lista de asistencia con Google Meet (teletrabajo)

Existen otras formas adicionales a llevar el control de asistencia con código QR. Por ejemplo, para el caso de personas que laboran en formato de teletrabajo, se puede emplear la herramienta de Google Meet.

Google Meet es la aplicación que tiene Google para realizar conferencias y reuniones a distancia. Cuando esto sucede, se puede tomar lista de asistencia de manera fácil y rápida.

Para pasar lista con Google Meet deberás seguir los pasos siguientes:

  1. Abrir la lista de todos los asistentes.
  2. Hacer click en el botón que está al lado de personas (paloma verde). Con ello estarás marcando la lista a los asistentes.
  3. Abrir la extensión desde el icono de asistencia (paloma verde) en el navegador.
  4. Verificar que aparezcan todos los asistentes y luego dar click en el botón para descargar.

La mejor opción: usar una app para contar horas y asistencia de los empleados

Al principio de esta publicación te mencionamos que llevar el control de asistencia con código QR es ya un sistema rudimentario.

En contraste, en la actualidad existen aplicaciones que te permiten llevar un registro integral de la asistencia de tus colaboradores.

Estas aplicaciones funcionan con un reloj checador integrado. Tal funcionalidad permite identificar a cada persona de manera única. Esto evita que otras personas realicen el pase de lista del compañero.

Estas aplicaciones te permiten calcular de manera automática las horas trabajadas por cada persona. Con ello puedes generar reportes para mejorar la toma de decisiones de los responsables de cada proceso.

Sesame HR: una gran app para vigilar la asistencia

Para darte más detalles te hablaremos de una excelente app para realizar el control de la asistencia y llevar el conteo de horas trabajadas. Se trata de nuestra plataforma de recursos humanos Sesame HR, una aplicación que integra múltiples funciones de Recursos Humanos.

Con Sesame HR podrás tener un control completo de la asistencia y puntualidad de tu personal. 

Reloj checador

De inicio, tus trabajadores podrán checar sus entradas y salidas desde cualquier dispositivo digital. Esto te permite que incluso las personas en modalidades de teletrabajo puedan realizar su registro.

Con su función de geolocalización también identificarás el lugar desde donde se hizo el registro.

La identificación de cada uno se puede hacer a través de sistemas biométricos. Estos sistemas identifican a cada persona de manera única y sin posibilidad de suplantación. Algunos que permite Sesame HR son la lectura de la huella digital, lectura facial o códigos digitales.

Código QR con Sesame HR

Si deseas que cada empleado haga el registro de entrada con un código QR, Sesame HR te lo facilita. Te explicamos cómo:

Antes que nada, habilitamos una tablet para registro de entrada a la empresa. Entonces, los empleados solo necesitarán su celular al llegar.

Primero, deben tener instalada la APP de Sesame HR. A continuación, abren la APP y con un solo click, habilitan la lectura de código QR.

Por último, solo tienen que pasar su teléfono por encima de la tablet y listo. ¡Así de fácil y rápido!

Ah, también es importante anotar que la tablet, con Sesame HR, estará habilitada para Android e iOS. Full compatibilidad para tu empresa y tus trabajadores.

Control de asistencia

La aplicación cuenta con tableros de control que te permite ver por área o por puesto la situación en tiempo real de cada trabajador. Con ello puedes saber quiénes se encuentran activos en el trabajo.

Los datos se van almacenando en una base de datos centralizada. Esta información se guarda y encripta para garantizar la seguridad de la misma.

Se pueden generar perfiles de acceso para que sólo los involucrados puedan tener acceso a dichos datos.

De modo automático, Sesame HR lleva el conteo de las horas trabajadas. Esto te permite trabajar bajo formatos de flexibilidad de horarios.

También, te ayuda a llevar un registro de las ausencias injustificadas y retardos. Combinado con el control de vacaciones y permisos tendrás un panorama completo de tu plantilla.

Alertas, control y mucho más…

Se pueden configurar alertas para que, en tiempo real, los responsables se enteren de las incidencias que se presentan en la asistencia. Esto permitirá que se tomen medidas anticipadas para no caer en problemas de impuntualidad laboral.

Por si fuera poco, también te ayuda en el control de las horas extra. Podrás contar con un tablero para llevar el registro de las personas que requieren del pago de sus horas y así controlar gastos elevados por este concepto.

Se pueden generar y personalizar reportes con esta información. Estos reportes pueden exportarse en diferentes formatos para cruzar la información con otros datos.

Como podrás notar, Sesame HR es una aplicación más robusta que llevar el control de asistencia con código QR. Te invitamos a explorar esta aplicación, todo un apoyo para tu equipo de RR. HH. Puedes solicitar una demo gratuita y comprobar por ti mismo los beneficios en tu control y gestión del talento humano.


La forma más completa de supervisar y registrar el control horario en tu compañía