Saltar al contenido principal
Shopify

Qué hace el botón «Reembolsar en Shopify» en Odoo, paso a paso

El botón Reembolsar en Shopify (Refund in Shopify) de la ficha del pedido de venta pide a Shopify un reembolso completo del pedido enlazado. Solo se ve si el pedido tiene Ref. de pedido de Shopify (Shopify Order Ref), pide confirmación y, antes de enviar nada, comprueba tus permisos y el enlace con Shopify.

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
6 min

Un caso para recorrer el botón paso a paso

Ejemplo Caso ilustrativo: la empresa y sus datos son inventados para explicar el flujo.

Librería Faro es una tienda inventada que vende en Shopify y lleva los pedidos en Odoo con este módulo. Un cliente pide que le devuelvan el importe de un pedido entero y Ana, de administración, abre ese pedido de venta en Odoo. Lo que sigue es lo que el módulo hace en cada punto, según su código de Odoo 20.

Primero: ¿aparece el botón?

El botón Reembolsar en Shopify está en la vista del pedido de venta y se oculta cuando el campo Ref. de pedido de Shopify está vacío. Con los valores por defecto ese campo está vacío, así que en un pedido sin enlace con Shopify no vas a ver el botón. Ese campo e Instancia de Shopify (Shopify Instance) están en la ficha del pedido, en el grupo Shopify; son de solo lectura y se ocultan mientras la referencia esté vacía. La misma condición de vista vale para Odoo 17, 18, 19 y 20.

Esquema hecho con código, no una pantalla de Odoo: el botón de reembolso de Shopify con los mensajes que pueden pararlo a un lado
Esquema hecho con código a partir del código publicado del módulo (no es una captura de Odoo): el botón, presente en Odoo 17, 18, 19 y 20, y a su lado los mensajes que pueden detenerlo, el de pedido no vinculado y el de falta de acceso de Shopify Operator o Manager.

Segundo: la confirmación

Al pulsar el botón, Odoo pregunta ¿Crear un reembolso completo de este pedido en Shopify? (Create a full refund of this order in Shopify?). Si aceptas, Odoo ejecuta la acción del botón.

Tercero: lo que comprueba, en este orden

  1. Permisos. Lo primero que hace la acción es comprobar que tu usuario tiene acceso de Shopify Operator o Manager. Si no lo tiene, se detiene con You need Shopify Operator (or Manager) access to push changes to Shopify. El comentario del código explica el motivo: un usuario con acceso normal a Ventas, sin ningún rol de Shopify, podría de otro modo lanzar una llamada real a Shopify con las credenciales de la tienda. Por eso la comprobación vive en la propia acción y no depende de que el botón se vea.
  2. Enlace con Shopify. Para cada pedido, la acción exige que tenga rellenas la referencia de Shopify y la instancia. Si falta alguna, se detiene con El pedido de venta … no está vinculado a un pedido de Shopify. (Sale order … is not linked to a Shopify order.), con el nombre del pedido en lugar de los puntos suspensivos. Como el botón solo se ve con la referencia rellena, si lo pulsas desde la ficha y sale este aviso, mira en el grupo Shopify si Instancia de Shopify tiene valor.

Cuando un aviso detiene la acción, el proceso termina ahí y no llega a pedir el reembolso de ese pedido.

Cuarto: qué pide a Shopify

Si el pedido pasa esas comprobaciones, su instancia de Shopify recibe la orden de crear el reembolso. Según el código:

  • Líneas. Se reembolsan todas las líneas importadas: las que no son de sección ni de nota, no son de envío y traen identificador de línea de Shopify. La cantidad es la de la línea, redondeada a número entero.
  • Envío. Las líneas de envío quedan fuera y la petición no pide reembolsar los gastos de envío.
  • Nota. Salvo que se indique otra, la nota que viaja a Shopify es Refunded from Odoo.
  • Aviso al cliente y saldo de tienda. Se toman de las opciones de la instancia: avisar al cliente del reembolso y reembolsar como saldo de tienda en lugar de al medio de pago original.
  • Moneda. El módulo pregunta a Shopify por el reembolso sugerido y, si Shopify devuelve una moneda, la incluye en la petición.
  • Reintentos. La petición lleva una clave que describe exactamente ese reembolso (pedido, líneas, cantidades, envío y método). Si se repite, por una respuesta perdida o un segundo clic impaciente, lleva la misma clave y Shopify reembolsa una sola vez, según el comentario del código.

Si Ana no tiene el rol

Si Ana ve el aviso de permisos, el reembolso no se ha pedido. Necesita que quien administra Odoo le dé acceso de Shopify Operator (o Manager), tal como dice el propio mensaje, y volver a pulsar el botón.

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é aprender del caso

  • El botón no está para cualquier pedido: depende de Ref. de pedido de Shopify, y esa referencia no se rellena a mano porque el campo es de solo lectura.
  • Tus permisos y el enlace del pedido (referencia e instancia) se comprueban antes de hablar con Shopify, y si falla alguno la acción se detiene.
  • El reembolso que pide es completo respecto a las líneas importadas, sin las líneas de envío ni gastos de envío.
  • El aviso al cliente y el reembolso como saldo de tienda no se eligen al pulsar: salen de las opciones de la instancia.
  • Un reintento idéntico no duplica el reembolso en Shopify, por la clave que lleva la petición.

Antes de probarlo en tu Odoo

El botón está en las ramas de Odoo 17, 18, 19 y 20, que son las versiones publicadas del módulo en Odoo Apps; el código que he descrito es el de Odoo 20. Con Odoo en castellano se llama Reembolsar en Shopify; en otros idiomas el rótulo cambia, como muestra el esquema.

Esquema hecho con código, no una pantalla de Odoo: el rótulo del botón de reembolso en varios idiomas
Esquema hecho con código a partir de las traducciones publicadas del módulo (no es una captura de Odoo): el rótulo del botón según el idioma de Odoo. En castellano, Reembolsar en Shopify; en alemán, In Shopify erstatten; en francés, Rembourser dans Shopify; en italiano, Rimborsa in Shopify; en portugués, Reembolsar no Shopify.

El módulo es de pago único por versión de Odoo y necesita la suscripción a FlexigoTech Cloud, plan Conector: 49 €/mes o 490 €/año, sin IVA. La conexión pasa por FlexigoTech Cloud, que guarda cifradas las credenciales, vigila la sincronización y avisa por correo si falla. Todo está en la ficha de Odoo Apps y en la página del módulo.

Si tu duda va por otro lado de los pedidos, mira el mensaje sobre datos de Shopify para crear el pedido de venta. Y si estás implantando Odoo con Shopify y quieres revisar permisos, instancias o un flujo de devoluciones a medida, FlexigoTech implanta Odoo 17, 18, 19 y 20 y desarrolla conectores e integraciones a medida.

Preguntas rápidas

¿Por qué no veo el botón en un pedido?

Porque el botón se oculta cuando Ref. de pedido de Shopify está vacío, y con los valores por defecto lo está.

¿Pide confirmación?

Sí: ¿Crear un reembolso completo de este pedido en Shopify?.

Sigue leyendo

Qué hace el botón «Obtener stock» del conector de Shopify para OdooQué hace el botón Obtener stock del conector de Shopify para Odoo: cuándo aparece, qué comprueba, qué cambia en tu stock y qué error puede dar.Aviso «es ahora la ubicación principal» del conector de Shopify para OdooQué significa el aviso «es ahora la ubicación principal para …» del conector de Shopify para Odoo, cuándo sale y cómo cambiar la ubicación principal.Error al crear el pedido de venta: faltan datos de ShopifyQué significa el aviso de Shopify Connector for Odoo al pulsar «Crear pedido de venta» sin datos del pedido, cuándo sale y cómo resolverlo.
Comprobado en el código del conector (versión 20.0) y en las fuentes enlazadas

Fuentes