Saltar al contenido principal
Shopify

Qué hace el botón «Devolver stock» de Shopify Connector, paso a paso

El botón Devolver stock (Devolver Stock) de un reembolso de Shopify crea en Odoo una o varias transferencias de devolución ya validadas con lo que queda por devolver de lo que Shopify repuso en stock; si Odoo ya lo había devuelto, no crea otra y abre la entrega. Solo se ve con ciertos valores del campo Devolución de stock y, si algo falla, para con un mensaje de productos sin vincular o con un error de creación.

FlexigoTech · Responsable: Víctor Gómez · Actualizado el 5 de noviembre de 2026

Lo esencial

Módulo
Shopify
Versiones
Odoo 17, 18, 19 y 20
Comprobado
en el código del conector, versión 20.0 · en las fuentes enlazadas al final
Lectura
5 min

El detalle del método que sigue es el del código de Odoo 20. El botón está en las ramas 17, 18, 19 y 20, con la misma condición de visibilidad.

Dónde está y cuándo se ve

¿Dónde está el botón Devolver stock y cuándo aparece?

Está en la ficha de Reembolsos de Shopify (Shopify Refunds), que se abre desde Sales › Shopify › Operations › Reembolsos. La vista lo muestra solo cuando el campo Devolución de stock (Stock Return) está en pendiente, en revisión o en fallido; con cualquier otro valor lo oculta. Con los valores por defecto no se ve, porque ese campo arranca en un valor que no es ninguno de esos. En Odoo en castellano el botón se llama Devolver stock; el segundo esquema recoge cómo se rotula en otros idiomas.

Esquema con el menú de reembolsos, el botón Devolver Stock y los mensajes que pueden pararlo
Esquema hecho con código a partir del código publicado del módulo, no es una captura de Odoo.
Esquema con el texto del botón Devolver stock en castellano, alemán, francés, italiano y portugués
Esquema hecho con código a partir de las traducciones publicadas del módulo, no es una captura de Odoo: en castellano Devolver stock, en alemán Lager zurückgeben, en francés Retourner au stock, en italiano Restituisci al magazzino y en portugués Devolver ao stock.

¿Qué pasa si la devolución de stock ya estaba hecha?

El método lo mira antes que nada. Si el campo estaba en fallido pero la transferencia de devolución ya estaba hecha, lo deja como hecho y borra el texto del error. Si ya estaba hecho y hay Transferencia de devolución (Return Transfer), abre esa transferencia; si no hay ninguna, no hace nada más.

Your Odoo doesn't talk to Amazon, Temu or Shopify?
Vídeo: Your Odoo doesn't talk to Amazon, Temu or Shopify? (vídeo en inglés)

Qué comprueba y qué crea

¿Cómo decide qué productos devuelve?

Lee las líneas de reposición del reembolso, es decir, lo que Shopify repuso en stock. Descarta las de cantidad cero o menor. Para cada una busca primero el producto por el ID de variante de Shopify y, si no lo encuentra, por el SKU. Las líneas que no se resuelven no entran en la devolución y dejan un aviso en el log. Si no queda ningún producto, el método para con el mensaje que verás más abajo.

¿Qué hace si el reembolso tiene un pedido de venta con entregas validadas?

En la ficha, el campo Pedido de venta (Sale Order) está en el grupo Amounts. El código busca las entregas de salida de ese pedido que ya están hechas. Si hay alguna, calcula qué queda por devolver de cada producto: lo que Shopify repuso en todos los reembolsos de ese pedido, menos lo que ya trajeron de vuelta las devoluciones no canceladas (también las que hizo el propio Odoo), y nunca más de lo entregado. El reparto va de la entrega más antigua a la más nueva, sin pasar de lo que envió cada una menos lo que ya volvió de ella.

Crea una devolución validada por cada entrega afectada, así que pueden ser varias. Cuando la entrega tiene el movimiento de ese producto, la devolución queda enlazada a él como una devolución del propio Odoo, de modo que la entrega la cuenta como devuelta.

Si no queda nada por devolver, no crea ninguna transferencia: marca la devolución de stock como hecha, borra el error, deja en las entregas que enviaron esos productos la nota Reembolso de Shopify …: no queda nada por devolver de esta entrega, Odoo ya lo devolvió. y abre la primera de ellas.

¿Y si no hay pedido o ninguna entrega validada?

Entonces crea una transferencia de entrada manual, con origen en la ubicación de clientes y destino en la ubicación de stock del almacén. El almacén es el configurado en la instancia de Shopify o, si no hay ninguno, el primero que encuentre de la empresa de la instancia. Usa un tipo de operación de entrada de ese almacén, pone a cada movimiento la descripción Devolución: … con el nombre del producto, confirma la transferencia, la reserva, da como hecha la cantidad pedida y la valida.

¿Qué cambia cuando termina bien?

La devolución de stock queda como hecha, el texto de error se borra y el campo Transferencia de devolución, en el grupo Amounts de la ficha, apunta a la primera transferencia creada. Ese campo se oculta mientras está vacío y lo rellena el botón, no el usuario. Todas las transferencias llevan como origen Reembolso de Shopify … con el nombre del reembolso (el campo Name, grupo Shopify).

El botón deja notas en las transferencias: en cada devolución, Stock devuelto desde el reembolso de Shopify …. Transferencia: … y, si viene de una entrega, en esa entrega, Reembolso de Shopify …: devuelto en …. Al final se abre la primera transferencia de devolución.

Errores y qué hacer

¿Qué hago con No se encontraron productos con reposición en este reembolso. Asegúrese de que los productos estén vinculados por SKU o ID de variante de Shopify.?

Es el mensaje (No restockable products found for this refund. Make sure products are linked by SKU or Shopify variant ID.) que da el botón cuando, tras leer las líneas, no queda ningún producto: líneas con cantidad cero o menor, o productos que ni el ID de variante ni el SKU localizan. Salta antes de crear nada y no cambia el campo Devolución de stock. Revisa que los productos del reembolso estén vinculados en Odoo por SKU o por ID de variante de Shopify, como pide el mensaje, y vuelve a pulsar.

¿Qué significa Error al crear la devolución de stock: …?

Es el mensaje (Failed to create stock return: …) que sale cuando falla algo mientras el método busca entregas o crea y valida las transferencias. Tras los dos puntos va el texto del error original, y es ese texto el que dice qué corregir. Antes de mostrarlo, el método deja Devolución de stock en fallido y guarda el texto del error. Como la condición de la vista incluye el valor fallido, el botón sigue visible una vez corregida la causa.

¿Qué cuesta y qué necesito para usarlo?

Shopify Connector cuesta 9 € por versión de Odoo, para 17, 18, 19 y 20, en pago único sin IVA (consulta la ficha de Odoo Apps). Además necesita la suscripción a FlexigoTech Cloud: el plan Conector cuesta 49 €/mes o 490 €/año sin IVA, con hasta 3 cuentas de la plataforma. Si quieres que el flujo de devoluciones encaje con tus almacenes, FlexigoTech implanta Odoo y desarrolla conectores e integraciones a medida.

Sigue leyendo

Qué hace el botón Pull Stock de Shopify Connector, paso a pasoQué hace el botón Pull Stock de Shopify Connector en Odoo 20: cuándo aparece, qué comprueba, qué ajustes de inventario crea y qué errores puede dar.
Comprobado en el código del conector (versión 20.0) y en las fuentes enlazadas

Fuentes