Quand le message apparaît
En cliquant sur Expédier via Octopia FFM (Ship via Octopia FFM) dans une commande client, Odoo demande confirmation avec le texte Injecter cette commande dans Octopia Fulfillment ? L'entrepôt FFM la préparera, l'emballera et l'expédiera. (Inject this order into Octopia Fulfillment? The FFM warehouse will pick, pack and ship it.). C'est ce bouton qui peut aboutir à cette erreur :
Le produit … n'est pas mappé au catalogue Octopia (une expédition sortante FFM nécessite l'id de produit Octopia). (Product … is not mapped to the Octopia catalog (an FFM outbound needs the Octopia product id).)
Les points de suspension sont remplacés par le nom du produit. La condition du code, en clair : le module parcourt les lignes de la commande qui ne sont pas des services et, pour chacune, cherche dans le catalogue Octopia du compte un enregistrement de ce produit. S'il n'en trouve aucun, il lance le message et l'action s'arrête.
Le message figure dans le code publié d'Odoo 17, 18, 19 et 20. Le détail des vérifications qui suit est celui du code d'Odoo 20.

Avec Odoo en français, le texte que vous voyez est celui ci-dessus ; le module fournit aussi sa traduction en allemand, en espagnol, en italien et en portugais.


Détails de la vérification qu'on ne voit pas sur la fiche
Le blanc du message est le nom du produit
Le texte qui remplace les points de suspension est le nom sous lequel Odoo affiche le produit de la ligne. C'est l'indice pour savoir quelle ligne de la commande examiner.
Les lignes de service ne sont pas vérifiées
Le module ne regarde que les lignes dont le produit n'est pas de type service. Les lignes de service ne sont ni vérifiées par rapport au catalogue ni incluses dans l'envoi, de sorte que ce message ne nommera jamais un produit de ce type.
Le catalogue est consulté compte par compte
La recherche exige deux choses à la fois : le compte Octopia avec lequel la commande est envoyée et le produit de la ligne. Qu'un produit figure dans le catalogue d'un autre compte Octopia ne compte pas pour celui-ci.
Le module s'arrête au premier produit non mappé
Le module parcourt les lignes dans l'ordre et s'arrête à la première qu'il ne trouve pas. Si la commande contient plusieurs produits non mappés, vous verrez le message d'un seul à la fois : une fois l'un résolu, le suivant peut apparaître.
Avant les lignes, le module regarde la société
La première vérification de la méthode n'est pas celle-ci : avant de parcourir les lignes, le module exige que la commande appartienne à la même société que le compte Octopia avec lequel elle est envoyée. Ce n'est que si cela passe que l'on arrive à la recherche des produits dans le catalogue.
Quand le message apparaît, rien n'est créé
L'erreur arrête l'action et rien de ce qu'elle allait faire n'est enregistré. La fiche de l'expédition sortante est créée plus tard, après avoir préparé et envoyé la requête à Octopia, de sorte que cette tentative ne laisse aucune nouvelle fiche. Les fiches s'ouvrent depuis Octopia › Fulfillment › Expéditions sortantes ; l'entrée Octopia n'est visible que si vous avez le droit Utilisateur Octopia.
La vérification exige l'enregistrement, pas l'id
Le message parle de l'id de produit Octopia, mais ce que le code exige, c'est que l'enregistrement du produit existe dans le catalogue de ce compte. Si l'enregistrement existe, la ligne de l'expédition reprend la référence produit du vendeur qui y est enregistrée et la quantité commandée sur la ligne de la commande ; si l'enregistrement a en plus un id de produit Octopia, il est ajouté à la ligne.
Le bouton n'apparaît que sur les commandes confirmées
Dans Odoo 17, 18, 19 et 20, Expédier via Octopia FFM est masqué quand la commande n'est pas à l'état Commande client (Sales Order) ni dans l'autre état admis par la condition de la vue. Si vous ne voyez pas le bouton, la commande n'est pas dans l'un de ces états, et vous ne pouvez donc pas non plus arriver à ce message depuis là.
Comment le résoudre
- Lisez le nom du produit qui apparaît dans le message.
- Repérez cette ligne dans la commande client.
- Vérifiez que ce produit figure dans le catalogue Octopia du compte avec lequel vous envoyez la commande. Il ne suffit pas qu'il figure dans celui d'un autre compte.
- Cliquez de nouveau sur
Expédier via Octopia FFMet acceptez la confirmation. Si le nom d'un autre produit apparaît, reprenez depuis la première étape. - Une fois l'envoi terminé, vérifiez dans
Octopia › Fulfillment › Expéditions sortantesqu'il existe une nouvelle fiche pour cette commande.
Passer cette vérification ne signifie pas que l'envoi est fait : la méthode poursuit avec d'autres vérifications de la commande avant de l'envoyer à Octopia. Ce n'est que lorsque toutes passent que le module envoie la requête et crée la fiche de l'expédition sortante avec la référence de la commande.
Comment FlexigoTech vous aide
Le module est publié sur Odoo Apps pour Odoo 17, 18, 19 et 20. Si vous êtes en pleine implantation d'Odoo et souhaitez revoir l'organisation de votre catalogue avant d'envoyer des commandes via Octopia, FlexigoTech implante Odoo 17, 18, 19 et 20 et développe des connecteurs et des intégrations sur mesure.
Si vous voulez aussi comprendre ce que le module ajoute d'autre aux commandes client, posez-nous la question et nous l'examinerons sur votre installation.
À lire aussi
Vérifié dans le code du connecteur (version 20.0) et dans les sources citées
Sources
- Code du module : flexigobe_octopia_connector 20.0 (4848da6a): models/octopia_fulfillment.py
- Code du module : flexigobe_octopia_connector 20.0 (4848da6a): views/octopia_fulfillment_views.xml
- apps.odoo.com/apps/modules/20.0/flexigobe_octopia_connector
- flexigotech.com/en/services.html
