TryCatch Technologies

Arquitectura · 12 de marzo de 2026 · 10 min de lectura · Equipo TryCatch

Implementar SAP Business One conectado con Shopify: arquitectura recomendada

Cómo diseñamos integraciones SAP Business One ↔ Shopify robustas, idempotentes y observables en producción.

Implementar SAP Business One conectado con Shopify: arquitectura recomendada

Integrar SAP Business One con Shopify es uno de los proyectos donde más fallan los equipos sin experiencia. Los problemas no suelen estar en los endpoints, sino en el diseño: idempotencia, consistencia eventual, manejo de errores y observabilidad. Esta es la arquitectura que aplicamos en TryCatch Technologies.

Modelo de capas

  1. Capa de origen: SAP B1 (Service Layer + DI-API) y Shopify (Admin API + webhooks).
  2. Capa de middleware: servicio Node.js o Python con colas (RabbitMQ/SQS) y reintentos.
  3. Capa de persistencia: base de datos relacional para el mapeo bidireccional y dedupe.
  4. Capa de observabilidad: logs estructurados, métricas y alertas (Datadog o Grafana).

Flujos clave

Productos y stock (SAP → Shopify)

SAP es la fuente de verdad. Pull periódico cada 5-15 min para deltas + push reactivo desde SAP cuando hay cambios masivos. En Shopify usamos GraphQL bulk operations para sincronizar catálogos grandes sin agotar el rate limit.

Pedidos (Shopify → SAP)

Webhook orders/create de Shopify → cola → idempotente vs Service Layer. Si el pedido falla, el reintento debe ser seguro (no duplicar). Una buena clave: shopify_order_id como external reference en SAP.

Facturación

SAP genera la factura y la envía a Shopify como nota o atributo del pedido. Para compliance (VeriFactu, e-factura UE) la factura nace siempre en SAP.

Principios de diseño

  • Idempotencia: cada operación debe poder ejecutarse N veces sin efectos colaterales.
  • Backpressure: respeta los rate limits de ambas plataformas con colas y throttling.
  • Observabilidad: cada mensaje debe tener un correlation_id rastreable extremo a extremo.
  • Dead-letter queue: ningún mensaje se pierde; los errores fatales esperan revisión humana.
  • Reconciliación: job diario que compara catálogos y detecta divergencias.

Antipatrones que evitamos

  • Llamar directamente a Service Layer desde Shopify Functions: viola la separación de capas.
  • Sincronización en tiempo real bidireccional sin colas: causa race conditions.
  • Mapear precio directamente entre sistemas sin un servicio de pricing dedicado.
  • No registrar el payload original: imposibilita el debugging post-mortem.

Tiempo y coste típicos

Una integración SAP B1 + Shopify estándar (catálogo, stock, precios, clientes, pedidos, facturas) toma 8-12 semanas y entre 25k-60k€ según volumetría y reglas custom. Casos B2B con listas de precio segmentadas y catálogos por cliente pueden extenderse a 16-20 semanas.

Preguntas frecuentes

¿Service Layer o DI-API?

Service Layer (REST/OData) para el 95% de los casos. DI-API solo cuando se necesitan operaciones que aún no están en Service Layer.

¿Real-time o batch?

Híbrido: webhooks de Shopify para pedidos en tiempo real y batches programados para catálogo y reconciliación.

¿Qué pasa si SAP está caído?

Las colas amortiguan el downtime. Cuando SAP vuelve, los mensajes se procesan en orden con idempotencia.

¿Tienes un proyecto en mente?

Hablemos. Resolvemos dudas técnicas, hacemos discovery y diseñamos la arquitectura de tu próximo ecommerce o integración ERP.

Artículos relacionados