Dónde sale y qué lo provoca
Abres la ficha desde el menú Mirakl › Configuración › Marketplaces (Mirakl › Configuration › Marketplaces) y pulsas Obtener motivos de reembolso (Fetch Refund Reasons). Si no queda ningún motivo que publicar, Odoo detiene la acción y muestra El operador no ha devuelto ningún código de motivo. Consulta los códigos en tu portal de vendedor del marketplace. (The operator returned no reason codes. Check the codes in your marketplace seller portal instead.).

Estos son los detalles prácticos que conviene conocer antes de darlo por un fallo de la conexión.
El botón está siempre a la vista y el aviso sale al pulsarlo
En Odoo 17, 18, 19 y 20 el botón Obtener motivos de reembolso se ve siempre en la ficha, sin condiciones. El aviso es de los que detienen la acción: aparece al pulsar el botón y, como la acción se corta ahí, no se publica nada en el chatter de la ficha.
La condición es que la lista final quede vacía
Al pulsar, el módulo pide al operador su lista de motivos. Primero se queda con los motivos cuyo tipo contiene la palabra REFUND, sin distinguir mayúsculas de minúsculas. Si ninguno cumple eso, se queda con todos los motivos recibidos. Solo si después de ese filtrado no queda nada se lanza el aviso. En el código, la condición es literalmente que esa lista esté vacía.
Que no haya motivos de reembolso no basta para el error
Si el operador devuelve motivos pero ninguno es de tipo reembolso, no sale el aviso: el módulo publica todos los que haya recibido. Por eso, si ves en el chatter códigos que no parecen de reembolso, lo que ha pasado es que el operador no ha devuelto ninguno de ese tipo y el módulo ha recurrido a la lista completa.
Una respuesta con otra forma también cuenta como vacía
El módulo lee la respuesta buscando un bloque de datos que contenga una lista de motivos. Si ese bloque o esa lista no tienen la forma esperada, se toman como vacíos. Las entradas de la lista que no sean registros se ignoran. El resultado es el mismo aviso, así que el mensaje no te dice si el operador no tiene códigos para ti o si la respuesta ha llegado con otra estructura. Si dudas de la conexión, tienes aparte qué hace el botón Test Connection.
Qué pasa cuando sí hay códigos
Si la lista tiene contenido, el módulo publica en el chatter de la ficha un mensaje que arranca con Códigos de motivo del operador (usa el CÓDIGO en 'Código de motivo de reembolso'): (Operator reason codes (use the CODE in 'Refund Reason Code'):) y sigue con una línea por código: el código, su etiqueta y el tipo entre paréntesis, con un guion si el tipo viene vacío.
Además, Odoo muestra una notificación titulada Mirakl con el texto … códigos de motivo publicados en el chatter. (… reason codes posted to the chatter.), donde el módulo pone el número de códigos. La notificación no se queda fija en pantalla.
Qué hacer cuando sale
Haz lo que pide el mensaje: abre el portal de vendedor de tu marketplace y consulta ahí los códigos de motivo del operador. Según el propio código del módulo, el botón existe para que sepas qué código poner como motivo de reembolso, porque Mirakl rechaza los reembolsos sin un código válido del operador. Mientras no tengas la lista en el chatter, el portal es tu fuente.
Después, el botón sigue visible, así que puedes volver a pulsarlo cuando quieras comprobar si el operador ya devuelve la lista. Si la respuesta incluye motivos, los verás publicados en el chatter de la ficha y podrás copiar de ahí el código.
Es el mismo aviso en las cuatro versiones publicadas
El mensaje está en el código de Odoo 17, 18, 19 y 20, y el módulo está publicado en Odoo Apps para esas cuatro versiones. El segundo esquema reúne el mismo texto en castellano, alemán, francés, italiano y portugués.


Si necesitas ayuda con el conector
FlexigoTech implanta Odoo 17, 18, 19 y 20 y desarrolla conectores e integraciones a medida. Si quieres ver el módulo, tienes su ficha en Odoo Apps y su página en flexigotech.com.
Si el aviso se repite y no tienes claro si el problema está en los códigos del operador o en la respuesta que llega a Odoo, cuéntanos qué marketplace usas y qué ves en el chatter de la ficha, y lo revisamos contigo.
Sigue leyendo
Comprobado en el código del conector (versión 20.0) y en las fuentes enlazadas
Fuentes
- Código del módulo: flexigobe_mirakl_connector 20.0 (aa05e537): models/mirakl_instance.py
- Código del módulo: flexigobe_mirakl_connector 20.0 (aa05e537): views/mirakl_instance_views.xml
- Código del módulo: flexigobe_mirakl_connector 20.0 (aa05e537): models/mirakl_ai.py
- apps.odoo.com/apps/modules/20.0/flexigobe_mirakl_connector
- flexigotech.com/en/services.html
