Video: Gestor documental digital – Botón de firma

Si usted cuenta con el "Gestor documental de Sovos", en este video podrá aprender a activar y usar el "botón de firma" incluido en su solución.

Mantener el ritmo de la digitalización de los impuestos requiere una estrategia.

Sovos puede ayudar.

¡Reconéctate con Sovos!

Te invitamos a inscribirte o renovar tus datos aquí. Llena el formulario, marca el casillero de consentimiento y mantente al día con nuestro contenido de interés.

¡Mantengamos el contacto!

Recibe información relevante de Sovos que te ayudará a facilitar tus procesos administrativos y tributarios, y a mantenerte al día con cambios normativos locales y regionales.

En Sovos estamos 100% comprometidos con la privacidad. Tú eres el único dueño de tus datos, y es por eso que jamás te enviaremos contenido que no hayas aceptado recibir.

¡Reconéctate aquí!

¡Reconéctate con Sovos!

Llena el formulario al costado derecho, marca el casillero de consentimiento y podrás acceder a nuevos contenidos, eventos y novedades.

Te invitamos a conocer el nuevo landing page para clientes

Estamos iniciando una campaña para mejorar la comunicación con nuestros clientes, creando nuevos contenidos y canales para mantenerte al tanto de novedades, tendencias, soluciones, cambios regulatorios y mucho más.  

Para empezar, te invitamos a conocer el nuevo sitio para clientes, que cuenta con una selección dinámica de publicaciones como:

  • Guía para clientes
  • Nueva Ed. 8: Newsletter “The Tax Advisor”
  • Videos animados de productos
  • Programa de Referencias Sovos

¡Reconéctate aquí!

The Tax Advisor

Llena el formulario al costado derecho, marca el casillero de consentimiento y podrás acceder a nuestro último newsletter exclusivo para clientes.

Sovos Customer Newsletter

Estamos iniciando una campaña para mejorar la comunicación con nuestros clientes, creando nuevos contenidos de valor para tu negocio y nuevos canales para mantenerte al tanto de novedades, tendencias, soluciones, cambios regulatorios y mucho más.  

Te invitamos a conocer la nueva edición 8 – Newsletter The Tax Advisor, donde encontrarás una selección de publicaciones:

  • Colombia extiende el plazo para implementar documento soporte
  • Los servicios de un TAM
  • Servicios extendidos y eficiencia operacional
  • Biometría y verificación de identidad

Edición 08, mayo 2022

Conversemos de DevSecOps

En esta nueva sección de nuestro blog compartiremos la visión y experiencia de nuestro equipo de expertos en el ámbito del desarrollo de software y las tecnologías de información en general, quienes tocarán distintos temas relacionados con las tecnologías y metodologías utilizadas por Sovos para crear e implementar un mejor software, y entregarán tips y datos orientados a aportar valor a quienes deben trabajar en este ámbito, fundamental para las compañías que crean y utilizan soluciones para impulsar el negocio de sus clientes.


 

Pamela Ruiz, Senior QA Engineer

Utilización de Report Portal para monitoreo de pruebas funcionales

En la actualidad, cada vez poseemos más automatización en el área de pruebas funcionales, esto es, tests de API y End to End. Esto acelera el proceso de testing en regresiones y tiempo de user acceptance testing, entre otros, permitiéndonos avanzar en la implementación de CI/CD (continuous integration/continuous delivery).

Mientras mayor sea la automatización, menor será el tiempo de todo el proceso, por lo que se podrán entregar al cliente cambios de forma más rápida y segura.

La automatización genera algunos nuevos desafíos que necesitan un control; por ejemplo, pueden generarse falsos positivos, tests que fallan por inestabilidad, tests de mala calidad, etc. Por esta razón, es sumamente importante mantener un control sobre ellos.

La necesidad de mantener monitoreados los resultados de pruebas funcionales movió al equipo a realizar una investigación de herramientas disponibles.

Se encontró la herramienta de Report Portal y se llevó a cabo una prueba de concepto.
Lo primero que notamos fue su facilidad de instalación, al necesitar correr un único comando para instalar a través de Docker compose.

docker-compose -p reportportal up -d --force-recreate

Una vez ejecutado el comando, se chequean las imágenes de docker con el comando.

docker ps
01-docker-ps

En la imagen se observa la salida del comando docker ps.

 

Al levantar la aplicación de Report Portal por primera vez, y acceder a ella, nos encontramos con una pantalla de login:

02-report-portal

 

Y para acceder, utilizamos las credenciales temporales provistas por Report Portal.
Una vez ingresados al sistema podemos crear dashboards, diferentes proyectos, analizar las ejecuciones, etc.

Los dashboards son completamente configurables. En la siguiente imagen podemos ver un ejemplo:

03-dashboard-configurable

 

En este caso contamos con las estadísticas de todas las ejecuciones, dividiendo los tests en distintas posibles categorías.

Una de las propiedades más interesantes de esta herramienta es la posibilidad de ir aprendiendo en base a los análisis que realizamos (cuáles son fallos de productos, tests skippeados, fallos de ambiente, etc). Este aprendizaje está basado en inteligencia artificial.

Algunos de los problemas con los que nos enfrentamos al utilizar esta herramienta fueron los tipos de reportes soportados.

Report Portal soporta diferentes tipos de reportes, pero el de mejor visibilidad de datos fue JUnit. En nuestros tests automatizados generamos otros tipos de reportes, por lo que se realizaron scripts para adaptarlos al formato de JUnit aceptado por Report Portal:

 

04-report-portal-junit

Hay diferentes opciones de importación de datos hacia Report Portal, incluyendo la instalación de agentes, el envío de datos en tiempo real (durante la ejecución de tests), y otros.

Para evitar un aumento de tiempos en la ejecución de tests y la instalación de agentes, optamos por realizar la carga importando los reportes a través de la API de Report Portal. Desarrollamos un script para este propósito.

Lo primero es importar el archivo del reporte, ya adaptado a Junit, y comprimido en un archivo .zip:

05-junit-zip

Luego necesitábamos agregar información de la ejecución -como el número de build- y linkear al job de Jenkins ejecutado:

06-build-jenkins

Obtenemos el ID del archivo importado y agregamos la información que necesitamos incluir en los atributos y descripción del launch.

Cada nuevo reporte genera en Report Portal algo llamado launch, que es similar a una nueva ejecución. Para que la herramienta tome el historial de ejecuciones de cada test, el launch debe tener un mismo nombre. Si este se modifica, se crean nuevas versiones cada vez.

Por ejemplo, inicialmente importábamos los reportes con el número de build en su nombre,

07-build-nombre

lo que generaba el siguiente gráfico de trend:

08-grafica-trend

 

Luego extrajimos el número de build del nombre y pudimos obtener un gráfico con el historial.

09-build-grafico-histtorial

 

También nos permite ver el historial de cada test case.

010-historial-test-case

 

En conclusión, hasta ahora la herramienta de Report Portal nos sirve para mantener un constante monitoreo sobre todo tipo de pruebas funcionales, incluyendo algunos unit tests.

Pudimos enseñarle a la herramienta a reconocer ciertos tipos de resultados para clasificar futuras ejecuciones, y podemos fácilmente observar los resultados desde los gráficos dispuestos en los dashboards.

En la forma en la que lo trabajamos nos resultó útil poder utilizar diferentes tipos de reportes, adaptarlos a la herramienta mediante un script e importarlos en Report Portal con la información necesaria, tanto de los tests, como el link hacia la herramienta de ejecución, que en este caso es Jenkins.

Gerente técnico de cuentas (TAM)

Un gestor clave para llevar los servicios a otro nivel

La figura del Technical Account Manager o gerente técnico de cuentas (TAM), es un recurso que ofrece una línea de comunicación constante con los clientes, y que mantiene visibilidad completa de sus procesos de negocios para ayudar en la resolución de distintas problemáticas que surjan en el desarrollo de un proyecto.

Proactivo por definición, el TAM -servicio disponible para clientes de mayor tamaño, que tienen estructuras y una operativa más complejas- ofrece valor agregado al actuar como punto único de contacto y facilitador entre el cliente y las distintas áreas de Sovos, colaborando en la búsqueda de soluciones a incidencias que pudieran generar cuellos de botella en algún proceso. El TAM ayuda a detectar oportunamente las problemáticas internas en los procedimientos de la compañía y sugiere soluciones, mejoras y buenas prácticas.

Para ser efectivo, un TAM debe conocer el negocio, cultura, problemáticas, procesos internos y contrapartes de un cliente en profundidad.

Disponible en dos modalidades, el TAM dedicado trabaja con un cliente en específico unas 32 horas semanales en promedio, mientras que el tiempo que dedica un TAM compartido a una cuenta va entre 8 y 24 horas a la semana, dependiendo de lo acordado.

Los TAM establecen reuniones de coordinación y seguimiento semanales con los clientes, en las que se revisa el status de todos los proyectos que estos tengan en marcha. Esta conversación permanente entre ambas partes se traduce en mejores tiempos de respuesta ante requerimientos y en una relación más fluida y eficiente.

En la práctica, durante las reuniones semanales se revisa el estado de la cuenta a nivel operativo, analizando el estado de los proyectos y los casos abiertos pendientes de resolución por ambas partes. El TAM se comunica proactivamente con las distintas áreas y define dónde se necesita su intervención para solucionar incidencias.

Adicionalmente se acuerdan reuniones trimestrales, en las que se revisan las métricas de los meses anteriores y se evalúan aquellos puntos que requieren de modificaciones dentro de una estrategia de mejora continua.

El TAM también está al tanto de los cambios regulatorios en curso y advierte al cliente de sus posibles alcances, para que tome las medidas pertinentes si estos afectan su negocio; además sugiere capacitaciones y trainings, y comparte información sobre nuevos productos o versiones de un producto que puedan ayudar al cliente a mejorar su negocio.

Las empresas -especialmente aquellas de gran tamaño y complejidad- enfrentan cada vez mayores desafíos para mantener sus operaciones saludables, en un escenario en el que las administraciones tributarias imponen vertiginosos y cada vez más demandantes cambios regulatorios para tener mayor control sobre sus transacciones en tiempo real.

Generar la información requerida por las entidades gubernamentales para estar en cumplimiento requiere que las compañías inviertan recursos internos valiosos, que deben dejar de atender el core de su negocio para responder a estas exigencias y evitar el riesgo de multas y detenciones.

Estos datos son fundamentales para el trabajo diario, el cierre de balances y eventuales auditorías, y los reportes derivados de estos análisis deben cumplir con las normas en cada país en que se está presente.

Para controlar de punta a punta todo el flujo de los documentos electrónicos de los clientes con operaciones muy distribuidas -como retailers y otros que generan gran cantidad de documentos- Sovos ofrece los servicios de explotación o extendidos, que, a través de sistemas de reportería, tareas proactivas y monitoreo, velan por el correcto flujo de la información, desde que nace un documento y se envía a la administración tributaria, hasta su recepción final.

Los servicios extendidos hacen más eficiente la operatoria al detectar incidentes o errores de manera temprana, generar los reportes requeridos y las alertas de distintos parámetros fundamentales para la continuidad operacional.

Estos servicios son transversales para todos los países de la región, con las adaptaciones correspondientes dependiendo de las normativas y requerimientos locales, y están disponibles en tres tipos de planes de servicios -tier 1, 2 y 3- que abarcan diferentes entregables dependiendo de las necesidades específicas de cada cliente, incluyendo informes estándar, informes extendidos y alertas.

Adicionalmente, estos servicios garantizan la disponibilidad y los tiempos de recuperación del servicio, aseguran una mejor performance y estabilidad de las soluciones y evitan amenazas por mal uso y pérdidas de información al monitorear continuamente las condiciones de seguridad de los datos críticos.

Para más información, revise el brochure de servicios extendidos aquí.

Subirse al barco de la transformación digital puede ser una experiencia compleja para muchas compañías, especialmente aquellas que aún acostumbran a llevar la mayor parte de sus procesos a través de documentos físicos. El SII ha impulsado la innovación tecnológica al hacer obligatorio el cumplimiento tributario en línea, pero hay una amplia gama de áreas en las empresas que aún están a medio camino hacia la meta de los procesos 0% papel.

Se estima que hoy, en promedio, un 30% de las horas de trabajo se invierte en buscar información necesaria para trabajar, que cerca del 8% de los documentos en papel se pierden en la distribución y que un 3% de los documentos están mal archivados y son difíciles de encontrar.

La gestión de documentos en papel genera costos innecesarios por concepto de insumos, archivado y recuperación, consumiendo recursos vitales para la operación de una empresa. Igualmente, depender de la presencialidad de las personas para validar su identidad y firmar documentos es un gasto de tiempo valioso y puede redundar en procesos de negocios críticos estancados.

El onboarding de las empresas al mundo digital es, en este escenario, el camino más corto hacia la eficiencia, y la búsqueda de proveedores que simplifiquen el tránsito hacia la eliminación del papel, se transforma en un imperativo estratégico.

Un partner para la digitalización de procesos

Para acompañar a las compañías en este camino, Sovos cuenta con un robusto portafolio de soluciones de documentos electrónicos.

Su plataforma de gestión documental digital permite, además de almacenar y llevar la trazabilidad completa, compartir, enviar y firmar documentos de manera digital, validando previamente la identidad de los firmantes a través de distintos métodos de autenticación presenciales o remotos, incluyendo la biometría y la clave única del Estado. Cuenta además con firma digital simple y firma electrónica avanzada, esta última acreditada y auditada por el Ministerio de Economía, que incorpora ciertos protocolos de validación superior como la encriptación, otorgándoles así validez legal a los actos de firma con la misma consistencia de una firma presencial en papel.

Adicionalmente, Sovos cuenta con un equipo experto que acompaña a las empresas en todo el ciclo de vida de un negocio, ayudándoles a responder a las exigencias que demanda la transformación digital.

La Dirección de Impuestos y Aduanas Nacionales (DIAN) anunció mediante la Resolución 000448 de 29 de abril de 2022 que ha decidido posponer la obligatoriedad de la entrada en vigencia del documento soporte o equivalente hasta el 1 de agosto de 2022.

Este documento soporta la compra de un bien o la prestación de un servicio cuando el proveedor es un sujeto no obligado a expedir factura electrónica de venta o documentos equivalentes, y debe ser emitido por los compradores facturadores electrónicos que realizan transacciones con estos proveedores.

El comprador debe emitir dicho documento para soportar aquellas transacciones que dan lugar a costos, deducciones o impuestos descontables, por medio de un documento con numeración autorizada por la DIAN.

Lo mismo sucede con el documento utilizado para corregir facturas, denominado nota de ajuste.

La intención de la entidad tributaria al crear esta figura es dar un nuevo paso en la digitalización de los documentos fiscales, aumentando de este modo el control sobre las transacciones de los contribuyentes.

La implementación de este documento tiene varios beneficios, incluyendo la posibilidad de usar el costo o deducción en la declaración de renta, desmaterializar los comprobantes fiscales, mantener actualizada la información de sus costos, deducciones e impuestos descontables reportados a la DIAN y acceder a nuevos servicios electrónicos, incluyendo devoluciones automáticas y declaraciones sugeridas.

El aplazamiento de la entrada en vigor de esta normativa responde a la dificultad, para las empresas que son facturadoras electrónicas, de realizar las modificaciones pertinentes en sus ERPs para registrar a los proveedores no electrónicos y hacerlos emisores para efectos de sus sistemas. Por ejemplo, una empresa de retail con 500 proveedores, de los cuales no están obligados a ser electrónicos 50 -el 10%- debe crear 50 entidades dentro de su sistema para poder generar documentos en su nombre.

La figura del documento soporte, creada originalmente en Chile, fue muy efectiva en su momento para regular este tipo de transacciones, ya que extendía el uso de la factura electrónica a pequeños contribuyentes que no tienen los medios o no están obligados a crear este documento, transpasando así la responsabilidad a las empresas de mediano y gran tamaño

Manténgase al tanto de los cambios regulatorios en Latinoamérica aquí.

Verificar la identidad de una persona real detrás de un proceso es un paso fundamental para otorgar acceso seguro a usuarios y garantizar la validez de la firma digital de documentos. Los mecanismos de autenticación -presenciales o remotos- son variados, pero los más certeros son, por lejos, aquellos que incluyen tecnologías de verificación biométricas.

Cualquier rasgo físico (e incluso, de comportamiento) susceptible de ser captado y medido puede ser utilizado en un proceso biométrico. Hay muchas alternativas, dependiendo de la disponibilidad de la tecnología – el iris, el ADN, la voz, el patrón vascular y hasta el análisis del comportamiento en ciertas situaciones, como los gestos- pero los más utilizados en la actualidad son la huella dactilar y el análisis del rostro.

La identificación a través de la huella dactilar -única e irrepetible en cada persona- es hoy uno de los métodos más seguros y extendidos, principalmente porque existen tecnologías y dispositivos de alta calidad -huelleros- para registrarlas, y bases de datos masivas, almacenadas por entidades gubernamentales o certificadas, contra las que se contrastan dichas huellas para corroborar la identidad de una persona que requiere demostrar que es quien dice ser. Este método es más utilizado de manera presencial.

En cuanto a la identificación facial, esta funciona por medio de la medición de puntos en el rostro que son, al igual que la huella dactilar, únicas en cada individuo. Estos datos se almacenan y al momento de verificar la identidad, se realizan estas mediciones para corroborar que corresponden a los datos enrolados. Este método se está masificando en virtud del avance de las tecnologías disponibles para captar los rasgos de una persona, y permite realizar verificaciones de identidad a distancia, para lo cual el usuario que requiere ser autenticado puede utilizar, por ejemplo, la cámara de su teléfono celular para tomar su imagen y que esta sea validada.

La verificación facial se realiza aún en muchos casos contra el documento de identidad; es decir, se solicita a la persona una foto de su documento por anverso y reverso, se saca la información de la cédula con OCR o lectura de caracteres; con esa información, se verifica que los datos estén vigentes, y después se contrasta la foto de este documento contra una imagen que es solicitada a la persona -y que puede tomar a través de una foto o video con su celular- para dar por corroborado que es quien dice ser. Perú es, en la región, el país donde este sistema es más utilizado: el usuario se toma una selfie y esta es enviada al registro civil, que toma la imagen y verifica que corresponde al DNI ingresado.

En rigor, cada país determina cuáles métodos son los que exigirá para realizar las verificaciones de identidad y para qué trámites pueden ser utilizados.

Sovos ofrece distintos mecanismos de autenticación presenciales o remotos incluyendo la biometría. En Chile, por ejemplo, está certificado A.E. 3822 del 25 de noviembre de 2016 para su uso. Además, proporciona mecanismos para la verificación dactilar y facial de alta seguridad, que encriptan las muestras para que nadie pueda accederlas o violarlas.

Adicionalmente, siempre utiliza más de un método de verificación de identidad para corroborar que una persona es quien dice ser, y validar que tiene los permisos para realizar determinados trámites o firmar documentos.

La evolución acelerada de los procesos de negocios desde el papel al mundo electrónico, resultado de la transformación digital y de las condiciones derivadas de la pandemia global, ha tenido un impacto significativo en un área fuertemente regulada debido a la criticidad de los datos que administra: la industria financiera.

Para entidades como la banca, administradoras de fondos de pensiones y aseguradoras, entre otras, lo que en un inicio surgió como la necesidad de reducir costos por concepto del uso, traslado, almacenamiento y recuperación de documentos en papel, a la par de optimizar el trabajo de su personal, se convirtió, en el marco de esta rápida evolución hacia lo digital, en la urgencia de encontrar soluciones tecnológicas que simplificaran la operatoria y que permitieran cumplir con las estrictas normativas de las entidades reguladoras.

Adelantándose a estas demandas, Sovos marcó un hito al ser una de las primeras compañías en habilitar el gestor documental digital para esta industria; una solución robusta, que permite administrar y firmar los documentos de manera remota, no presencial, verificando previamente la identidad de los firmantes por medio de distintos métodos de validación – biometría, clave única y otros.

La solución almacena los documentos automáticamente en un repositorio seguro y de fácil acceso, añadiendo un sellado de tiempo -certificado en Chile y Perú- que corrobora la fecha y hora en que fueron firmados o modificados, lo que facilita su trazabilidad y uso como medio probatorio en cualquier juicio o instancia legal.

Otro de los beneficios que simplifica la administración para las entidades financieras, es que al estar los sistemas ERP del cliente integrados con Sovos, la gestión de los documentos queda a su total disposición. Esto le permite generar fácilmente cualquier informe que demanden las regulaciones imperantes, asegurando la continuidad operacional.

Ejemplos de uso

En el caso de las AFPs, por ejemplo, el gestor documental permitió la digitalización de la orden de traspaso de una entidad a otra, lo que se traduce en un cambio radical de los procedimientos internos, desde el proceso en papel y el consecuente flujo de documentos vía valija, almacenamiento y rescate, al acceso a un portal de custodia donde se encuentra el documento -que tiene asignado un número único de identificador- firmado y con sellado de tiempo.

Las compañías de seguros valoran la opción que ofrece el gestor documental de mostrar al cliente los documentos pendientes de firma, que tiene almacenados en su repositorio dentro sus propios portales. El cliente lee el documento, que se levantó desde el gestor y, al momento de firmar, cuando pone la clave del portal del banco, Sovos captura la clave y la envía al banco para que la corrobore, tras lo cual continúa o detiene el proceso de firma.

Latinoamérica es tal vez la región del mundo más activa en la generación de regulaciones relativas a la facturación electrónica y como tal, ha sido tomada como modelo en otros continentes. Sin embargo, el impacto de la pandemia ha retrasado la entrada en vigor de muchas de ellas. En estas líneas revisamos el estado actual y futuro de las tendencias regulatorias más relevantes.

En el mediano plazo es esperable que las administraciones tributarias regionales sigan creando e implementando complementos específicos para la factura electrónica para determinado tipo de operaciones.

En Colombia, tras ser postergada por largo tiempo, la DIAN emitió los proyectos de normas que fundamentan el uso de la factura electrónica para el sector Salud. Recientemente, el Ministerio de Salud publicó la Resolución 510/2022, que actualiza la documentación técnica de la mencionada factura, adecuándola a la versión 1.8 que anteriormente emitía la DIAN. Pese a estar originalmente programada para entrar en vigor el 1 de julio de 2022, se ha establecido el 1 de enero de 2023 como fecha en que comenzará su obligatoriedad.  Otros documentos soporte de la factura electrónica, están igualmente en proceso de implementación.

Otra tendencia en la región es el uso de la factura electrónica como herramienta para potenciar el flujo de caja de los medianos y pequeños contribuyentes que venden a crédito. En esta línea Colombia está consolidando el uso del RADIAN como instrumento de factoring -negociación y financiación. Chile comenzó un sistema similar con la Ley de Pago a 30 Días, mientras que Argentina estableció hace poco mas de dos años la factura de crédito electrónica para PyMES. Este sistema adherido al mandato de facturación electrónica ayuda a quienes venden bienes y servicios a crédito a aumentar su flujo de caja e induce a que las pymes adopten el sistema de facturación electrónica voluntariamente. En Perú se está también evaluando una acción similar.

El tercer hito o tendencia regional es el uso de los “Días sin IVA”, utilizados por el Estado para suspender temporalmente el cobro de este impuesto durante algunos días específicos en el año para determinados bienes y servicios, como una forma de reavivar la economía e inducir a los contribuyentes a un mejor cumplimiento tributario. Esta tendencia, que también busca que los contribuyentes adhieran al régimen de facturación electrónica, fue un éxito en Colombia, lo que ha inducido a otros países a replicar el modelo de manera más acotada. Ecuador lo aplicó solo para los servicios turísticos durante los días de carnaval, mientras que Uruguay hizo lo propio para ciertos productos cárnicos, como una forma de poner un límite a la inflación. Otros países interesados son Costa Rica y Perú, y es probable que otros se sumen a la iniciativa.

Transporte de bienes

Otra de las iniciativas que se han venido expandiendo en la región, son los mandatos que requieren el permiso de la administración para el desplazamiento de bienes dentro de sus jurisdicciones. Estas iniciativas necesitan de un apoyo logístico mayúsculo, pues requieren no solo la participación de los vendedores de bienes, sino además, de los transportistas utilizados para ese desplazamiento y las autoridades de transporte.

Tras varias tentativas, México suspendió nuevamente la validación estricta de la Carta Porte en el país, para permitir a los contribuyentes afectados y a los pequeños y medianos transportistas -la gran mayoría- adquirir la capacidad logística tecnológica para incorporarse a ese régimen. En tal sentido, pese a ser mandatorio el uso de la Carta Porte, se ha flexibilizado su proceso de validación y se han emitido nuevas versiones del mandato para ajustar los requerimientos técnicos a las realidades del país.

Las experiencias y dificultades que ha enfrentado México están siendo observadas cuidadosamente por otras administraciones tributarias como las de Colombia, Perú y Ecuador, que están considerando o están ya en el proceso de implementación de estos mandatos.

Otros países tienen ya sólidos sistemas en este ámbito. Uruguay, cuenta con el e-Remito, requerido para el transporte local de mercancías. Argentina, a nivel federal, ha implementado la Carta Porte para el traslado de granos, y el llamado Remito Electrónico Cárnico para el transporte de carnes.  Este último es más amplio a nivel de varias administraciones tributarias provinciales argentinas que requieren el uso de remitos y Carta Porte para prácticamente todo tipo de bienes transportados dentro de sus jurisdicciones.

Plataformas tecnológicas y servicios de productos digitales a distancia

La tendencia que se prevé tomará mayor fuerza en Latinoamérica es la extensión de obligaciones y responsabilidades tributarias para las plataformas tecnológicas y a los suplidores de servicios y productos digitales cuando los mismos son consumidos localmente. En la mayoría de los casos, estas obligaciones se limitan al IVA, pero en algunos países se extienden además al impuesto sobre la renta.

Por ejemplo, para el caso de los servicios digitales provistos por entidades foráneas, las regulaciones de Argentina, Colombia y Ecuador requieren del sistema financiero, retener y pagar el IVA y otros impuestos nacionales y provinciales a estas transacciones, cuando los usuarios usan esas instituciones para pagar a las plataformas extranjeras por los servicios de entretenimiento y aplicaciones que consumen electrónicamente. Otros países como Chile y México requieren al proveedor registrarse y cumplir directamente con obligaciones de registro, y eventualmente, de facturación electrónica.

En el caso de las plataformas tecnológicas utilizadas para la venta de bienes y servicios, el enfoque ha sido distinto. Las administraciones regionales han visto en ellas no solo a contribuyentes de los impuestos antes indicados, sino además potenciales agentes de retención e información utilizables para inducir el cumplimiento de los proveedores de bienes y servicios que utilizan esas plataformas para hacer sus ventas.  De ahí que la tendencia es que las administraciones tributarias impongan obligaciones adicionales al cobro o retención de los impuestos aplicables, tales como las relativas a facturación electrónica y reportes periódicos de ventas realizadas a través de estas. Debido a su éxito recaudatorio, esta tendencia se consolidará en la región y el mundo.

Conversemos de DevSecOps

En esta nueva sección de nuestro blog compartiremos la visión y experiencia de nuestro equipo de expertos en el ámbito del desarrollo de software y las tecnologías de información en general, quienes tocarán distintos temas relacionados con las tecnologías y metodologías utilizadas por Sovos para crear e implementar un mejor software, y entregarán tips y datos orientados a aportar valor a quienes deben trabajar en este ámbito, fundamental para las compañías que crean y utilizan soluciones para impulsar el negocio de sus clientes.


 

Pamela Ruiz, Senior QA Engineer

Aplicación de pruebas de performance de API en proyectos de Sovos

En estos tiempos, donde el mercado es muy competitivo, la calidad pasó a un primer plano en la evaluación que realizan los clientes para elegir un producto.

La rapidez en los tiempos de respuesta de servicios o eventos ha cobrado mucha relevancia, a tal punto que -y según se ha analizado estadísticamente- es muy probable que un usuario abandone un producto si debe esperar más de 3 segundos.

Para entregar siempre las mejores soluciones a sus clientes, uno de los focos de Sovos en el área de calidad está puesto en las pruebas de performance. En esta línea se armaron equipos dedicados exclusivamente a todas las tareas no funcionales, que trabajan estrechamente con el equipo de CloudOps para contar con la infraestructura necesaria tanto para las etapas de desarrollo, como las finales, incluyendo producción.

Una de las primeras tareas que tuvo el equipo de performance fue el desarrollo, precisamente, de un framework para pruebas de performance. En Sovos se utilizan 2 herramientas open source, K6 y Jmeter, para el desarrollo de scripts para pruebas.

Los resultados de estas pruebas se guardan en InfluxDB, una base de datos especialmente diseñada para almacenar datos de este tipo. Grafana es la herramienta elegida para consumir los datos almacenados y procesarlos para mostrarlos mediante gráficos y tablas.

 

resultados-influxdb-grafana-db

 

La estrategia utilizada para el desarrollo de pruebas se basa, primeramente, en evaluar los endpoints más utilizados por los usuarios, testearlos bajo diferentes cargas y analizar los resultados, no solo en cuanto a tiempos de procesamiento, sino también, en cantidad de errores obtenidos provocados por la concurrencia.

Es recomendable que para el análisis de los resultados se cuente con herramientas de monitoreo como AppDynamics o Jaeger, que muestran en tiempo real lo que sucede con cada componente del sistema, permiten seguir el flujo de algunos requests para observar la distribución de tiempos que ocupa en todo su procesamiento e identifican si alguno de ellos está provocando cuellos de botella.

 

trace-request-jaeger

 

En la imagen se observa el trace de un request desde Jaeger.

También observamos qué sucede a nivel de base de datos; si hay bloqueos, si algún pedido necesita índices para alguna tabla, si el pool de conexiones es suficiente, etc.

 

recursos-db-appdynamics

recursos-db-appdynamics-2

 

En la imagen se observa la utilización de recursos de base de datos desde AppDynamics.

Durante esta primera etapa de análisis se realizan las tareas de forma manual, probando diferentes escenarios. Por ejemplo, aumentando los usuarios concurrentes de forma gradual, partiendo desde 10, hasta llegar a 100 o 150 usuarios sucesivamente en el caso de un ambiente pequeño.

 

A continuación, desarrollaremos un ejemplo implementado en uno de los proyectos de Sovos:

Como primer paso se desarrolla el script implementando un setup -que es común a todos los scripts- por lo que se utiliza el llamado a un script externo para evitar la duplicidad de código.

Luego de realizado el setup, se ejecuta la prueba en donde establecemos el endpoint a utilizar junto con sus headers, y también se le agrega una corroboración de que la respuesta sea la que estamos esperando. Estas comprobaciones de respuesta se aplican en todos aquellos casos en los que tenemos requests dinámicos, para asegurar no solo que devuelve el código http esperado, sino también, que contamos con la información requerida.

Generamos un reporte csv con las métricas de las pruebas, así como también un reporte de errores XML en el se registra qué datos se enviaron, el código de respuesta obtenido y el cuerpo del mensaje de respuesta.

 

test-plan-jmeter

Imagen del test plan desde Jmeter.

 

test-antes-despues-cambios-codigo

Resultados de las pruebas antes y después de los cambios de código.

 

En uno de nuestros endpoints realizamos una primera ejecución en el ambiente de QA con distintos escenarios, variando la cantidad de usuarios concurrentes entre 10 y 100 usuarios. Se encontraron mejoras para realizar a nivel de código y se ejecutaron nuevamente las mismas pruebas para poder comparar el impacto de los cambios realizados.

En este caso tuvimos una mejora notable, observando una disminución en los tiempos promedios de respuesta de 100 segundos a 30 segundos en el escenario de mayor concurrencia (100 usuarios virtuales).

De esta manera, encontramos los endpoints más críticos, para poder trabajar sobre ellos y aplicar mejoras.

Luego de esta primera etapa, procedemos a establecer corridas automáticas de forma semanal durante la noche para evitar bloquear los ambientes bajos. Estas corridas se realizan para mantener el control y detectar los problemas de performance antes de que lleguen a producción, donde principalmente observamos si los cambios realizados durante ese tiempo tuvieron impacto a nivel de performance. Luego de algunas ejecuciones, se establecen umbrales aceptables de variación, para alertar cuando en algún momento se supera alguno de esos umbrales.

Infografía: Las 10 lecciones más importantes sobre el cumplimiento e informes del IVA

Las naciones latinoamericanas han sido pioneras en la implementación de iniciativas
relacionadas con el IVA
que dependen considerablemente de la tecnología para el cumplimiento y los informes, proporcionándole a los gobiernos una mayor visibilidad de las transacciones comerciales.

Conversemos de DevSecOps

En esta nueva sección de nuestro blog compartiremos la visión y experiencia de nuestro equipo de expertos en el ámbito del desarrollo de software y las tecnologías de información en general, quienes tocarán distintos temas relacionados con las tecnologías y metodologías utilizadas por Sovos para crear e implementar un mejor software, y entregarán tips y datos orientados a aportar valor a quienes deben trabajar en este ámbito, fundamental para las compañías que crean y utilizan soluciones para impulsar el negocio de sus clientes.


 

Pamela Ruiz, Senior QA Engineer

Medición y visualización de performance para procesos batch

Por lo general, al medir performance de nuestras APIs, en Sovos buscamos obtener distintas métricas, como tiempos de respuesta, cantidad de errores, transacciones procesadas por minuto, cuellos de botella en el flujo y recursos utilizados en los servidores, entre otros. La finalidad es realizar un análisis de los datos obtenidos y aplicar mejoras en nuestros productos, para proveer la mejor calidad a nuestros clientes.

Para ello utilizamos herramientas como JMeter y K6, entre otras, para la ejecución de pruebas; AppDynamics para el monitoreo en tiempo real y Grafana e InfluxDB para la recolección y muestra de datos.

En este caso, como base de datos para almacenar las métricas, se seleccionó InfluxDB, la que es utilizada específicamente para almacenar información de métricas y datos para análisis en tiempo real. Esta herramienta de almacenamiento es plenamente compatible con Grafana, utilizada para detallar los resultados mediante gráficos.

A diferencia de las API, al medir la performance de procesos batch -que por lo general corren en modo background como servicios o procesos de Windows/Linux- no es tan relevante el tiempo de respuesta de estos procesos (aunque a veces es útil tener el dato para saber la capacidad de procesamiento de nuestro sistema), ya que el cliente no se encuentra activamente esperando una respuesta, sino que se evalúan principalmente métricas como recursos utilizados durante el procesamiento.

Para este tipo de pruebas se realizan una serie de pedidos para encolar procesos batch, y analizar el comportamiento del sistema durante el procesamiento. En nuestro caso, utilizamos JMeter para simular a usuarios realizando los pedidos.

Para la medición de recursos utilizados en un servidor usamos Telegraf, un agente que se instala en los servidores (en nuestro caso Windows) y se comunica con InfluxDB.

Dentro de los productos de Sovos utilizamos los llamados batch processing. Estos son procesos tipo batch que toman desde unos pocos minutos hasta varias horas en completar su ciclo, dependiendo del volumen de datos a procesar. Por lo general son utilizados para importar, transformar, exportar o transmitir altos volúmenes de datos.

Para su funcionamiento, el cliente envía un pedido para iniciar este proceso y recibe un acknowledgment para saber que su pedido fue tomado con éxito.

Por detrás, comienza el proceso con un orquestador de procesos que maneja los pedidos, encolándolos y derivándolos al primer procesador que se encuentre disponible, asignándoles el estado de claimed.

Los batch processing trabajan como una máquina de estados, pasando por diferentes estados. En la imagen podemos observar un esquema simplificado de los mismos.

 

batch-processing-maquina-estados

 

Para nuestro equipo era esencial contar con métricas relacionadas con estos procesos de larga duración, que incluyen:

Si bien no contábamos con ninguna herramienta para monitorear las métricas que necesitábamos en cuanto a tiempos y cantidades, notamos que durante el procesamiento se utiliza una tabla en la base de datos para registrar los distintos cambios de estado durante todo el proceso.

 

verificacion-jobs-fallas

 

El equipo de trabajo pudo tomar ventaja de ello y utilizar esta tabla como base para obtención de métricas.

Se crearon diferentes consultas a la base de datos para obtener datos tales como:

Se tomaron en cuenta los estados principales, como enqueued, running, failed y completed.

Este trabajo podía llevarse a cabo de forma manual y en el momento, pero no era un proceso eficiente a la hora de realizar un análisis de lo sucedido a lo largo del tiempo. Se requería una herramienta que pudiera procesar los datos y mostrarlos de forma amigable mediante gráficos.

De esta manera, para automatizar el proceso de análisis de los resultados y contar con un historial de información, se creó una aplicación con node.js en la que establece una conexión con la base de datos de Oracle, desde donde se extraen las métricas, y una conexión con InfluxDB, en donde se almacenan los datos una vez procesados.

 

automatizar-procesos-influxdb

 

Este proceso de node se realiza cíclicamente cada 20 segundos para recolectar los datos.

Se armó un dashboard en Grafana para mostrar los resultados, tal como muestra la siguiente imagen:

 

dashboard-grafana-resultados

 

Estos gráficos son totalmente configurables y es posible ajustar a diferentes fechas y horas, de acuerdo con lo que se necesite analizar.

Adicionalmente, esta aplicación se encuentra dockerizada para facilitar el deployment mediante Puppet. Si bien hoy en día está configurada para utilizar en un ambiente específico, en un futuro podríamos aplicar nuevas configuraciones para diferentes ambientes y base de datos según se necesite.

Además pueden agregarse nuevas consultas a la base de datos en caso de que se requieran nuevas métricas, incluyendo números de procesos cancelados por el usuario y número de procesos en algún estado en específico, entre otras.

A continuación se observa un dashboard en Grafana para monitoreo de utilización de recursos:

 

dashboard-grafana-monitoreo-recursos

 

En conclusión, se logró crear un framework de monitoreo para los procesos de larga duración basados en tecnologías open source.

Cada nuevo conocimiento y avance va sumando para tener una mejor base de monitoreo y mejor información al momento de realizar un análisis más profundo al encontrar errores o al realizar pruebas de carga, permitiendo encontrar con mayor facilidad los cuellos de botella, tanto para nuestras APIs como para nuestros procesos de batch.

Conversemos de DevSecOps

En esta nueva sección de nuestro blog compartiremos la visión y experiencia de nuestro equipo de expertos en el ámbito del desarrollo de software y las tecnologías de información en general, quienes tocarán distintos temas relacionados con las tecnologías y metodologías utilizadas por Sovos para crear e implementar un mejor software, y entregarán tips y datos orientados a aportar valor a quienes deben trabajar en este ámbito, fundamental para las compañías que crean y utilizan soluciones para impulsar el negocio de sus clientes.


 

Capability Model de Sovos: Una guía de buenas prácticas para la mejora continua

Las empresas de tecnología enfrentan cada día mayores desafíos, y para mantenerse competitivas, no quedar obsoletas y satisfacer adecuadamente la demanda de los mercados, requieren mejorar de forma permanente sus prácticas. Esto es especialmente relevante para los equipos de desarrollo de software, que tienen que adaptarse constantemente, tanto a nivel de conocimientos técnicos, como de prácticas y metodologías.

En este artículo vamos a mostrar el modelo llamado Capability Model, que desarrollamos en Sovos para guiar a todos aquellos equipos en búsqueda de mejora continua.

 

¿Por qué Capability Model?

En el libro Accelerate (Nicole Forsgren, Jez Humble, Gene Kim), los autores proponen utilizar Capability Models en vez de Maturity Models. La razón principal se centra en el carácter extremadamente dinámico de las tecnologías, las prácticas y, en general, de la industria del software; este dinamismo se traduce en cambio constante y nos obliga a estar en permanente reinvención y reevaluación; algunas capacidades que antes fueron mejores prácticas pueden quedar obsoletas en el futuro, o simplemente, no resultar en grandes mejoras. Por esta razón decidimos trabajar en nuestro departamento de tecnología con un modelo de capacidades, incluyendo prácticas, técnicas y tendencias que mejoren la eficiencia de nuestros equipos de desarrollo a medida que las vayan implementando.

Como herramienta de mejora continua, nuestro Capability Model nos permite mejorar las prácticas de desarrollo, adquirir nuevos conocimientos y cambiar viejos paradigmas, además de:

 

¿Qué es para Sovos el Capability Model y cómo se usa?

Para crear la primera versión de nuestro Capability Model nos basamos en el modelo de DevOps y las conocidas etapas de Plan-Code-Build-Test-Release-Deploy-Operate-Monitor, a las cuales agregamos Feedback para hacer más explícita nuestra relación con los usuarios de los productos. Además tomamos como ventaja las buenas prácticas de nuestro departamento de Customer Success.

 

modelo infinito DevOps

Modelo infinito de DevOps

 

Cada categoría incluye un conjunto de capacidades y prácticas, básicas y avanzadas. Estas últimas permiten desarrollar mayores ventajas competitivas y lograr niveles de eficiencia superiores en los equipos de desarrollo.

Por eso dividimos las capacidades en una matriz con categorías y 4 niveles, siguiendo el modelo de Tuckman Norming-Forming-Storming-Performing:

 

modelo-capacidades-v1

Modelo de capacidades v1

 

Gamification

Cuando hablamos de gamification nos referimos a la posibilidad de motivar, generar concentración y otros valores positivos a través del juego. Y todo equipo de desarrollo en Sovos parte la autoevaluación desde la etapa de forming.

 

El Capability Model evoluciona de la mano del crecimiento tecnológico

Para la segunda versión de nuestro modelo decidimos revisitar las capacidades con un mayor enfoque en DevSecOps, lo que implica integrar mejores prácticas relacionadas a seguridad informática, no solo a nivel de código y testing, sino en todas las etapas del desarrollo.

Algo importante que aprendimos en este proceso es que, indefectiblemente, las tecnologías, metodologías y las formas en que construimos software cambiarán con el tiempo. Esta lógica tiene una relación directa con el Capability Model: este también debe cambiar. Esta es una de las grandes diferencias con los antiguos Maturity Model.

 

practica-seguridad-ciclo-vida-software

 DevSecOps incorpora prácticas de seguridad a todos los niveles del ciclo de vida de software

 

Evaluar y guiar mejoras en equipos de desarrollo

Nuestro Capability Model no es solamente una guía teórica de prácticas a adoptar para mejorar el rendimiento de los equipos de desarrollo. Una parte importante de la implementación es realmente ejecutar este modelo con los equipos, a fin de determinar el estado de sus prácticas y definir cuáles nuevas prácticas adoptar para pasar al siguiente nivel.

La idea es seguir la evolución de los equipos a mediano y largo plazo; ver cómo comparten sus dinámicas y al final, analizar cómo mejoran.

Surge una pregunta: ¿con qué frecuencia ejecutar el modelo con un mismo equipo? Si bien no hay una única respuesta correcta, se pueden considerar factores como los cambios de los integrantes del equipo (turnover), o en el propósito o tecnología usadas; las modificaciones de proyectos o conexión con otros equipos y los cambios de frameworks ágiles. Si nada de lo anterior sucede en un equipo, una frecuencia regular de cada 6 meses resulta un buen balance.

En el siguiente gráfico se pueden observar los cambios entre la primera ejecución (en azul) y la segunda (en verde): Este es un ejemplo de un equipo que decidió enfocar sus mejoras principalmente en prácticas de testing y en su metodología de trabajo.

 

grafico-radar-visualizacion-resultados

Usamos gráficos de radar para visualizar resultados

 

Para colectar los resultados de esta evaluación se pueden utilizar diversas técnicas sencillas. En la primera versión de nuestro modelo usamos preguntas cerradas (Sí/No) siguiendo un checklist, consultando a los equipos sobre la utilización de prácticas particulares. Por ejemplo, ¿estamos realizando pruebas automatizadas de API para nuestros microservicios?

En la segunda versión del modelo estamos utilizando una escala de Likert, lo que permite apreciar el grado de adopción de una práctica, sin cerrarnos en un Sí o No categórico. Utilizando un estilo declarativo como Realizamos pruebas automatizadas de API para todos nuestros microservicios, y respuestas posibles desde Totalmente en Desacuerdo hasta Totalmente de Acuerdo -variando el grado de seguridad en la respuesta- obtenemos una buena idea promedio del uso de cada práctica particular.

Al final de cada evaluación los equipos deciden el próximo paso en términos de mejoras a realizar. Siguiendo el ejemplo de pruebas automatizadas de API, se puede tomar como objetivo a completar -hasta la siguiente evaluación- la implementación de dichas pruebas para optimizar la capacidad de testeo automatizado, disminuyendo tiempos de feedback para el equipo y para mejorar la confianza en sus servicios.

Para ayudar a los equipos en la implementación de mejoras, cada práctica presente en el modelo de capacidades contempla documentación que explica las formas de adoptarlas a través de ejemplos de otros equipos que lo hicieron anteriormente, ya sea en Sovos, o fuera, para las prácticas más nuevas.

En conclusión, el modelo de capacidades de Sovos nos brindó múltiples resultados orientados a diferentes públicos. Para los equipos de desarrollo, permite evaluar y orientar mejoras para lograr mayor eficiencia, mientras que para el team de management, permite entender el estado de los equipos a nivel de eficiencia, ayuda a tomar decisiones a nivel de capacitaciones e inversiones (infraestructura, por ejemplo), y entrega mejor visibilidad para definir dónde ejecutar proyectos.

Video: Gestor documental digital de Sovos. Casos de industrias

El gestor documental digital de Sovos le permite almacenar, crear, firmar y compartir documentos electrónicos con sus clientes, colaboradores y proveedores

Mantener el ritmo de la digitalización de los impuestos requiere una estrategia.

Sovos puede ayudar.

El ciberdelito se ha convertido en una amenaza continua. Desde archivos maliciosos que instalan virus en los computadores, hasta mensajes con links (phishing) que capturan y roban información desde dispositivos móviles, las diferentes formas de vulnerar la seguridad de la información que se utilizan en los procesos digitales es un desafío que personas naturales y empresas deben enfrentar cada día.

Este riesgo creciente se traduce en que las entidades bancarias, que intercambian información sensible a diario, deban aplicar mayores y mejores métodos para proteger a sus clientes, los datos que ellos comparten y las transacciones que realizan online.

Todas las compañías que cuentan con procesos de negocios digitales deben no solo invertir en hacer más eficientes y sólidos estos canales; también deben acceder a métodos de validación y de protección de la información de sus clientes y consumidores.

Los estándares contemplados por las distintas entidades bancarias y financieras en términos de ciberseguridad se han convertido en un diferenciador crítico.

Por esta razón, a la hora de evaluar el servicio de una entidad financiera, no solo se deben contemplar los costos, eficiencia y cobertura. Hoy, el primer factor a considerar es conocer cuáles son sus métodos de seguridad y protección de clientes, transformándose este en un factor diferenciador de suma importancia para que el usuario decida si le depositará su confianza.

Las entidades financieras se ven obligadas permanentemente a innovar e ir un paso delante de aquellos que buscan realizar fraudes. Si bien la digitalización ayuda, se deben siempre incrementar los controles transaccionales continuos -es decir, en tiempo real o casi real-; mejorar sus plataformas y utilizar varios métodos de comprobación de identidad de los clientes al momento de realizar transacciones en todas las plataformas habilitadas.

Para responder a estos desafíos, Sovos cuenta con métodos de validación y de verificación de personas cuyo objetivo es corroborar, a través de una serie de procedimientos con un alto porcentaje de certeza, a quien firma, realiza una transacción o bien, es quien dice ser. La clave está en interpretar los riesgos transaccionales y a la persona detrás del dispositivo para alcanzar un correcto balance entre la seguridad y la experiencia del usuario, según lo amerite cada transacción.

Sovos considera tres puntos fundamentales al ofrecer métodos para brindar altos niveles de ciberseguridad: en primer lugar, respaldo seguro de la información: contar con soluciones validadas y certificadas, que resguarden, sellen y encripten la información; en segundo lugar, la implementación adecuada, es decir, un correcto diseño de flujos, experiencia y comunicación entre los sistemas, y en tercer lugar la autenticación, lo que se traduce en aplicar mecanismos multifactoriales que consideren información del usuario, conocimiento, dispositivos y/o biometría.