Saltar al contenido principal
Mirakl

Cómo dar de alta Leroy Merlin o Decathlon en el conector de Mirakl

Leroy Merlin y Decathlon venden con Mirakl, y en Odoo cada uno se da de alta como un marketplace más del conector de Mirakl. Lo que cambia es el perfil del operador: con el módulo de Leroy Merlin o el de Decathlon instalado, eliges el perfil en «Provider Code» y Odoo deja marcadas las casillas de pedidos y devoluciones que necesitas, pone la dirección del operador y, al validar un albarán, envía el seguimiento a Mirakl sin que tengas que pulsar nada.

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

Lo esencial

Módulo
Mirakl
Versiones
Odoo 17, 18, 19 y 20
Comprobado
en el código del conector, versión 17.0, 18.0, 19.0 y 20.0
Lectura
5 min

Dar de alta el operador

  1. Instala el conector de Mirakl y el módulo del operador: «Leroy Merlin for Mirakl» o «Decathlon for Mirakl». Sin ese módulo, «Provider Code» solo ofrece «Generic Mirakl».
  2. Ve a Mirakl › Configuration › Marketplaces y crea un marketplace nuevo.
  3. En «Provider Code», elige Leroy Merlin o Decathlon. Odoo rellena en ese momento las casillas del perfil que estén desmarcadas y los campos vacíos.
  4. Revisa la dirección. Para Leroy Merlin es https://adeo-marketplace.mirakl.net, con la API en https://adeo-marketplace.mirakl.net/api; para Decathlon, marketplace-decathlon-eu.mirakl.net.
  5. Completa la conexión con los datos de tu cuenta en el operador, guarda y pulsa «Test Connection».
Lista de marketplaces de Mirakl en Odoo, uno por operador, con su código de proveedor y la última prueba de conexión
Un marketplace por operador en Mirakl › Configuration › Marketplaces. En esta base de demostración no están instalados los módulos de operador, así que los tres usan «Generic Mirakl». Captura de Odoo con datos de demostración.

Si empiezas con el perfil genérico y escribes la dirección del operador, Odoo lo reconoce por el host: adeo-marketplace o leroymerlin para Leroy Merlin; marketplace-decathlon, marketplace.decathlon, seller.decathlon, partner.decathlon, .decathlon.net o .decathlon.com para Decathlon. Y si cambias de un operador a otro, la dirección del anterior se sustituye por la del nuevo. Una dirección escrita a mano que no es de ningún operador conocido se respeta.

Same stock on every Mirakl marketplace, sent from Odoo
Vídeo: Same stock on every Mirakl marketplace, sent from Odoo (vídeo en inglés)

Lo que deja marcado el perfil

CasillaPerfil genéricoLeroy Merlin y DecathlonPara qué sirve
Sync Orders EnabledDesmarcadaMarcadaLa tarea «Mirakl - Sync Orders» importa sus pedidos cada 10 minutos
Auto Accept OrdersDesmarcadaMarcadaLa tarea «Mirakl - Accept Orders» acepta cada 10 minutos los pedidos que Mirakl tiene esperando tu aceptación
Accept Pending On ImportDesmarcadaMarcadaIntenta aceptar los pedidos en espera justo después de cada importación, manual o programada
Auto Confirm SaleDesmarcadaMarcadaConfirma los pedidos de venta importados
Sync Returns EnabledDesmarcadaMarcadaLa tarea «Mirakl - Sync Returns» trae las devoluciones cada 30 minutos
Returns Fallback To OrdersMarcadaMarcadaSi el operador no ofrece devoluciones por la API, las crea a partir de los reembolsos que vienen en los pedidos

El perfil solo rellena lo que está vacío o desmarcado. Si ya habías puesto un valor, se queda. Eso afecta a «Offer Price Tax Mode»: el perfil trae «Include Sales Taxes», pero el campo ya viene con «As Computed», así que al elegir el perfil en el formulario no cambia. Decide tú cómo das los precios de tus ofertas y déjalo puesto antes de exportar.

Leroy Merlin: catálogo y ofertas en el formato del operador

El perfil de Leroy Merlin marca dos casillas más, que de serie vienen desmarcadas y que el de Decathlon no toca:

  • Exportar el catálogo en el formato de operador. La ayuda del campo lo dice así: When enabled, catalog export defaults to Mirakl operator-format multipart CSV instead of raw JSON.
  • Exportar las ofertas con la importación de ficheros OF01 en formato de operador: When enabled, offer export defaults to Mirakl OF01 operator-format multipart file import.

Si exportas desde un marketplace que no tiene el perfil de Leroy Merlin, comprueba estas dos casillas antes de culpar al catálogo.

El envío sale al validar el albarán

Con estos dos perfiles, validar en Odoo la entrega de un pedido de Mirakl basta para avisar al marketplace, aunque la casilla «Send Tracking to Mirakl on Validation» esté desmarcada, que es como viene. En el perfil genérico es esa casilla la que decide.

Antes de validar, Odoo actualiza el pedido de venta con el de Mirakl y pone en el albarán el contacto de entrega del comprador. Si a ese contacto le falta la calle, la ciudad, el código postal o el teléfono, vuelve a pedir el pedido a Mirakl y lo rehace.

Después, el envío va en dos pasos. Primero el seguimiento (OR23). Si Mirakl aún no da el pedido por enviado, Odoo lo marca como enviado (OR24). Si el operador no admite el primer paso, por ejemplo con un 404 o porque no reconoce el código del transportista, Odoo prueba directamente el segundo. Y cuando tu transportista de Odoo solo se traduce como OTHER, usa el transportista que venía en el pedido de Mirakl.

Albarán validado de un pedido de Mirakl con el botón Push Mirakl Tracking y el seguimiento en estado Synced
Un albarán validado: el botón «Push Mirakl Tracking», el estado del seguimiento en Synced, la última petición enviada a Mirakl y, en el historial, «Mirakl tracking pushed successfully.» Captura de Odoo con datos de demostración.

Si el albarán no lleva número de seguimiento

No se envía nada. Odoo lo deja escrito en el albarán: Shipment not sent to Mirakl: this transfer has no tracking reference. Add the carrier's tracking number to the delivery and click Push Mirakl Tracking to notify the marketplace. Pon el número del transportista y pulsa «Push Mirakl Tracking», que envía el seguimiento a mano.

Si faltan las líneas del pedido

Con estos dos perfiles, el envío necesita las líneas del pedido de Mirakl. Si no las encuentra, ni en el pedido de Mirakl ni en el de venta, se para con Missing Mirakl order lines to push tracking.

¿Puedo tener Leroy Merlin y Decathlon en el mismo Odoo?

Sí. Cada operador es un marketplace distinto en Mirakl › Configuration › Marketplaces, con su perfil, su clave y su tienda.

¿Y si no quiero que los pedidos se acepten solos?

Desmarca «Auto Accept Orders» y «Accept Pending On Import» después de elegir el perfil y guarda: lo que pones a mano gana al perfil. Si más adelante vuelves a elegir el perfil en «Provider Code», las marcará otra vez.

Sigue leyendo

Un pedido de Mirakl en Odoo, de la compra al cobroCronología de un pedido de un marketplace Mirakl dentro de Odoo 17, 18, 19 y 20: aceptación, envío, seguimiento, devolución, factura y liquidación.Cómo mapear categorías y atributos de Mirakl en Odoo, paso a pasoCómo preparar el catálogo de un marketplace Mirakl en Odoo: diccionario de categorías, atributos, listas de valores, mapeo y exportación, con los errores típicos.Poner en marcha Leroy Merlin Connector en Odoo: preguntas y respuestasQué campos rellenar en Leroy Merlin Connector para Odoo, qué estados recorre el seguimiento y qué revisar la primera semana tras conectar.
Comprobado en el código del conector (versión 17.0, 18.0, 19.0 y 20.0)

Fuentes

  • Código del módulo: flexigobe_mirakl_connector · 17.0 f10058e · 18.0 0d42567 · 19.0 9939dcd · 20.0 5c53911: models/mirakl_instance.py (_onchange_provider_code, _apply_provider_defaults_to_record, _should_apply_provider_default), views/menu_views.xml, views/mirakl_instance_views.xml; flexigobe_mirakl_provider_leroy_merlin · 17.0 e4e5b5d · 18.0 01707b8 · 19.0 6e605bb · 20.0 f3f10df y flexigobe_mirakl_provider_decathlon · 17.0 d6944fe · 18.0 8b78e2d · 19.0 c0c6021 · 20.0 80e11d3: models/mirakl_instance.py (_mirakl_provider_default_values)
  • Código del módulo: flexigobe_mirakl_connector · 17.0 f10058e · 18.0 0d42567 · 19.0 9939dcd · 20.0 5c53911: models/mirakl_instance.py (cron_sync_orders, cron_accept_orders, cron_sync_returns), data/ir_cron_data.xml
  • Código del módulo: flexigobe_mirakl_connector · 17.0 f10058e · 18.0 0d42567 · 19.0 9939dcd · 20.0 5c53911: models/mirakl_instance.py (_mirakl_provider_known_hosts, _onchange_connection_urls, _mirakl_detect_provider_from_urls); proveedores Leroy Merlin y Decathlon (mismos commits que mir.prov.perfil): _mirakl_provider_detection_signatures
  • Código del módulo: flexigobe_mirakl_provider_leroy_merlin · 17.0 e4e5b5d · 18.0 01707b8 · 19.0 6e605bb · 20.0 f3f10df: models/mirakl_instance.py; flexigobe_mirakl_provider_decathlon (commits de mir.prov.perfil): models/mirakl_instance.py; flexigobe_mirakl_connector (commits de mir.prov.perfil): models/mirakl_marketplace_profile_mixin.py
  • Código del módulo: flexigobe_mirakl_connector · 17.0 f10058e · 18.0 0d42567 · 19.0 9939dcd · 20.0 5c53911: models/stock_picking.py (button_validate, _mirakl_sync_sale_shipping_contacts, action_mirakl_push_tracking), models/mirakl_instance.py (_mirakl_auto_push_tracking_on_validate), views/stock_picking_views.xml; proveedores Leroy Merlin y Decathlon: _mirakl_auto_push_tracking_on_validate y _mirakl_repair_shipping_before_validate devuelven True
  • Código del módulo: flexigobe_mirakl_connector · 17.0 f10058e · 18.0 0d42567 · 19.0 9939dcd · 20.0 5c53911: models/mirakl_instance.py (push de seguimiento con _mirakl_supports_advanced_tracking_flow)