v2.6.2 Última versión

Corrección

Corrección crítica: la tarea programada de exportación ya no propagaba a Shopify las modificaciones de precio ni de contenido hechas en Dolibarr, y así desde la versión 2.2.0 como mínimo (solo funcionaban la sincronización manual y la creación de un producto). Ahora un precio modificado pasa al principio de la cola, las demás modificaciones (título, descripción, fotos) se atienden mediante una parte reservada de cada pasada, y todos los productos, variantes incluidas, se procesan por turno en lugar de los mismos 10 cada vez. Tras la actualización, desactive y vuelva a activar el módulo para aplicar la migración: los precios modificados en los últimos 30 días se envían entonces a Shopify en las pasadas siguientes

Corrección

Las variantes eliminadas voluntariamente en Dolibarr ya no son recreadas por la herramienta «Reparar variantes» cuando Dolibarr es la fuente de verdad, y un producto desvinculado ya no toca la ficha Shopify de su antiguo padre (ya no puede sustituirla por una única variante)

Corrección

La reactivación del módulo ya no produce el error «Duplicate entry 'card-1-1'» (duplicado de correspondencia de pago) y la vinculación de los ajustes a la tienda se completa; una base ya afectada se repara automáticamente en la próxima activación

Corrección

Un producto cuyos dos atributos de Dolibarr llevan la misma etiqueta ya no es rechazado en bucle por Shopify: los atributos homónimos se fusionan en una sola opción, y un producto que superaría el límite de opciones de la tienda se rechaza localmente con un mensaje que nombra las opciones y variantes implicadas, sin enviar nada a Shopify

Corrección

Stock: el módulo ya no inventa nunca una cantidad de referencia de 0. Una línea cuya referencia de stock es desconocida se rechaza por sí sola, y las demás líneas del lote se envían con normalidad

Mejora

La herramienta «Reparar variantes» aparece atenuada, con el motivo indicado, en cuanto Dolibarr es la fuente de verdad de los productos de la tienda; los atributos se encuentran por su etiqueta sin distinguir mayúsculas, acentos ni puntuación

v2.6.1

Corrección

El stock de Dolibarr vuelve a enviarse a Shopify: las actualizaciones se rechazaban en cuanto un producto ya tenía stock en línea («changeFromQuantity»). El módulo lee ahora la cantidad realmente registrada en Shopify, envía solo la diferencia, agrupa las actualizaciones por lotes, y una caída pasajera de Shopify ya no deja los productos en fallo definitivo; los productos bloqueados se vuelven a poner en cola automáticamente

Corrección

La API REST del módulo respondía con un error 500 desde la 2.6.0, incluso con una clave válida: corregido y verificado en HTTP real sobre Dolibarr 18 y 24 desde el paquete entregado

Corrección

Las herramientas de mantenimiento por fin se abren (la pestaña fallaba al abrirse), y se retira la pestaña «Mapeo de estados», que no tenía ningún efecto sobre sus pedidos — sus antiguos enlaces redirigen a «Configuración de pedidos»

Corrección

La pestaña Webhooks ya no falla: desmarcar «Procesamiento inmediato» o vaciar un campo numérico provocaba un error fatal, y elegir la línea vacía en «Usuario de los webhooks» hacía que todos sus webhooks respondieran con un error 500

Corrección

Guardar la categoría de producto de una tienda ya no borra en silencio sus etiquetas de pedido, factura y presupuesto. A comprobar: abra la ficha de cada tienda, pestaña «Categorías y etiquetas», y verifique que las tres etiquetas están rellenadas

Corrección

Una colección manual ya no se confunde con una automática: sus productos vuelven a asociarse, y las colecciones gestionadas por condiciones se señalan aparte en la pantalla de sincronización

Nuevo

Un pedido cuyo cliente no tiene correo electrónico (solo teléfono, por ejemplo) ahora se importa: el cliente se encuentra por su identificador de Shopify, su teléfono o su nombre y dirección, y se crea sin correo como último recurso

Mejora

La imagen de una colección ya no se reenvía a Shopify en cada sincronización: menos archivos duplicados y ciclos más cortos (cada imagen se reenvía una sola vez tras la actualización)

Mejora

La herramienta «Fotos duplicadas» solo propone copias realmente idénticas, nada viene marcado por defecto y el módulo vuelve a comprobar antes de eliminar

Mejora

La exportación JSON de un producto ya no confunde un SKU numérico con un identificador de Shopify, y el registro dedicado del módulo por fin puede ser más detallado que el de Dolibarr (nivel Debug)

v2.6.0

Nuevo

El módulo lleva ahora su propio registro: cada ciclo de sincronización queda trazado con un identificador, su procedencia — tarea programada, pantalla, webhook, API — y su balance (duración, productos tratados, errores, imágenes). Una solicitud de asistencia empieza ahora con hechos en lugar de una serie de preguntas

Nuevo

Se escribe una línea al INICIO de cada ciclo, antes de cualquier trabajo. Ese es el punto decisivo: sin ella, un planificador detenido y un planificador que se ejecuta sin nada que hacer dejan exactamente la misma ausencia de rastro. Con ella, «último ciclo programado: hace cuatro días» se convierte en una respuesta

Nuevo

Nuevo botón «Descargar el registro (CSV)»: lo descarga y lo adjunta a su mensaje. Está deliberadamente acotado y contiene exactamente lo que se muestra en pantalla — ningún contenido de pedido, ningún dato personal de sus clientes

Nuevo

Conexión con Shopify: aparece una página de confirmación, una sola vez, en la próxima reconexión de su tienda — muestra la dirección de su Dolibarr y solicita confirmación antes de transmitir nada; las siguientes reconexiones desde la misma dirección vuelven a ser silenciosas como antes

Seguridad

Seguridad: sus credenciales de Shopify (token de acceso, claves API) ya no se muestran en texto claro en la pantalla de configuración, la exportación de diagnóstico ahora enmascara cualquier campo de aspecto sensible sea cual sea su nombre, y una licencia ahora puede revocarse correctamente cuando sea necesario

Mejora

El registro se escribe en una conexión independiente a la base de datos: su rastro subsiste incluso cuando la operación que describe falla y deshace sus propias escrituras. Dicho de otro modo, el fallo más interesante es justamente el que deja rastro

Mejora

Esta versión incorpora además diez lotes de trabajos anteriores que nunca se publicaron: refuerzo de la recuperación de la conexión con Shopify, límite de intentos de vinculación de licencia, acotación de la revalidación de licencia con fallo visible, y retirada de datos personales de los registros de la web

v2.5.7

Corrección

Corrección crítica: en una tienda Shopify configurada con varias ubicaciones/almacenes, el ciclo de re-sincronización de solo el stock (cuando el contenido del producto no ha cambiado desde el último envío) era rechazado sistemáticamente por Shopify. Un integrador nos reportó 141 errores de 158 productos, quedando el stock mostrado en Shopify con su valor antiguo sin que pasara ninguna actualización. La causa: la cantidad de referencia se comparaba con un stock de Shopify de todas las ubicaciones combinadas, cuando Shopify en realidad la compara con la única ubicación configurada para su tienda — invisible en una tienda de una sola ubicación, el defecto aparece en cuanto existe una segunda ubicación. Ahora se lee siempre en la ubicación realmente configurada para su tienda. Tras la actualización, relance una sincronización de stock para los productos previamente en error

Corrección

Corrección: un producto con varias variantes ya no ve todas sus variantes bloqueadas por el problema de una sola — si una variante no puede resincronizarse en un ciclo dado, las demás variantes del mismo producto, correctamente sincronizadas, ya no quedan retenidas junto con ella

Corrección

Corrección: un problema real de configuración de ubicación de Shopify (ubicación eliminada, no válida o desactivada — por ejemplo, un antiguo almacén cerrado pero no eliminado) se señala ahora claramente en los registros y en el resumen de sincronización, con la acción a realizar según el caso. Un identificador de ubicación mal configurado se detecta además ahora de inmediato, sin esperar a la llamada a Shopify

Corrección

Corrección: una ralentización temporal impuesta por Shopify (límite de frecuencia, normal en un catálogo voluminoso) nunca se confunde con este problema de configuración de ubicación — sigue el camino normal, con un nuevo intento en el siguiente ciclo

Corrección

Corrección: un artículo correctamente definido con un stock a cero ya no se confunde nunca con un artículo cuya cantidad no ha podido leerse — un stock legítimamente nulo en la ubicación configurada se envía ahora correctamente a Shopify

Corrección

Corrección: en una instalación con varias tiendas Shopify, el seguimiento de sincronización de un producto permanece correctamente aislado por tienda, sin mezcla entre tiendas; los dos contadores introducidos por esta versión son además ahora visibles directamente en la pantalla de sincronización manual, como paneles dedicados

Mejora

El paquete de instalación vuelve a estar por debajo de 2 MB, instalable desde la pantalla de despliegue de Dolibarr sea cual sea el límite de subida por defecto

v2.5.6

Corrección

Corrección crítica, impacto contable: desde la actualización del 18 de septiembre de 2026 (versión 2.5.5), un pedido de Shopify con un descuento global (código promocional o descuento automático aplicado a varios artículos) podía importarse con un descuento cercano al doble del realmente concedido por Shopify. En un pedido de 2.520,00 € sin IVA con un descuento del 5 % (126,00 € sin IVA), la importación aplicaba 245,70 € sin IVA. El importe del descuento global se toma ahora directamente del reparto que Shopify ya calcula por artículo, leído una sola vez: el doble cómputo pasa a ser estructuralmente imposible

Corrección

Corrección: un descuento dirigido solo a una parte de sus artículos (por ejemplo, «-10 % en artículos en oferta») podía, en algunos casos, calcularse sobre el valor de todos los artículos del pedido en lugar de solo los afectados, presente desde la misma actualización del 18 de septiembre

Corrección

Corrección: con algunas aplicaciones de descuento de terceros o Shopify Functions que ya reflejan el descuento global en el precio que muestra Shopify, la primera corrección de esta versión lo volvía a contar una segunda vez. El cálculo ahora lee cada reparto de descuento una sola vez, sea cual sea la forma en que Shopify muestre por otro lado el precio de la línea

Corrección

Corrección: los pedidos de marketplace (Nature & Découvertes y canales similares), que no siempre indican el tipo de IVA en cada artículo, podían ver su descuento global sobrestimado en un 20 %; el módulo recurre ahora al tipo de IVA de su ficha de producto Dolibarr para este cálculo, como ya hace para la línea en sí

Corrección

Corrección: un pedido con IVA mixto (5,5 % y 20 % en el mismo pedido, por ejemplo) repartía todo su descuento global al tipo más alto; ahora se crea una línea de descuento por cada tipo de IVA realmente afectado

Corrección

Un descuento anunciado por Shopify pero no encontrado en el detalle de los artículos ya no desaparece silenciosamente: ahora se registra para su investigación

v2.5.5

Nuevo

El módulo lleva ahora su propio registro, separado del registro general de Dolibarr, y en la pestaña Soporte se ofrece un botón «Descargar el registro del módulo». Si surge un problema, lo adjunta a su mensaje: el diagnóstico empieza con hechos en lugar de una serie de preguntas. La rotación, el archivado y la purga los realiza el propio Dolibarr, así que no hay ningún ajuste adicional que conocer

Corrección

Corrección con impacto contable: un descuento global repartido entre las líneas nunca se aplicaba en dos vías de importación — la importación histórica y la recuperación de un pedido individual, es decir, la vía utilizada tras la notificación de un nuevo pedido. No se solicitaba a Shopify un dato necesario para la decisión, por lo que la condición siempre era falsa: el pedido se registraba a precio completo, sin error ni aviso

Mejora

Un producto que se queda sin imágenes en Shopify ahora se cuenta y se nombra — en la pantalla de sincronización, en el informe de la tarea programada y en el registro. El módulo renuncia al envío cuando no encuentra ninguna imagen en Dolibarr, para no eliminar sus visuales sin sustituirlos; hasta ahora solo lo indicaba en una línea técnica que nadie leía

Corrección

Corrección: el stock de una variante sin correspondencia de SKU nunca se enviaba a Shopify, y nada lo señalaba. La variante permanecía indefinidamente con la cantidad que tenía cuando apareció la discrepancia — vendible estando agotada, o no vendible estando en stock — mientras el informe anunciaba una sincronización correcta

Mejora

Las variantes de Dolibarr sin equivalente en Shopify, y las variantes de Shopify sin equivalente en Dolibarr, ahora se cuentan, se listan por producto y se señalan como no sincronizadas — tanto en el informe de sincronización como en la pantalla de diagnóstico

Corrección

Corrección: un producto cuyas fotos habían desaparecido del lado de Shopify (producto eliminado y vuelto a crear, medios retirados a mano, restauración de una copia de seguridad) no las recuperaba nunca. El módulo se fiaba de una huella de las imágenes de Dolibarr para concluir que Shopify ya las tenía, y ninguna purga borraba esa huella: el procedimiento correcto, aplicado correctamente, no podía funcionar

Mejora

Las purgas borran ahora la memoria de imágenes, un envío omitido se señala en el informe de sincronización, y existe una acción «forzar el reenvío completo de las imágenes» de un producto en la configuración — sin consulta SQL ni purga global

Mejora

Accesibilidad: 52 textos mostrados en nuestros colores de marca no alcanzaban el contraste exigido por las reglas WCAG AA. Corregidos en los correos que enviamos, en las pantallas del sitio y en las hojas de estilo del módulo, mediante variantes oscurecidas que conservan el mismo tono

v2.5.4

Seguridad

A partir del 12 de noviembre de 2026, una licencia caducada detiene la sincronización en ambos sentidos — incluida la entrada de sus pedidos de Shopify en Dolibarr. Hasta ahora solo se suspendían el soporte y las descargas. Si su licencia está activa, nada cambia hasta su vencimiento. La fecha procede de nuestros servidores: si no responden, no se detiene nada

Breaking

El sentido de sincronización del stock ya no es «ambos sentidos» por defecto, sino «de Dolibarr a Shopify». Si ya había elegido un ajuste explícito, se conserva tal cual; si no, revise la pantalla de Configuración

Corrección

Corrección: se mostraba «Su licencia ha caducado» cuando en realidad era nuestro servidor el que no había respondido. Una avería de nuestro lado ya no se presenta como un problema del suyo

Mejora

Ahora se le avisa antes de que caduque su licencia, por correo electrónico y mediante un aviso en el módulo que muestra la fecha exacta

Mejora

Versiones de Dolibarr admitidas: vuelta a 18.0 → 24.x. La 2.5.3 había reducido el rango a 23.0, lo que excluía la 18 — la única rama antigua que sigue manteniéndose. En cada versión se prueban tres objetivos (18, 23, 24); las versiones intermedias se declaran compatibles sin ser probadas

v2.5.3

Corrección

Corrección Multicompany: en instalaciones con Doli2Shop configurado en una entidad distinta de la primera, no se aceptaba ningún webhook. El punto de entrada se ejecutaba siempre en la primera entidad y allí no encontraba el secreto de firma: pedidos, productos y envíos dejaban de llegar, sin ningún mensaje de error, y nada quedaba guardado para reintentarlo

Corrección

Corrección Multicompany: las fotos de producto nunca llegaban a Shopify. Dolibarr guarda los documentos en una subcarpeta con el número de entidad, que el módulo no reconocía — la pantalla de diagnóstico anunciaba «ningún producto con al menos una foto» mientras el ERP sí las mostraba

Corrección

Corrección Multicompany: el IVA de los pedidos importados se calculaba con la ficha de empresa de la primera entidad, y no con la de la empresa correspondiente

Corrección

Corrección Multicompany: las correspondencias de pago por defecto (tarjeta, transferencia, cheque, PayPal…) nunca se creaban en una entidad secundaria. Ahora se crean por entidad y nunca sobrescriben una correspondencia que usted haya modificado

Corrección

Corrección, todas las instalaciones: se escribía un aviso afirmando que una foto no estaba indexada para cada producto y en cada sincronización, incluso cuando sí lo estaba — y cada producto se leía dos veces del disco

Corrección

Corrección, todas las instalaciones: sus fotos de producto se duplicaban con cada notificación de Shopify — bastaba un cambio de precio o de stock para dejar otra copia. Un cliente tenía cuatro ejemplares de la misma imagen en un solo producto, tres de ellos creados el mismo día. Se incluye una pantalla de limpieza para los duplicados ya acumulados: muestra lo que se eliminará antes de actuar y nunca toca una foto que usted haya subido

Mejora

Nuevo documento, en cinco idiomas: el procedimiento de puesta en producción para conectar Doli2Shop a un Dolibarr que ya contiene su historial comercial — el caso de una tienda migrada a Shopify desde PrestaShop, WooCommerce o Magento. Indica además, de forma explícita, aquello de lo que no protege

v2.5.2

Corrección

Corrección crítica: en algunas instalaciones, la conexión con Shopify debía restablecerse manualmente cada día. La tienda predeterminada guardaba dos copias de sus credenciales y la renovación automática solo actualizaba una; como un token de Shopify es de un solo uso, la copia olvidada caducaba. Ahora ambas copias se mantienen sincronizadas

Corrección

Corrección: la etiqueta de cada variante se sustituía por el título del producto principal en cada actualización procedente de Shopify, incluso ante un simple cambio de precio o de stock. Las etiquetas se recalculan ahora igual que en la creación, y la herramienta de reparación las vuelve a encontrar aunque ya se hayan vinculado una vez

Corrección

Corrección: en la pantalla de webhooks, el botón de guardar no tenía ningún efecto — la lista de eventos supervisados no podía modificarse. Un defecto de estructura de la página impedía el envío del formulario

Corrección

Corrección: la pantalla de sincronización de productos y la tarea programada no consideraban el mismo alcance. Un producto clasificado en una subcategoría se sincronizaba sin aparecer nunca en pantalla, que indicaba «ningún producto». Ambas comparten ahora la misma definición, y una nueva fecha de puesta en marcha permite excluir los pedidos anteriores a su paso a Shopify

Corrección

Corrección: en instalaciones con varias tiendas, los contadores de la pantalla de sincronización contaban cada producto tantas veces como tiendas en las que estuviera presente. Los totales mostrados bajarán, por tanto: ahora son correctos

Corrección

Corrección: la importación de pedidos históricos nunca indicaba su estado — «finalizada» permanecía siempre en no, las estadísticas seguían vacías y cambiar la fecha de inicio a mitad de proceso no tenía efecto. La importación informa ahora de su progreso y ya no puede declararse finalizada tras un fallo

Mejora

Mejora de robustez: una solicitud mal formada dirigida al servicio de facturación recibe ahora una respuesta de error clara en lugar de un error de servidor, y no se devuelve ningún mensaje técnico interno al solicitante

v2.5.0

Nuevo

Novedad: cada flujo de sincronización (productos, existencias, precios, pedidos) tiene ahora su propia dirección configurable — de Dolibarr a Shopify, de Shopify a Dolibarr, o ambas. Usted decide, flujo por flujo, qué sistema tiene la referencia

Nuevo

Novedad: una API de control permite lanzar y seguir las sincronizaciones desde sus propias herramientas

Mejora

El módulo está ahora disponible en cinco idiomas: francés, inglés, alemán, español e italiano

Corrección

Corrección crítica: la tarea programada de recuperación de envíos ya no se iniciaba en absoluto, sin dejar el menor rastro en Dolibarr — solo el registro del servidor lo recogía. Una comprobación automática impide ahora que este tipo de fallo silencioso reaparezca

Corrección

Corrección: otras dos tareas programadas fallaban por una razón similar, entre ellas la comprobación del estado de los webhooks — que se averiaba precisamente cuando registraba un incidente, es decir, cuando más se necesitaba

Corrección

Corrección: los productos con variantes generaban una treintena de advertencias en cada sincronización de imágenes

v2.4.8

Corrección

Corrección crítica: consultar una página podía dejar inoperativos los botones de otra. Las llamadas internas del módulo renovaban el token de seguridad de la sesión, y la página Estado activa uno por tienda en cuanto se abre: en una instalación con tres tiendas, la simple consulta de esa página bastaba para que los clics de la página Webhooks fueran rechazados, en silencio

Corrección

Corrección: treinta acciones repartidas en nueve páginas de administración podían rechazarse sin mensaje ni rastro cuando el token de seguridad era denegado — incluida la vinculación de un número de licencia a una tienda, que podía fallar sin indicación alguna. Todas muestran ahora un error explícito

Corrección

Corrección: una sincronización podía apagar los webhooks de las demás tiendas

v2.4.7

Corrección

Corrección: en la pantalla de webhooks se mostraba «Configuración guardada» sin que el estado cambiara. La visualización y el guardado no consultaban la misma fila de la base de datos: se desactivaba un webhook, la página lo confirmaba y nada cambiaba

Corrección

Corrección: la desactivación elimina ahora cada suscripción afectada y no solo la primera encontrada — una fila gemela ya no puede hacer reaparecer un webhook que acaba de retirarse. La activación reutiliza una suscripción existente en lugar de crear otra

Corrección

Las incoherencias heredadas de instalaciones anteriores al soporte multitienda se corrigen por el camino: una fila que quedó «activa» sin suscripción real se restablece

v2.4.6

Corrección

Corrección: con varias tiendas conectadas, la página de Webhooks mostraba la tienda seleccionada pero guardaba en otra — era imposible desactivar un webhook y el botón «Guardar» parecía no hacer nada. La visualización y el guardado comparten ahora el mismo filtro por tienda, y todo error se muestra con claridad en lugar de un mensaje vacío

Corrección

Corrección crítica: en instalaciones con seguridad reforzada (token anti-CSRF renovado en cada página), todas las acciones de administración del módulo se rechazaban en silencio — incluido el asistente de configuración. La verificación se alinea con el núcleo de Dolibarr y todo rechazo se anuncia en pantalla

Mejora

Robustez: un incidente de base de datos al guardar los webhooks ya no provoca una página en blanco — el error se muestra con el webhook afectado y los siguientes se procesan igualmente

v2.4.5

Mejora

El envío de stock hacia Shopify pasa a ser asíncrono: la validación de una factura responde de inmediato, aunque Shopify esté lento o inaccesible (se acabaron las validaciones de varios minutos). Una tarea programada envía el stock cada 5 minutos, agrupando movimientos y reintentando automáticamente tras un fallo

Corrección

Corrección crítica: en Dolibarr 18 a 22, conectar una tienda devolvía un error 500 al volver de Shopify y la tienda se perdía — el módulo usaba una función del núcleo introducida solo a finales de 2025

Corrección

Corrección: en alojamientos en modo SQL estricto, los webhooks nunca se registraban — las fechas enviadas por Shopify eran rechazadas por la base de datos. Ahora se convierten y se almacenan en hora universal

Nuevo

Nueva herramienta «Corregir descuentos»: repara los pedidos importados antes de la 2.2.9 cuyo descuento porcentual quedó infravalorado — vista previa antes de aplicar, solo borradores, pista de auditoría preservada

Mejora

Conexión de tienda: el error «Fallo al guardar las credenciales» indica por fin su causa real, y una base de datos incompleta se señala junto con los pasos a seguir (páginas Diagnóstico y Estado de salud)

v2.4.4

Corrección

Corrección: los productos con variantes importados de Shopify no creaban una verdadera variante de Dolibarr — el vínculo producto/variante quedaba invisible en la interfaz y la etiqueta de la variante podía ser idéntica a la del producto padre

Nuevo

Nuevo botón «Reparar variantes»: vincula a posteriori los catálogos ya importados, sin reimportar ni duplicar, por lotes y sin riesgo al relanzarlo

v2.4.3

Corrección

Corrección: la importación de productos con variantes fallaba cuando una misma referencia (SKU) se comparte entre varios productos de Shopify — el módulo ahora reutiliza el producto existente en lugar de fallar y muestra el motivo de error completo ante cualquier otro problema

Corrección

Corrección: las líneas de pedido procedentes de aplicaciones de packs/bundles ("compón tu pack") no se creaban en Dolibarr — los productos facturables agrupados en un bundle ahora se importan correctamente (los componentes gratuitos a 0 € se siguen ignorando)

v2.4.2

Corrección

Corrección crítica: el stock de Dolibarr nunca se enviaba a Shopify (reaprovisionamientos, producción interna, correcciones manuales) — el stock de Shopify se desviaba con cada venta, hasta valores negativos falsos. Cada movimiento de stock de Dolibarr se sincroniza ahora en tiempo real hacia Shopify (valor absoluto, nunca negativo)

Nuevo

Nuevo botón "Realinear el stock hacia Shopify": envía de una vez el stock de Dolibarr de todos los productos mapeados — repara inmediatamente los valores de Shopify falseados en el pasado, sin esperar al próximo movimiento de cada producto

Mejora

Multi-tienda: el stock se envía a cada tienda donde el producto está mapeado, con las credenciales propias de cada tienda

Mejora

Observabilidad: cada envío de stock queda registrado en el diario de acciones, y el estado "último realineamiento" (fecha, productos, errores) se muestra en la administración

v2.4.1

Seguridad

Cumplimiento Shopify 2026: gestión nativa de los tokens OAuth caducables (token de acceso de 60 minutos + token de renovación), exigidos por Shopify antes del 1 de enero de 2027 — renovación automática transparente, las tiendas ya conectadas migran con un clic mediante el botón "Reconectar"

Nuevo

Nueva API Collections de Shopify 2026-07: las colecciones creadas con el nuevo modelo (despliegue de Shopify a partir del 1 de julio de 2026) ahora son visibles y se sincronizan — se acabaron las desapariciones silenciosas

Corrección

Corrección crítica: sincronización de productos/stock más fiable — una variante desactivada a veces permanecía visible en Shopify, y las divergencias de stock (a veces negativas) dejaban de corregirse en silencio; los errores ahora se registran y se muestran

Mejora

Diagnóstico instantáneo: las pruebas de conexión y salud por tienda se ejecutan ahora en segundo plano, sin ralentizar la página

Mejora

Telemetría más fiable: el módulo ahora informa de su dominio real y de la versión de Dolibarr en todos los canales, eliminando las falsas instalaciones pendientes

v2.4.0

Nuevo

Multitienda: varias tiendas Shopify configurables en una sola instalación Dolibarr, con licencia, ajustes y navegación propios de cada tienda (la contabilidad sigue siendo siempre única)

Nuevo

Diagnóstico de salud detallado por tienda: conexión y webhooks, licencia, contadores de sincronización — cada tienda se verifica de forma independiente

Mejora

Selector de tienda más grande y barra de contexto rediseñada en todas las páginas de administración multitienda

Corrección

Corrección crítica: una expedición que quedaba en borrador tras un fallo (almacén/stock) nunca se recuperaba automáticamente — ahora el proceso de recuperación periódico la valida y cierra

Corrección

Corrección de visualización: caracteres acentuados mal codificados (doble codificación) corregidos en toda la interfaz de administración

Corrección

Corrección: el estado de licencia de una tienda podía quedarse fijo en "desconocido" — la verificación ahora es fiable y nunca degrada una tienda por defecto

v2.3.2

Corrección

Corrección crítica: algunos pedidos dejaban de recuperarse desde Shopify (regresión introducida en 2.3.0) — la sincronización de pedidos vuelve a funcionar con normalidad

Corrección

Corrección: los webhooks registrados en una versión de API de Shopify obsoleta ahora se vuelven a registrar automáticamente durante las comprobaciones de salud, para cada tienda

Corrección

Corrección: bloqueo en la activación del módulo en instalaciones multitienda (página en blanco)

Seguridad

Seguridad: la conexión de una tienda Shopify ya no puede hacerse introduciendo manualmente un token — solo mediante el flujo OAuth seguro de Shopify

v2.3.0

Nuevo

Multitienda (fundamentos): varias tiendas Shopify gestionadas desde una sola instalación Dolibarr con contabilidad única — la tienda existente se migra automáticamente, sin ninguna interrupción del servicio

Nuevo

Nueva interfaz de administración de tiendas: añadir, conectar, gestionar webhooks y licencia, tienda por tienda

Seguridad

Seguridad: la conexión de Shopify está ahora protegida por claves criptográficas (OAuth RSA) en lugar de un secreto compartido

Nuevo

Nuevas herramientas de soporte: exportación del JSON completo de un pedido para agilizar el diagnóstico

Nuevo

Las direcciones de envío y facturación se muestran ahora directamente en la ficha del pedido

Seguridad

Seguridad: protección reforzada contra ataques CSRF en acciones sensibles (configuración, licencia)

v2.2.9

Corrección

Corrección: descuentos porcentuales infravalorados — el descuento se calculaba sobre la base sin impuestos y luego se dividía una segunda vez por (1 + IVA) como si fuera un importe con impuestos. Los pedidos con código promocional porcentual recuperan el importe exacto mostrado por Shopify (p. ej. 5 % = −151,20 € con IVA, no −126 €)

Mejora

Documentación: tabla de las 4 reglas de decremento de stock de Dolibarr (pedido, factura, expedición, cierre de expedición) y recomendación para tiendas mixtas mostrador TakePOS + Shopify

v2.2.8

Corrección

Corrección crítica: el stock no se descontaba al importar pedidos de Shopify — el almacén no se transmitía en la validación de la factura. Las 4 reglas de decremento de stock de Dolibarr (pedido, factura, expedición, cierre de expedición) quedan ahora cubiertas

Corrección

Corrección: la migración de permisos v2.2.4 (cambio de ID del módulo) se ejecuta ahora automáticamente en la activación — los derechos de los usuarios se conservan al actualizar desde una versión anterior a 2.2.4

Corrección

Corrección de webhooks: URL de callback errónea (falta la ruta /custom/) sin configuración explícita, y el parámetro de días de conservación de los eventos ahora es respetado por la purga

Mejora

Robustez: advertencias explícitas en los registros cuando no se puede resolver ningún almacén, y protecciones contra errores fatales si la sincronización saliente Dolibarr → Shopify (prevista para v2.4.x) se activa prematuramente

v2.2.7

Corrección

Corrección crítica: llamadas a la API de documentos con error 404 en instalaciones en subdirectorio — una barra inicial sobreescribía la ruta del subdirectorio (issue #288)

Corrección

Todos los puntos de acceso a documentos (imágenes de productos y categorías) respetan ahora correctamente el subdirectorio de instalación

Corrección

Repara las instalaciones de Dolibarr en subdirectorio (la versión 2.2.6 ya paliaba esto mediante el fallback SQL local)

v2.2.6

Corrección

Corrección crítica: sincronización de imágenes de producto resiliente — fallback SQL automático (llx_ecm_files) cuando el endpoint REST de Dolibarr /documents no está disponible (404, timeout, HTML en el body). Las imágenes del producto se sincronizan correctamente en Shopify incluso en alojamientos restrictivos (issue #286)

Corrección

Corrección crítica: filtro de entidad multi-inquilino añadido a la consulta SQL de imágenes — evita exponer imágenes de otras entidades Dolibarr en instalaciones multi-empresa

Corrección

Corrección: clave de ordenación incorrecta (filename vs relativename) — ordenación por posición ahora funcional

Mejora

Caché de instancia de imágenes reduce de 3 a 1 las llamadas SQL+API redundantes por producto durante la sincronización

v2.2.5

Corrección

Corrección crítica: función verifToken() no cargada en algunos stacks PHP-FPM que bloqueaba el OAuth de Shopify — 4 archivos del módulo ahora incluyen explícitamente el polyfill compatibility.lib.php

v2.2.4

Corrección

Corrección crítica: migración del ID del módulo Dolibarr (436950 → 351003, rango oficial asignado a la Association P'tite Tête) — migración SQL automática preserva los permisos existentes

v2.2.3

Corrección

Corrección crítica: las páginas de administración (setup, asistente, sincronización productos) referenciaban un archivo CSS inexistente — carga del CSS y visualización de las páginas ahora correctas

v2.2.2

Nuevo

Gestión de líneas bundle/regalo de Shopify (USH Bundles, EasyGift, etc.) — 3 modos configurables: ignorar, importar como comentario, importar como línea normal

Corrección

Corrección crítica: sincronización de stock de variantes cada hora en vez de 24h

Corrección

Corrección webhook products/delete — consulta SQL inválida corregida

Corrección

Corrección crítica: no más duplicados creados en Shopify tras purgar un producto con variantes

Corrección

Anti-bucle mejorado: protección inter-proceso sync/webhook contra deadlocks

Corrección

Falso positivo de diagnóstico corregido: API Documents 404 sobre producto de prueba inexistente ahora se reporta como advertencia en vez de error

Mejora

Diagnóstico mejorado: detección de rutas de imágenes antiguas + prueba de loopback

Mejora

Versiones dinámicas en toda la interfaz (sin más versiones fijas)

Mejora

Admin website: nueva sección 'Migraciones SQL' que lista los scripts SQL numerados y permite ejecutarlos con un clic (seguimiento automático)

v2.2.1

Nuevo

Sistema de alertas por email proactivo (errores webhook + salud del sistema)

Nuevo

Throttling inteligente por tipo con cooldown configurable

Mejora

Auditoría completa API Shopify 2026-07 — anticipación de breaking changes

Mejora

PHPStan nivel 6 + cobertura de tests 35% → 71%

Mejora

Centralización de versión del módulo (no más versiones hardcodeadas)

Corrección

Eliminadas ~1 974 líneas de código muerto

Corrección

Compatibilidad Dolibarr 23 — auditoría sistemática y correcciones

v2.2.0

Nuevo

Webhooks en tiempo real Shopify → Dolibarr (pedidos, envíos, pagos)

Nuevo

Asistente de configuración guiado en 6 pasos

Nuevo

Dashboard de monitoreo y salud del módulo

Nuevo

Mapeo de envío en 2 niveles (título + transportista real)

Nuevo

Interfaz simplificada: 3 pestañas en lugar de 5

Nuevo

Recuperación automática de pedidos perdidos (CRON red de seguridad)

Nuevo

Auto-creación configurable de facturas, pagos y envíos

Mejora

Configuración completa de pedidos en el asistente

Mejora

Activación automática de webhooks y CRONs al finalizar el asistente

v2.1.8

Nuevo

Sistema de tickets de soporte integrado multiplataforma

Nuevo

Rediseño completo del sitio web con arquitectura MVC

Nuevo

Modo degradado para licencias expiradas

Nuevo

Internacionalización centralizada con Twig

Nuevo

Webhooks bidireccionales Shopify + triggers Dolibarr en tiempo real

v2.1.7

Nuevo

Shopify Billing API - Arquitectura dual-channel

Nuevo

Interfaz de administración web completa

Corrección

Corrección del enlace de licencia OAuth

Corrección

Descuentos no aplicados en servicios

Mejora

Mejoras del asistente de configuración

v2.1.6

Nuevo

Auditoría de seguridad completa - 86 problemas corregidos

Nuevo

Importación bidireccional Shopify → Dolibarr

Seguridad

Protección CSRF en 15 archivos

Seguridad

Puntuación de seguridad 6/10 → 9/10