Todos los trabajos
Open source2024En curso

Vendure Data Hub

Plugin ETL y de integración de datos para Vendure. Constructor visual de pipelines, 9 extractores, 61 operadores de transformación, 24 loaders de entidades y generadores de feeds para Google Merchant y Amazon.

De un vistazo

9
Extractores (verificables en el repositorio)
61
Operadores de transformación con vista previa
24
Loaders de entidades de Vendure
4
Generadores de feeds de marketplaces

El desafío

Los proyectos Vendure reconstruyen una y otra vez la misma fontanería: importaciones de producto desde ERP y PIM, sincronización de inventario, actualizaciones de precios, feeds de marketplaces. Cada integración empieza de cero, acaba en scripts de un solo uso y se rompe en silencio cuando un proveedor cambia una columna. El ecosistema carecía de una capa de pipelines de datos reutilizable y lista para producción.

Nuestro enfoque

Data Hub es un plugin Vendure de primera clase: pipelines declarativos compuestos por extractores (CSV, JSON, XML, REST, GraphQL, FTP, S3 y más), 61 operadores de transformación con vista previa en seco y loaders para 24 tipos de entidades de Vendure. Los pipelines corren por programación o webhook, con reintentos, upserts idempotentes, logs en tiempo real y editor visual en el admin. Los generadores de feeds publican Google Merchant y Amazon desde el mismo grafo.

Arquitectura del sistema

Cargando diagrama...

Arquitectura del sistema: Product Event, Event Subscriber, Delta Capture, HMAC-Signed Webhook, Target System, Pimcore Webhook, Signature Validation, Data Class Mapping, Transactional Write, Failure, Dead Letter Queue, Auto Retry

Decisiones de ingeniería

Pipelines declarativos, no scripts a medida

Cada integración es configuración que un revisor puede leer, no un script único enterrado en un repositorio. Extractores, transformaciones y loaders componen un grafo de pipeline. El compromiso: una curva de aprendizaje corta a cambio de integraciones que sobreviven a los cambios de equipo y a las rarezas de los proveedores.

Upserts idempotentes por defecto

Los proveedores reenvían archivos y los trabajos reintentan, así que cada loader tiene clave y es seguro ejecutar dos veces. Reejecutar un pipeline converge al mismo estado de catálogo en lugar de duplicar productos. Esto depende de claves externas estables, que pasan a formar parte del contrato de integración.

Vista previa dry-run antes de cualquier escritura

Una transformación errónea en un catálogo en producción es cara de deshacer. Cada pipeline previsualiza la salida exacta de cada operador antes de que los datos toquen Vendure, así los errores se detectan en revisión y no en producción.

Un plugin de Vendure de primera clase, no un sidecar

Data Hub se ejecuta dentro de Vendure usando su modelo de entidades, permisos y admin, en lugar de un servicio aparte. El acoplamiento al ciclo de vida de Vendure es intencional: un sistema que desplegar, un lugar que vigilar.

Tecnologías

Backend
TypeScriptNestJSVendure
Infraestructura
DockerGitHub Actions
Frontend
ReactAdmin UI Extension

Resultados clave

  • Sustituye scripts de importación ad hoc por pipelines declarativos y supervisados
  • Los upserts idempotentes hacen seguras las repeticiones por diseño
  • La vista previa muestra cada transformación antes de tocar la tienda
  • Publicado como open source: el código es la referencia

El resultado

Un solo plugin sustituye los scripts de integración de un proyecto de comercio típico. Publicado como open source en GitHub; probado en producción con importaciones de catálogos de alto volumen y verificable operador a operador en el repositorio.

Cómo es un proyecto de comercio sobre Data Hub

En un proyecto, Data Hub es la capa de integración, para que el equipo se centre en la tienda y el negocio en lugar de la fontanería.

  • Conectamos sus feeds de ERP, PIM y proveedores como pipelines declarativos
  • Los mapeos se previsualizan en dry-run antes de llegar al catálogo en producción
  • Los pipelines corren por horario o webhook con reintentos, registros y upserts idempotentes
  • Los feeds de Google Merchant y Amazon se publican desde el mismo grafo
  • El plugin y los pipelines son suyos: open source y ampliables por usted