Professional Software
STEL Order × Shopify Integration
Evolución de una integración comercializada entre Shopify y STEL Order para automatizar pedidos, facturación y sincronización de productos, clientes y stock.
Resumen
Muchas empresas que gestionan su negocio con un ERP también venden a través de un eCommerce, y mantener la información replicada a mano entre ambos sistemas es lento y propenso a errores. Este proyecto conecta Shopify, una de las plataformas de eCommerce más utilizadas, con STEL Order, un software de gestión en la nube para facturación, inventario y clientes.
La integración evolucionó desde una primera versión centrada en transferir información de Shopify a STEL Order hasta una solución que automatiza la gestión de pedidos, facturación, clientes, productos y stock. El usuario, sin necesidad de conocimientos técnicos, instala la app desde la Shopify App Store y configura qué información se sincroniza y cómo se comportan los procesos según el flujo de trabajo de su negocio.
Aspectos destacados
- Sistema comercializado de integración entre Shopify y STEL Order, publicado como app en la Shopify App Store e incluido en la suscripción de STEL Order
- Fue parte de mi trabajo final de máster (Máster Universitario en Ingeniería del Software) en colaboración con la empresa STEL Order
- Me encargué íntegramente del plugin de Shopify y del microservicio de integración; la arquitectura general y la plantilla base para futuras integraciones se definieron junto al equipo de desarrollo de STEL Order
- Diseñado como base reutilizable: cada nueva plataforma se integra creando un microservicio a partir de una plantilla común y un plugin propio
- Trabajo premiado y realizado en el marco del «PROGRAMA ENCUENTRO TF» dentro de las actividades del Campus de Excelencia Mare Nostrum 37/38, subvencionadas con la financiación de la Dirección General de Universidades e Investigación de la Consejería de Medio Ambiente, Universidades, Investigación y Mar Menor
Arquitectura
Se analizaron tres alternativas (basada en plugin, en un único microservicio y en microservicios) y se eligió la arquitectura de microservicios porque evita un punto único de fallo y permite escalar a nuevas integraciones reutilizando una plantilla común.
El flujo es Shopify → Plugin de integración → Microservicio → API de STEL Order. El plugin, desarrollado en TypeScript con Remix y Prisma, gestiona la instalación mediante OAuth 2.0, recibe los webhooks de Shopify y ofrece la interfaz para crear y configurar integraciones y consultar el historial de eventos. El microservicio, desarrollado en Java con Spring Boot siguiendo arquitectura limpia y estilo REST, filtra los campos configurados, transforma los datos al modelo de STEL Order y emite los eventos aplicando patrones como Strategy, Factory y Adapter.
Posteriormente, la solución evolucionó hacia una sincronización bidireccional de catálogo y stock.

Retos técnicos
- Mantener la compatibilidad entre los modelos de datos de Shopify y STEL Order
- Gestionar productos con variantes y diferentes configuraciones de catálogo
- Coordinar la sincronización de información en ambas direcciones
- Evitar duplicidades durante la sincronización de productos
- Permitir que el comportamiento de la integración sea configurable según el flujo del negocio
- Integrar el proceso de pedidos con la generación y gestión de facturas
- Adaptar conceptos que no existían en STEL Order, como las variantes de producto, para que se sincronizaran correctamente
- Garantizar que ningún evento se pierda: cada evento se persiste como pendiente antes de procesarse para poder reintentarlo si falla
- Asegurar la comunicación entre Shopify, el plugin y el microservicio combinando OAuth 2.0, tokens de sesión de Shopify y JWT
Funcionalidades
- Automatización de pedidos entre Shopify y STEL Order
- Generación de pedidos y facturas según el flujo configurado
- Sincronización de clientes y productos
- Sincronización bidireccional de catálogo y stock
- Configuración de campos sincronizados
- Gestión de productos con variantes
- Detección de productos duplicados
- Configuración de estados que desencadenan operaciones
- Integración del flujo de facturación con Verifactu
- Control de los productos incluidos en la sincronización
Resultado
La primera versión cumplió los objetivos del TFM: un plugin y un microservicio que permiten a cada usuario elegir qué entidades y atributos transferir de Shopify a STEL Order, validados con pruebas de contrato automatizadas (Rest Assured, Spring Boot Test y Testcontainers).
A partir de esa base, la integración evolucionó hacia una solución comercializada capaz de automatizar pedidos y facturación compatible con Verifactu y, posteriormente, sincronizar productos y stock en ambas direcciones con campos y criterios configurables.