Skip to content

Integraciones ERP

CPR se integra con sistemas ERP (Odoo, Nisira) para sincronizar datos contables, bancarios y de colaboradores. Soporta múltiples ERPs mediante una arquitectura de estrategia que permite alternar entre proveedores según la configuración de cada empresa.

Configurar credenciales de integración

Accede a Configuración > Integraciones para gestionar las credenciales de conexión con el ERP.

Página de integraciones con tarjetas por tipo de ERP: 'Odoo' (con estado Conectado/Desconectado, versión, URL del servidor), 'Nisira' (similar). Cada tarjeta tiene botón 'Configurar' y 'Probar conexión'

Configurar Odoo

  1. Haz clic en "Configurar" en la tarjeta de Odoo
  2. Completa las credenciales:
CampoDescripción
URL del servidorURL de la instancia de Odoo (ej: https://miempresa.odoo.com)
DatabaseNombre de la base de datos de Odoo
UsuarioUsuario de Odoo con permisos de API
Contraseña/API KeyContraseña o API key del usuario

Formulario de configuración de Odoo: URL del servidor, Base de datos, Usuario API, API Key/Contraseña, botón 'Probar conexión' (que muestra resultado exitoso o error), botón 'Guardar configuración'

Probar la conexión

Después de configurar las credenciales, haz clic en "Probar conexión" para verificar que CPR puede comunicarse con el ERP.

Resultado de prueba de conexión: badge verde 'Conexión exitosa' con detalles: 'Odoo versión 17.0', 'Base de datos: lajoya_prod', 'Usuario: api_cpr', 'Módulos disponibles: contabilidad, bancos, contactos'

Mapeo de cuentas contables

El mapeo de cuentas contables vincula los conceptos de CPR con las cuentas del ERP.

Accede a Configuración > Integraciones > Mapeo de Cuentas.

Tabla de mapeo de cuentas contables con columnas: Concepto CPR (ej: 'Hotel', 'Taxi', 'Alimentación'), Cuenta ERP (código y nombre), Moneda, Entidad local, Acciones (editar, eliminar). Filtros por concepto y moneda

Crear un mapeo

  1. Haz clic en "Nuevo Mapeo"
  2. Configura:
CampoDescripción
ConceptoConcepto en CPR (ej: categoría de gasto, tipo de compensación)
Cuenta ERPCódigo de la cuenta contable en el ERP
MonedaMoneda de la cuenta
Entidad localID del registro local (si aplica)

Mapeos comunes

Concepto CPRCuenta ERP ejemploDescripción
Hotel6201 - Gastos de hospedajeCuenta de gasto para hospedaje
Taxi6202 - Gastos de transporteCuenta de gasto para movilidad
Alimentación6203 - Gastos de alimentaciónCuenta de gasto para comidas
Devolución a empresa1041 - Cuentas por cobrar personalCuenta de activo por devolución
Reembolso al colaborador4211 - Cuentas por pagar personalCuenta de pasivo por reembolso

Sincronización de datos

Sincronizar colaboradores

Los colaboradores se pueden sincronizar desde el ERP:

  1. Ve a Configuración > Colaboradores
  2. Haz clic en "Sincronizar desde ERP"
  3. El sistema importa los colaboradores que existen en el ERP y no en CPR

Sincronizar centros de costo

  1. Ve a Configuración > Centros de Costo
  2. Haz clic en "Sincronizar"
  3. Se importan los centros de costo del ERP

Sincronizar extractos bancarios

  1. Ve a Configuración > Catálogos ERP > Extractos
  2. Haz clic en "Refrescar desde ERP"
  3. Se importan los últimos extractos bancarios de Odoo

Sincronizar bancos propios

  1. Ve a Configuración > Catálogos ERP > Bancos
  2. Haz clic en "Refrescar desde ERP"
  3. Se importan las cuentas bancarias registradas en el ERP

Sincronizar cajas chicas

Las cajas chicas también se sincronizan desde el ERP:

  1. Ve a Configuración > Cajas Chicas
  2. Haz clic en "Sincronizar desde ERP"
  3. Se importan las cajas chicas (fondos fijos) configuradas en el ERP

Asientos contables

Cuando una liquidación es aprobada, CPR genera los asientos contables en el ERP:

Simular asientos

Antes de aplicar contablemente, puedes simular los asientos:

  1. Ve al detalle de la liquidación aprobada
  2. Haz clic en "Simular asientos"
  3. Revisa los asientos generados

Panel de simulación de asientos con tabla: Cuenta ERP, Descripción, Tipo (Debe/Haber), Monto, Centro de Costo. Dos secciones: 'Asientos de Provisión' y 'Asientos de Aplicación'. Resumen de total debe y total haber (deben ser iguales)

Aplicar contablemente

  1. Revisa la simulación
  2. Haz clic en "Aplicar contablemente"
  3. Los asientos se crean en el ERP
  4. Se registra el ID de referencia del asiento en la liquidación

Sincronización de provisión

Si la liquidación aún no tiene todas las compensaciones resueltas, puedes sincronizar la provisión primero y aplicar la aplicación después del cierre.

Integración con Nisira

CPR también soporta integración con Nisira ERP como alternativa a Odoo. La configuración es similar pero cuenta con su propio adaptador.

ERP Strategy Pattern

El sistema utiliza un patrón de estrategia que permite tener múltiples implementaciones de ERP:

EstrategiaEstadoFuncionalidad
Odoo ErpCompletoCatálogo de cuentas, impuestos, bancos, extractos, colaboradores, facturas, pagos, provisiones, cierre
Nisira ErpParcialSincronización básica, liquidaciones, pagos (en desarrollo)

La selección del ERP se realiza automáticamente según la configuración de cada empresa.

File Gateway (Almacenamiento externo)

Los archivos adjuntos (comprobantes, vouchers, sustentos) se almacenan en un servicio externo de archivos:

  • Upload: Los archivos se suben al gateway mediante API
  • Acceso temporal: Se generan enlaces de visualización con tiempo limitado
  • Formatos soportados: PDF, JPG, PNG, Excel, Word

Esto permite liberar espacio en la base de datos y centralizar el almacenamiento documental.

Tareas de sincronización asíncronas

Las operaciones de integración con el ERP se procesan de forma asíncrona mediante una cola de tareas:

  1. Cuando una liquidación se aprueba, se crea una tarea de sincronización
  2. Un trabajador programado recoge la tarea cada 20 segundos
  3. La tarea se procesa contra el ERP correspondiente
  4. Si falla, se reintenta automáticamente y se registra el error
  5. El estado técnico de la liquidación refleja el progreso (ver Estados del sistema)

Tipos de tareas de sincronización

TareaDescripción
ProvisiónGenerar asiento de provisión contable en el ERP
AplicaciónAplicar asientos definitivos post-cierre
PagoRegistrar desembolsos en el ERP
CompensaciónSincronizar compensaciones (devoluciones/reembolsos)

Logs de integración

Los logs de integración registran cada interacción con el ERP:

CampoDescripción
FechaCuándo se realizó la llamada
TipoSincronización, mapeo, asiento, etc.
EstadoÉxito o error
MensajeDetalle de la operación
ID de referenciaID del asiento o registro en el ERP

Accede a los logs desde Configuración > Integraciones > Logs.

Sistema Cuentas por Rendir - La Joya Mining