Bentian ERP Bridge fue concebido originalmente con un conector dedicado para Factusol. Sin embargo, para responder a las necesidades de empresas con software de gestión heterogéneo y facilitar migraciones comerciales sin fricción, el motor del Agente ha evolucionado hacia una arquitectura polimórfica desacoplada basada en el patrón Strategy.
1. El Patrón Strategy y el Contrato IErpConnector
Todo el motor de sincronización (LocalSyncEngine) y las interfaces de usuario interactúan exclusivamente contra el contrato canónico IErpConnector:
Este desacoplamiento permite que los adaptadores especializados (FactusolAdapter, SimplyGestAdapter, etc.) traduzcan las particularidades de cada base de datos (por ejemplo, F_ART/F_PCL en Factusol vs ARTICULOS/PEDIDOS_VENTA en SimplyGest) sin modificar el núcleo de sincronización ni violar los módulos sellados (Code Freeze).
2. ErpProviderRegistry y Resolución Determinista
El registro central de proveedores (ErpProviderRegistry) gestiona el ciclo de vida de los adaptadores registrados. Resuelve el software activo de forma determinista siguiendo una jerarquía estricta:
- Configuración moderna SSoT:
softwareErp.activeProvider. - Fallback retrocompatible legacy:
cfg.erpType. - Heurística de rutas: si solo una base de datos está configurada en disco, se selecciona automáticamente.
- Proveedor predeterminado del sistema: Factusol.
3. Modelo Single Active ERP (Cero Coexistencia Destructiva)
En entornos empresariales, permitir que dos ERPs distintos sincronicen existencias simultáneamente hacia la misma tienda online provocaría colisiones críticas de stock, sobreventas y duplicidad de pedidos. Bentian aplica una regla de ingeniería inmutable:
activeProvider). Al conmutar de ERP en la GUI, el conector previo se desconecta de forma limpia y cede el control exclusivo del motor de sincronización y del file watcher al nuevo proveedor seleccionado. La interfaz gráfica oculta por completo los controles del software inactivo para evitar confusión operativa.
4. Aislamiento Anti-Wiping en AppData
Para que el usuario pueda probar o alternar de software sin perder sus parámetros de trabajo, la configuración de cada ERP se almacena en espacios de nombres estrictamente aislados dentro de %APPDATA%Bentian Agentagent-config.json:
Gracias a esta estructura, al cambiar de SimplyGest a Factusol (o viceversa), las rutas NAS, series de facturación y tarifas del software anterior se conservan al 100% en disco sin borrados destructivos.
5. Matriz de los 6 ERPs Comerciales Estándar
El panel de escritorio de Bentian incorpora un diálogo de selección en cuadrícula 3x2 con las 6 soluciones ERP comerciales líderes en el mercado de la pyme española:
| Software ERP | Fabricante | Protocolo de Conexión | Estado en Bentian |
|---|---|---|---|
| Factusol | Software DELSOL | OLEDB Nativo (.accdb / .mdb) | Producción Certificada (Stable) |
| SimplyGest Desktop | SimplyGest Software | OLEDB Local (Datos.mdb) | Producción Certificada (Stable) |
| Holded Cloud ERP | Holded Technologies | REST API v1 / Webhooks | Producción Certificada (Stable) |
| Sage 50 / Sage 200 | Sage Group plc | ODBC / Sage Connected API | En Certificación |
| Odoo ERP | Odoo S.A. | XML-RPC / JSON-RPC | En Integración |
| A3ERP | Wolters Kluwer | SQL Server Nativo / SDK | En Integración |