La inteligencia artificial está viviendo una edad dorada debido a los LLM, el archiconocido ChatGPT y sus competidores, que suponen la verdadera primera killer app que llega al gran público, sin embargo, hay muchas más tecnologías dentro de la inteligencia artificial que nos ayudan a automatizar nuestros procesos de negocio.
En este articulo veremos cómo en IntNovAction hemos automatizado el tratamiento de los archivos de nóminas para realizarlo de forma mucho más rápida y segura. Para ello haremos uso del servicio de extracción de información de documentos Azure AI Document Intelligence (la evolución del antiguo Azure Form Recognizer) que permite extraer información estructurada de documentos, imágenes, textos manuscritos, etc.
Esta tecnología es útil para manejar documentos estandarizados generados automáticamente por entidades que no tienen métodos de comunicación entre sistemas más actuales como APIS o integraciones con sistemas como Zapier.
Al adoptar esta solución, hemos logrado no solo mejorar la eficiencia y reducir los errores, sino también allanar el camino hacia una mayor innovación y modernización en nuestros procesos internos.
El proceso previo era el siguiente:
- Recepción de Documentos: Recibíamos un único PDF de la gestoría conteniendo las nóminas de todos los empleados, con una página por cada nómina individual. El pdf está generado por su sistema de gestión por lo que tiene una estructura regular.
- Separación de nóminas individuales: El primer paso era segmentar este PDF en documentos individuales para cada empleado.
- Ingreso de Datos en ERP: Posteriormente, cada nómina tenía que ser procesada manualmente para ingresar los montos correspondientes en el sistema ERP, encargado de generar los registros de gasto de empresa en nuestro sistema de gestión, hay que identificar el empleado, el monto, la fecha de nómina, etc.
- Distribución de Nóminas y Transferencias Bancarias: El proceso culminaba con el envío individual de las nóminas por correo electrónico a cada empleado y la ejecución de las transferencias bancarias, que realizábamos mediante la generación de un archivo Norma34.
Este proceso, aunque funcionaba, resultaba pesado y susceptible a errores humanos en la transcripción de los datos. A fin de mejorarlo y automatizarlo, decidimos explorar las soluciones de inteligencia artificial, específicamente aquellas ofrecidas por Microsoft Azure.
Azure AI Document Intelligence para extraer información
Nuestra estrategia para mejorar el procesamiento de nóminas se centró en implementar una solución automatizada integrada en nuestro ERP, aprovechando las capacidades de la inteligencia artificial en Azure. El proceso se desarrolló en varias etapas clave:
Carga y Segmentación de Documentos
Inicialmente, el empleado sube el pdf conjunto al sistema. Este sistema separa automáticamente el pdf en páginas individuales, cada una correspondiente a la nómina de un empleado diferente, creando un "lote de trabajo" que comprende el proceso de todos esos documentos.
Análisis con Azure AI Document Intelligence
Cada PDF dentro del lote se procesa mediante una llamada al servicio web expuesto por Azure. En concreto usamos la funcionalidad de extracción de datos de los documentos.
El sistema, además de proporcionar modelos por defecto de extracción de documentos permite, de manera visual mediante Azure AI Document Intelligence Studio, crear nuestro propio modelo de forma que indiquemos de forma muy sencilla donde se encuentran los datos que nos interesan.
En este caso el procesamiento es sencillo, ya que las nóminas tienen una estructura común.
Como podemos ver, la definición del modelo: documento tipo a analizar, datos, campos, etc. Se realiza con un editor visual, sin necesidad de programación.
Desde la interfaz de Azure AI Document Intelligence Studio se puede definir los campos a obtener y realizar los tests sobre los datos de prueba de forma sencilla.
El sistema, además de la información en sí, nos proporciona el grado de confianza referente a la exactitud de cada valor obtenido, que usaremos después para habilitar medidas correctivas y de advertencia en el paso de validación manual. En nuestro caso, todas las lecturas tenían un valor de confianza por encima del 99%.
El servicio incluso devuelve metadatos para localizar la información en el documento, como las coordenadas del rectángulo del que se extrajo cada dato para que podamos señalar visualmente sobre nuestra previsualización el origen de cada dato extraído.
Interfaz de Validación
Posteriormente, se presenta al empleado una interfaz dividida: por un lado, una previsualización del PDF de la nómina y, por otro, un formulario ya relleno con los datos extraídos.
Esto permite una rápida verificación y confirmación de los datos por parte del empleado. Debido a la sensibilidad de los datos a tratar decidimos implementar un paso de validación manual para minimizar los errores.
En la pantalla de validación el operador ve simultáneamente el documento y los datos extraídos, para validarlo simplemente pulsa sobre siguiente y procesa el siguiente documento.
En la implementación actual, no mostramos el rectángulo desde el que se ha obtenido cada dato sobre la previsualización del documento, pero si tratáramos documentos más heterogéneos, se podría realizar fácilmente, ya que contamos con sus coordenadas.
En nuestro caso concreto, y dado que decidimos introducir un paso de validación manual, si el porcentaje de confianza es inferior al 96% el dato no aparecería relleno (obligando al operador a introducirlo manualmente), si se sitúa entre el 96% y 99% el dato aparecería marcado en amarillo y si fuera superior el dato aparecería sin un resaltado.
Generación de órdenes de transferencia y Distribución
Una vez confirmados los datos, el sistema genera automáticamente una orden de transferencia en nuestro ERP por el monto exacto. además, la nómina se almacena en el área privada de la intranet del empleado correspondiente y se le envía por correo electrónico.
Generación de Archivos para Transferencias Bancarias
Al finalizar el procesamiento de todas las nóminas, el encargado genera de forma automática un fichero Norma 34 que se sube manualmente al banco para su firma, iniciando la transferencia.
Conclusión
La IA en la nube nos permite reducir errores y agilizar nuestros procesos.
Este sistema ha supuesto una reducción significativa en el tiempo y esfuerzo dedicados a esta tarea, al tiempo que aumenta la precisión y reduce el potencial de errores en un proceso tan sensible como son las nóminas de una empresa.