Francodesystems
EcommerceIntegración a medida

Integrar Shopify con Holded

Facturación, stock y devoluciones de Shopify a Holded en tiempo real.

Holded
SHO
Shopify

Tiempo de implantación · 5-10 días laborables

Diagnóstico

El problema

Generar facturas a mano desde el panel de Shopify se come 6-10 horas por semana en una tienda con 200+ pedidos/mes. Y el stock siempre va con desfase, lo que provoca ventas de productos sin existencias.

Propuesta

La solución

Cada pedido de Shopify genera la factura correspondiente en Holded automáticamente. El stock se sincroniza en ambos sentidos. Las devoluciones corrigen factura y stock sin intervención manual.

Scope

Qué automatizamos

  • Pedido Shopify → cliente + factura en Holded
  • Cliente nuevo → ficha + asignación a serie de facturación correcta
  • Producto Shopify → producto Holded sincronizado
  • Stock bidireccional (Shopify ↔ Holded)
  • Devolución Shopify → factura rectificativa + ajuste de stock
  • Multidivisa y multi-IVA (B2C, B2B intracomunitario, exportaciones)
Arquitectura

Cómo lo construimos

Webhook de Shopify → cola BullMQ → worker idempotente que consulta API de Holded. Reintentos con backoff exponencial. Logs estructurados de cada operación para auditoría.

flow.ts
webhook shopify.event
queue.enqueue(jobId)
worker.handle() // idempotente
holded.api.call() // retries con backoff
log.emit({ status: 'ok' })
FAQ

Preguntas frecuentes

¿Qué pasa con las devoluciones parciales?

Generamos una factura rectificativa parcial en Holded con la cantidad exacta devuelta y ajustamos stock únicamente de las unidades retornadas.

¿Soporta multi-divisa?

Sí. Tomamos el tipo de cambio del pedido Shopify y lo registramos en Holded en la divisa correspondiente con su contravalor en EUR.

¿Cómo gestionáis el IVA intracomunitario?

Detectamos el país del comprador y su NIF intracomunitario, aplicamos el tipo correcto (0% B2B con VIES válido, IOSS para B2C UE, etc.) y registramos los modelos correspondientes.

¿Y si Shopify o Holded están caídos?

La cola retiene el pedido y reintenta con backoff exponencial durante 24 h. Si falla definitivamente, alerta al equipo para resolución manual sin perder datos.

¿Hablamos de tu integración con Shopify?

Llamada de 30 minutos sin compromiso. Salimos con alcance y precio.