Quand le message apparaît et ce que vérifie le code
Quel est ce message et à quel moment le vois-je ?
C'est « Shopify n'a pas retourné d'identifiant de produit après l'exportation. (Shopify did not return a product ID after export.) ». Il apparaît en cliquant sur le bouton Exporter vers Shopify (Export to Shopify), qui est toujours visible dans Odoo 17, 18, 19 et 20. Le message existe dans le code publié des quatre versions. Quand il apparaît, l'action s'arrête et Odoo vous affiche l'erreur.

Avec Odoo en français, vous le voyez sous la forme Shopify n'a pas retourné d'identifiant de produit après l'exportation. ; le second schéma montre le même texte en espagnol, allemand, italien et portugais.

Quelle est la condition exacte dans le code ?
La méthode exécutée par le bouton extrait de la réponse de Shopify le produit créé, puis son identifiant. Si cet identifiant est vide, elle lève le message. Dans le code, la condition est if not product_gid, c'est-à-dire « si l'identifiant est vide ». Peu importe que la réponse ne contienne pas de produit ou qu'elle en contienne un sans identifiant : pour vous, le résultat est le même.
Qu'a fait Odoo avant d'arriver à cette vérification ?
Dans cet ordre : il vérifie que le produit n'a pas déjà de liaison avec cette boutique, prépare les données du produit et de ses variantes, les envoie à Shopify en un seul appel qui demande en retour l'identifiant du produit et celui de ses variantes, puis contrôle si la réponse contient des erreurs utilisateur. Ce n'est que si tout cela s'est bien passé qu'il regarde l'identifiant. Par conséquent, si vous voyez ce message, l'appel n'a pas échoué et la réponse ne contenait pas d'erreurs utilisateur, mais elle ne contenait pas non plus l'ID.

Ce qui est fait dans Odoo et ce qui ne l'est pas
Quelque chose est-il enregistré quand le message apparaît ?
Non. La vérification de l'identifiant intervient avant les étapes qui laissent une trace dans Odoo, et l'erreur arrête l'action. Après elle, la méthode enregistre dans chaque variante les identifiants Shopify, crée une liaison par variante et écrit dans le produit l'état et la date du dernier envoi. Rien de tout cela n'a lieu dans une exportation qui se termine par ce message.
Quelles données du produit sont envoyées ?
Le nom du produit, l'état que vous avez choisi pour l'exportation et les tags. Si le produit les possède, également le fournisseur, le type de produit et la description de vente. Chaque variante d'Odoo est envoyée avec son prix et, si elle les possède, sa référence interne, son code-barres et ses valeurs d'attribut.
Puis-je cliquer à nouveau sur le bouton ?
Le bouton est toujours visible, donc oui. Comme cette action n'a créé aucune liaison, la vérification « a déjà une liaison » ne devrait pas bloquer la nouvelle tentative. Cela dit, le message indique seulement que la réponse ne contenait pas l'ID ; il ne dit pas ce qui s'est passé dans la boutique. Avant de recommencer, regardez dans l'administration de votre boutique Shopify si le produit apparaît, pour ne pas le créer deux fois.
Comment le résoudre
Que faire, étape par étape ?
Premièrement, notez le message tel quel et le produit que vous exportiez. Deuxièmement, vérifiez dans Shopify si le produit existe. Troisièmement, s'il n'existe pas, cliquez de nouveau sur Exporter vers Shopify et vérifiez que l'exportation se termine sans le message. Si le problème se répète avec le même produit, conservez le texte exact, la version d'Odoo et le nom du produit avant de demander de l'aide, car aucun de ces éléments ne change ce que le code évalue : seulement si l'identifiant arrive ou non.
Est-ce identique dans toutes les versions et combien coûte le module ?
Le message figure dans le code d'Odoo 17, 18, 19 et 20 ; le parcours décrit ici est celui du code d'Odoo 20. Le module coûte 9 € par version d'Odoo, pour 17, 18, 19 et 20, paiement unique HT (consultez la fiche). Il nécessite en plus l'abonnement à FlexigoTech Cloud : le plan Connecteur coûte 49 €/mois ou 490 €/an HT.
Et si je vois un autre message du module ?
Chaque message a sa propre condition. Si ce qui s'affiche est celui du jeton d'accès, il a son propre article : [le message « Le jeton d'accès Shopify est manquant pour l'instance …
FlexigoTech peut-il m'aider à le vérifier ?
FlexigoTech met en place Odoo 17, 18, 19 et 20 et développe des connecteurs et des intégrations sur mesure. Si le message se répète dans votre implémentation, écrivez-nous avec les données de l'étape précédente.
À lire aussi
Vérifié dans le code du connecteur (version 20.0) et dans les sources citées
Sources
- Code du module : flexigobe_shopify_connector 20.0 (983eca24): wizard/shopify_export_product_wizard.py
- Code du module : flexigobe_shopify_connector 20.0 (983eca24): wizard/shopify_export_product_wizard_views.xml
- apps.odoo.com/apps/modules/20.0/flexigobe_shopify_connector
- apps.odoo.com/apps/modules/17.0/flexigobe_shopify_connector
- apps.odoo.com/apps/modules/18.0/flexigobe_shopify_connector
- apps.odoo.com/apps/modules/19.0/flexigobe_shopify_connector
- flexigotech.com/precios.html
- flexigotech.com/en/services.html
