Le cas : un catalogue dans Odoo et une instance toute neuve
Exemple Cas illustratif : l'entreprise et ses chiffres sont inventés pour expliquer le flux.
Ferretería Costa Norte a son catalogue dans Odoo, avec une référence interne sur ses produits, et vient de créer son instance de marketplace. Elle a maintenant besoin de liaisons d'offre pour les produits qu'elle veut proposer sur Mirakl, sans les créer un par un. C'est le rôle du bouton Générer les liaisons (Generate Bindings). Suivons son parcours et, à chaque étape, ce que fait le code d'Odoo 20.0.

Où se trouve le bouton et quand il apparaît
Ouvrez Mirakl › Configuration › Marketplaces et entrez dans la fiche de Instances Mirakl. Le bouton Générer les liaisons se trouve dans la vue de cet écran et il est toujours visible : aucune condition de la vue ne le masque. Il existe dans les branches 17.0, 18.0, 19.0 et 20.0 du module.

Deux champs qui conditionnent le résultat
Avant de cliquer, mieux vaut regarder ces deux champs :
Société(Company) : visible sur la fiche deInstances Miraklet aussi dans la liste. Par défaut, elle prend la société active. Le bouton s'en sert pour décider quels produits entrent (vous le verrez dans les étapes).Limite de génération de liaison d'offre(Offer Binding Generate Limit) : sur la fiche, ongletOpérations manuelles(Manual Operations), groupeOffres(Offers). Elle vaut 500 par défaut. Son aide dit : «Nombre maximal de produits analysés lors de la génération automatique des liaisons d'offre manquantes.»
Ce qu'il fait au clic, pas à pas
- Il travaille uniquement avec l'instance de la fiche ouverte.
- Il prend la valeur de
Limite de génération de liaison d'offre; la limite ne descend jamais sous un. - Il cherche les produits actifs, dont la référence interne est renseignée, sans société ou de la société de l'instance. Quand le produit a l'option de vente, seuls ceux qui peuvent être vendus entrent. Il les trie par identifiant, du plus ancien au plus récent, et en garde autant que la limite l'indique.
- Il regarde quels produits ont déjà une liaison sur cette instance.
- Il parcourt les produits trouvés. Ceux qui ont déjà une liaison sont ignorés et comptés comme existants ; ceux qui n'ont pas de référence sont ignorés et comptés comme ignorés sans SKU. Pour les autres, il prépare une nouvelle liaison : l'instance, le produit, la référence interne comme SKU, le nom du produit tel qu'affiché comme titre et le mode de synchronisation des catégories sur mapping.
- Si quelque chose est prêt, il crée toutes les liaisons en une seule fois.
- Il compose le résultat, le publie sous forme de message sur la fiche de l'instance et l'affiche dans un message.
Pour les produits qui avaient déjà une liaison, le code ne crée rien de nouveau : il les compte simplement comme existants.
Ce que vous voyez à la fin
Un message intitulé Mirakl, de type succès, qui ne reste pas figé à l'écran, apparaît avec ce texte : … offres générées. Existantes : …. Ignorées sans SKU : …. (Generated … offers. Existing: …. Skipped without SKU: ….). Les trois blancs sont les compteurs de l'étape cinq. Le même texte reste comme message sur la fiche de l'instance.
Si votre Odoo est dans une autre langue, le libellé du bouton change :

Generar vínculos ; en allemand, Verknüpfungen generieren ; en français, Générer les liaisons ; en italien, Genera collegamenti ; en portugais, Gerar Ligações.Quand le résultat n'est pas celui attendu
Costa Norte clique et, en vérifiant, constate qu'il manque des produits. Voici ce que dit le code sur ce qui entre dans l'analyse :
| Produit dans Odoo | Entre dans la sélection ? |
|---|---|
| Archivé | Non |
| Sans référence interne | Non |
| Avec la vente désactivée | Non, quand le produit a cette option |
| D'une société différente de celle de l'instance | Non |
| Sans société | Oui |
| Déjà lié sur cette instance | Il est analysé, mais ignoré et compté comme existant |
L'ordre des étapes a une conséquence : la limite s'applique aux produits analysés, pas aux liaisons créées. Les produits déjà liés comptent dans la limite ; donc, si le catalogue qui remplit les conditions dépasse la limite, les derniers produits par identifiant restent hors de ce passage. Si le message indique peu d'offres générées et beaucoup d'existantes, augmentez la valeur de Limite de génération de liaison d'offre dans Opérations manuelles et cliquez à nouveau : les produits qui ont déjà une liaison sont ignorés, donc aucun doublon n'est créé pour eux.
Que vérifier ensuite
- Que le message et le message de la fiche correspondent à ce que vous attendiez pour les générées, existantes et ignorées sans SKU.
- Que la
Sociétéde l'instance est la bonne s'il manque des produits d'une société précise. - Que la limite est supérieure au nombre de produits que vous voulez analyser.
Si un autre bouton du module expliqué de la même façon vous intéresse, voyez ce que fait le bouton « Annuler dans Mirakl ». Et pour une tâche planifiée, « Mirakl - Accepter les commandes ».
Coût et aide
Mirakl Connector est un module à paiement unique par version d'Odoo et nécessite l'abonnement à FlexigoTech Cloud, plan Connecteur : 49 €/mois ou 490 €/an HT. La connexion passe par FlexigoTech Cloud, qui stocke les identifiants chiffrés. Le module est publié pour Odoo 17.0, 18.0, 19.0 et 20.0 (fiche sur Odoo Apps, page du module). FlexigoTech déploie Odoo 17, 18, 19 et 20 et développe des connecteurs et des intégrations sur mesure, au cas où vous auriez besoin d'aide pour la mise en route de votre catalogue.
À lire aussi
Vérifié dans le code du connecteur (version 20.0) et dans les sources citées
Sources
- Code du module : flexigobe_mirakl_connector 20.0 (aa05e537): views/mirakl_instance_views.xml
- Code du module : flexigobe_mirakl_connector 20.0 (aa05e537): models/mirakl_instance.py
- Code du module : 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
- flexigotech.com/precios.html
