API de Integración con Softland Contabilidad

Necesidad de Integración con Sotland

La integración con Softland es una de las necesidades más recurrentes que tienen empresas medianas y grandes.  Por ejemplo, pueden existir sistemas satélites que no sean parte de Softland y que generen transacciones contables. Es por lo anterior que se necesita automatizar la integración con Softland y los sistemas satélites.

Por otra parte, Softland tiene un capturador de transacciones contables que viene incluido en el módulo de Contabilidad y Presupuesto. Mediante este capturador los usuarios dejan archivos con las transacciones en un directorio particular para cada empresa. Posteriormente, un demonio captura cada cierto tiempo los archivos con las transacciones contables que se ubican en el referido directorio y los carga a la contabilidad.  Eventualmente, pueden haber errores en la información contable cargada, por ejemplo, que una cuenta contable que no exista. Por lo anterior, una transacción puede ser rechazada. Sin embargo, este método que tiene el capturador no es adecuado cuando un cliente tiene muchas empresas en un sistema Softland.

 

API Contable Neuronet

Es por esto que NEURONET ha desarrollado una serie de aplicaciones complementarias al sistema ERP Softland con el propósito de facilitar integraciones y reportería. Estas aplicaciones están construidas con las más recientes tecnologías tales como microservicios, API REST, y patrones de diseño de software de última generación.

La siguiente figura ilustra en forma muy general la arquitectura de la API Contable para el ERP Softland.  En el diagrama se observa una componente middleware formada por un servidor web Apache Tomcat. En la componente middleware  es donde se instala el aplicativo que implementa la integración con Softland. Esta componente esta formada por una familia de APIs REST y un aplicativo web para temas configuración y auditoría. Las configuraciones y auditorias de las transacciones se depositan en una base de datos SQL Server dentro de la misma instancia que tiene las bases de Datos de las empresas Softland.

API Contable Neuronet

API Contable Integracion con Softland
                                                  API Contable Integración con Softland

Validaciones

El capturador de Softland realiza varias validaciones, entre las cuales se encuentran las siguientes:

 

    1. El sistema externo está autorizado mediante formalismo de API KEY.
    2. Los datos de la empresa corresponde (RUT).
    3. El año del comprobante corresponde a un año abierto en la contabilidad.
    4. El tipo de Comprobante debe ser (I: Ingreso, E: Egreso, T: Traspaso).
    5. La glosa del comprobante contable existe y tiene un largo adecuado.
    6. El correlativo del comprobante es el adecuado.
    7. Si en los movimientos contables existe una cuenta que define Auxiliar. Por ejemplo, cuenta de Clientes para registrar ventas. En este caso, la línea debe tener sección Auxiliar con todos sus datos (código, rut, nombre, Tipo Documento, Numero Documento, etc.)
    8. Si por configuración en el Plan de Cuentas, las cuentas  contables de los movimientos del comprobante generan libros de Ventas, Compras o Remuneraciones. En este caso deben venir los datos correspondientemente desagregados para generar los libros (montos netos, impuestos, montos brutos, etc.)
    9. Si la cuenta exige Auxiliar y no viene información de Auxiliar, por ejemplo datos del cliente en una factura de venta, se rechaza transacción.
    10. Si  se sumas  los montos DEBE y HABER del detalle del Comprobante Contable y no son iguales, se rechaza transacción.
    11. En el caso  de que el centro de costo de la línea de detalle del Comprobante no exista, se rechaza transacción.
    12. Otras validaciones.

Modelo de Datos

El modelo de datos Softland es fundamental  para construir una integración con Softland.

En el siguiente link se podrá ver un resumen elemental de las tablas más relevantes del modelo y su diccionario de datos.

Deja una respuesta

Tu dirección de correo electrónico no será publicada.

uno + uno =