Aller au contenu principal
Mirakl

Comment créer Leroy Merlin ou Decathlon dans le connecteur Mirakl

Leroy Merlin et Decathlon vendent via Mirakl, et dans Odoo chacun se crée comme un marketplace de plus dans le connecteur Mirakl. Ce qui change, c'est le profil de l'opérateur : avec le module Leroy Merlin ou Decathlon installé, vous choisissez le profil dans « Provider Code » et Odoo coche les cases de commandes et de retours dont vous avez besoin, renseigne l'adresse de l'opérateur et, à la validation d'un bon de livraison, envoie le suivi à Mirakl sans que vous ayez à cliquer.

FlexigoTech · Responsable : Víctor Gómez · Mis à jour le 5 novembre 2026

L'essentiel

Module
Mirakl
Versions
Odoo 17, 18, 19 et 20
Vérifié
dans le code du connecteur, version 17.0, 18.0, 19.0 et 20.0
Lecture
5 min

Créer l'opérateur

  1. Installez le connecteur Mirakl et le module de l'opérateur : « Leroy Merlin for Mirakl » ou « Decathlon for Mirakl ». Sans ce module, « Provider Code » ne propose que « Generic Mirakl ».
  2. Allez dans Mirakl › Configuration › Marketplaces et créez un nouveau marketplace.
  3. Dans « Provider Code », choisissez Leroy Merlin ou Decathlon. Odoo remplit alors les cases du profil qui sont décochées et les champs vides.
  4. Vérifiez l'adresse. Pour Leroy Merlin, c'est https://adeo-marketplace.mirakl.net, avec l'API sur https://adeo-marketplace.mirakl.net/api ; pour Decathlon, marketplace-decathlon-eu.mirakl.net.
  5. Complétez la connexion avec les données de votre compte chez l'opérateur, enregistrez et cliquez sur « Test Connection ».
Liste des marketplaces Mirakl dans Odoo, un par opérateur, avec leur code fournisseur et le dernier test de connexion
Un marketplace par opérateur dans Mirakl › Configuration › Marketplaces. Les modules d'opérateur ne sont pas installés dans cette base de démonstration, donc les trois utilisent « Generic Mirakl ». Capture d'écran d'Odoo avec des données de démonstration.

Si vous commencez avec le profil générique et saisissez l'adresse de l'opérateur, Odoo la reconnaît à partir de l'hôte : adeo-marketplace ou leroymerlin pour Leroy Merlin ; marketplace-decathlon, marketplace.decathlon, seller.decathlon, partner.decathlon, .decathlon.net ou .decathlon.com pour Decathlon. Et si vous passez d'un opérateur à un autre, l'adresse de l'ancien est remplacée par celle du nouveau. Une adresse saisie à la main qui n'appartient à aucun opérateur connu est respectée.

Same stock on every Mirakl marketplace, sent from Odoo
Vidéo : Same stock on every Mirakl marketplace, sent from Odoo (vidéo en anglais)

Ce que coche le profil

CaseProfil génériqueLeroy Merlin et DecathlonÀ quoi elle sert
Sync Orders EnabledDécochéeCochéeLa tâche « Mirakl - Sync Orders » importe ses commandes toutes les 10 minutes
Auto Accept OrdersDécochéeCochéeLa tâche « Mirakl - Accept Orders » accepte toutes les 10 minutes les commandes que Mirakl attend de votre acceptation
Accept Pending On ImportDécochéeCochéeTente d'accepter les commandes en attente juste après chaque importation, manuelle ou programmée
Auto Confirm SaleDécochéeCochéeConfirme les commandes de vente importées
Sync Returns EnabledDécochéeCochéeLa tâche « Mirakl - Sync Returns » récupère les retours toutes les 30 minutes
Returns Fallback To OrdersCochéeCochéeSi l'opérateur ne propose pas de retours par l'API, les crée à partir des remboursements présents dans les commandes

Le profil ne remplit que ce qui est vide ou décoché. Une valeur que vous aviez déjà saisie reste en place. Cela concerne « Offer Price Tax Mode » : le profil apporte « Include Sales Taxes », mais le champ arrive déjà sur « As Computed », donc choisir le profil dans le formulaire ne le modifie pas. Décidez comment vous indiquez les prix de vos offres et réglez-le avant l'export.

Leroy Merlin : catalogue et offres au format de l'opérateur

Le profil Leroy Merlin coche deux cases de plus, qui sont décochées par défaut et que le profil Decathlon ne touche pas :

  • Exporter le catalogue au format de l'opérateur. L'aide du champ le précise : When enabled, catalog export defaults to Mirakl operator-format multipart CSV instead of raw JSON.
  • Exporter les offres avec l'import de fichiers OF01 au format de l'opérateur : When enabled, offer export defaults to Mirakl OF01 operator-format multipart file import.

Si vous exportez depuis un marketplace qui n'a pas le profil Leroy Merlin, vérifiez ces deux cases avant d'incriminer le catalogue.

L'expédition part à la validation du bon de livraison

Avec ces deux profils, valider dans Odoo la livraison d'une commande Mirakl suffit à prévenir la place de marché, même si la case « Send Tracking to Mirakl on Validation » est décochée, ce qui est son état par défaut. Sur le profil générique, c'est cette case qui décide.

Avant la validation, Odoo met à jour la commande de vente à partir de la commande Mirakl et indique sur le transfert le contact de livraison de l'acheteur. Si à ce contact il manque la rue, la ville, le code postal ou le téléphone, il redemande la commande à Mirakl et la reconstruit.

Ensuite, l'envoi se fait en deux étapes. D'abord le suivi (OR23). Si Mirakl ne considère pas encore la commande comme expédiée, Odoo la marque comme expédiée (OR24). Si l'opérateur refuse la première étape, par exemple avec un 404 ou parce qu'il ne reconnaît pas le code du transporteur, Odoo passe directement à la seconde. Et lorsque votre transporteur Odoo ne se traduit que par OTHER, il utilise le transporteur qui accompagnait la commande Mirakl.

Bon de livraison validé d'une commande Mirakl avec le bouton Push Mirakl Tracking et le suivi à l'état Synced
Un bon de livraison validé : le bouton « Push Mirakl Tracking », l'état du suivi à Synced, la dernière requête envoyée à Mirakl et, dans l'historique, « Mirakl tracking pushed successfully. ». Capture d'écran d'Odoo avec des données de démonstration.

Si le bon de livraison n'a pas de numéro de suivi

Rien n'est envoyé. Odoo le note sur le transfert : 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. Renseignez le numéro du transporteur et cliquez sur « Push Mirakl Tracking », qui envoie le suivi manuellement.

Si les lignes de commande manquent

Avec ces deux profils, l'expédition a besoin des lignes de la commande Mirakl. Si elles ne se trouvent ni dans la commande Mirakl ni dans la commande de vente, l'opération s'arrête avec Missing Mirakl order lines to push tracking.

Puis-je avoir Leroy Merlin et Decathlon dans le même Odoo ?

Oui. Chaque opérateur est un marketplace distinct dans Mirakl › Configuration › Marketplaces, avec son propre profil, sa clé et sa boutique.

Et si je ne veux pas que les commandes soient acceptées automatiquement ?

Décochez « Auto Accept Orders » et « Accept Pending On Import » après avoir choisi le profil, puis enregistrez : ce que vous réglez à la main l'emporte sur le profil. Si vous choisissez à nouveau le profil dans « Provider Code » plus tard, il les recochera.

À lire aussi

Une commande Mirakl dans Odoo, de l'achat au versementChronologie d'une commande d'une marketplace Mirakl dans Odoo 17, 18, 19 et 20 : acceptation, expédition, suivi, retour, facture et règlement.Mapper les catégories et attributs Mirakl dans Odoo, étape par étapePréparer le catalogue d'une marketplace Mirakl dans Odoo : dictionnaire de catégories, attributs, listes de valeurs, mapping et export, et les erreurs courantes.Mettre en route Leroy Merlin Connector dans Odoo : questions et réponsesQuels champs remplir dans Leroy Merlin Connector pour Odoo, quels états prend le suivi et quoi vérifier pendant la première semaine après la connexion.
Vérifié dans le code du connecteur (version 17.0, 18.0, 19.0 et 20.0)

Sources

  • Code du module : 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)
  • Code du module : 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
  • Code du module : 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
  • Code du module : 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
  • Code du module : 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
  • Code du module : 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)