Integrar Sage con PrestaShop o Shopify es posible pero tiene particularidades técnicas que lo diferencian de otros ERPs. Sage no es un producto único: Sage 200, Sage X3 (Enterprise Management), Sage 50 y Sage Despachos son productos completamente distintos con arquitecturas diferentes. Sage 200 usa base de datos SQL Server y se accede vía COM objects o consultas directas. Sage X3 tiene una API web propietaria. Sage 50 trabaja con archivos locales. Cada versión requiere un enfoque de integración diferente.

La buena noticia es que Sage 200 y Sage X3 —las versiones más usadas en empresas B2B industriales en España— sí se pueden integrar con tiendas online de forma robusta usando un middleware como Integrafy. La mala noticia es que no es tan directo como con ERPs que tienen APIs REST modernas (Odoo, Business Central). Sage requiere conectores específicos que hablen su lenguaje, y el middleware debe traducir esa comunicación al estándar que las tiendas entienden.

Sage 200 vs Sage X3: diferencias técnicas para integración

Sage 200 (Sage 200 Advanced, Standard)

Sage 200 almacena datos en SQL Server. El acceso a datos se puede hacer de tres formas: COM automation objects (la forma "oficial" que respeta la lógica de negocio de Sage), acceso directo a SQL Server (lectura rápida pero escritura arriesgada porque salta las validaciones) y la API REST de Sage 200 (disponible en versiones recientes, pero limitada en cobertura funcional).

Para integración eCommerce, la combinación recomendada es: lectura vía SQL Server (consultas de catálogo, stock, precios — rápido y sin carga para Sage) + escritura vía COM (creación de pedidos, clientes — respeta validaciones). La API REST de Sage 200, aunque existe, no cubre todos los objetos de negocio necesarios para una integración completa.

Sage X3 (Enterprise Management)

Sage X3 tiene una arquitectura más moderna. Su API web (Web Services SOAP y, en versiones recientes, REST) permite acceso a la mayoría de objetos de negocio: artículos, stock, pedidos de venta, clientes, tarifas. La ventaja de X3 es que la API pasa por la capa de negocio: las validaciones, los workflows y las reglas de precio se ejecutan al crear un pedido vía API igual que si lo crease un usuario en pantalla.

El inconveniente de Sage X3 es que la documentación de la API es limitada comparada con SAP u Odoo, y la configuración de los web services requiere conocimiento de la herramienta de personalización de X3 (Syracuse, Crystal Reports, workflow engine). Un consultor Sage X3 es necesario para configurar los endpoints y los objetos expuestos.

Paso 1: Auditoría del Sage y definición de alcance

Antes de integrar, necesitas saber qué versión exacta de Sage tienes (Sage 200 Standard, Sage 200 Advanced, Sage X3 v11, v12), qué módulos usas (ventas, compras, stock, CRM), cómo gestionas los precios (tarifas, listas de precios, descuentos por cliente) y cuál es el volumen de datos (productos, clientes, pedidos diarios). Esta auditoría determina el método de conexión y el coste del proyecto.

Paso 2: Configurar el conector Sage en el middleware

Para Sage 200, Integrafy configura un conector que combina SQL Server para lectura y COM para escritura. El conector se instala en un servidor con acceso a la base de datos de Sage y a la librería COM de Sage 200. Para Sage X3, el conector usa los web services nativos, configurados desde el entorno de administración de X3.

En ambos casos, el conector se configura con: cadena de conexión (SQL Server para 200, URL del servicio web para X3), credenciales de acceso (usuario de Sage con permisos adecuados), empresa/base de datos (Sage puede tener múltiples empresas) y mapeo de campos entre Sage y el middleware.

Paso 3: Sincronizar catálogo de productos

En Sage 200, los productos están en la tabla StockItem (artículos) con sus detalles en tablas relacionadas (precios, unidades, categorías). En Sage X3, los artículos se gestionan como objetos ITM con dimensiones, unidades de stock y unidades de venta. El middleware extrae los datos maestros, los transforma al formato de la tienda (título, descripción, SKU, peso, dimensiones, categorías) y los sincroniza.

El punto clave es la gestión de variantes. Sage no tiene un concepto de "producto configurable" como Magento o PrestaShop. Un artículo con 3 tallas se gestiona como 3 artículos independientes con un código padre. El middleware debe agrupar estos artículos en un producto con variantes en la tienda, algo que requiere reglas de agrupación configurables.

Paso 4: Sincronizar stock y precios

El stock en Sage 200 se consulta desde la tabla StockBalance o vía la vista de stock disponible. En Sage X3, desde el objeto SOH (Stock On Hand). El middleware consulta periódicamente o por eventos y actualiza la tienda. Para precios, Sage 200 usa el objeto SalesPrice con listas de precios por grupo de cliente. Sage X3 usa la tarifa de ventas (Sales Price List) con múltiples niveles.

La complejidad está en los descuentos. Sage aplica descuentos por cliente, por familia de producto, por volumen y por promoción. Replicar toda esta lógica en PrestaShop o Shopify es impracticable. Lo que hace el middleware es calcular el precio neto final para cada combinación producto-grupo de cliente y sincronizarlo como precio fijo en la tienda. El cálculo lo hace Sage (vía COM o API), no el middleware.

Paso 5: Gestionar pedidos y sincronización bidireccional

Cuando un cliente hace un pedido en PrestaShop o Shopify, el middleware crea un pedido de venta en Sage. En Sage 200 esto se hace vía COM (objeto SOPOrder). En Sage X3, vía el web service de pedidos de venta (SOH object). El middleware mapea: cliente web → cliente Sage, productos web → artículos Sage, dirección de envío → dirección de entrega Sage, forma de pago → condiciones de pago Sage.

Los estados del pedido en Sage se sincronizan de vuelta a la tienda: confirmado, en preparación, enviado (con número de tracking del transportista), facturado. El middleware monitoriza los cambios de estado en Sage y actualiza la tienda automáticamente. El cliente puede ver el progreso de su pedido sin que nadie en tu empresa tenga que actualizarlo manualmente.

Tiempos y costes de implementación

Una integración Sage 200 + PrestaShop con flujos estándar (catálogo, stock, pedidos, clientes) se implementa en 6-10 semanas con un coste de 12.000-25.000 €. Sage X3 + Shopify suele ser algo más rápido (la API de X3 es más completa) pero requiere consultor Sage para configurar los web services: 8-12 semanas, 15.000-30.000 €.

Si necesitas B2B avanzado (precios por cliente, multi-tarifa, gestión de crédito desde Sage), el proyecto se extiende 3-4 semanas y suma 8.000-15.000 € adicionales. El mantenimiento con middleware es de 500-1.500 €/mes que incluye soporte, monitorización y actualizaciones de conectores ante nuevas versiones de Sage.

El error más costoso es intentar la integración con plugins genéricos que no conocen las particularidades de Sage. Los plugins WooCommerce-Sage o PrestaShop-Sage del marketplace son limitados y suelen acceder por SQL directo sin validaciones de negocio. Un pedido creado directamente en SQL sin pasar por COM puede generar inconsistencias contables que son muy difíciles de detectar y corregir. El middleware de Integrafy siempre escribe en Sage a través de la capa de negocio, garantizando la integridad de datos.