Où se trouve le bouton et ce qu'il parcourt
Vous le trouvez dans la fiche de Commandes Shopify (Shopify Orders), qui s'ouvre depuis le menu Ventes (Sales), dans son sous-menu Shopify, puis Operations et l'entrée Orders. Le bouton existe dans les branches 17.0, 18.0, 19.0 et 20.0, et la condition pour le voir est la même dans les quatre : il se masque lorsque le champ Bon de commande (Sale Order) a une valeur ; avec les valeurs par défaut, c'est-à-dire vide, il est visible. Le code lui-même décrit le bouton comme la façon de créer à la main le bon de commande d'une commande qui n'en a aucun (il parle de commandes retenues : supprimée, déjà traitée dans Shopify…).

Quand vous cliquez dessus, Odoo demande confirmation avec ce texte : It is created as a quotation that the connector never confirms: check first that this order was not shipped already. Create it?. Si vous acceptez, dans Odoo 20.0 la méthode fait ceci, dans cet ordre :
- Si la commande a déjà un
Bon de commande, elle ne crée rien : elle ouvre ce bon de commande. - Elle vérifie que la personne qui clique est administrateur des ventes.
- Elle vérifie que la commande a bien les données Shopify enregistrées.
- Elle vérifie que la boutique Shopify de la commande n'est pas archivée.
- Elle retire la retenue de la commande et la marque comme traitée à la main.
- Elle traite les données Shopify enregistrées avec une routine qui met à jour la fiche de la commande et qui cherche le bon de commande déjà lié, ou un bon de commande de la même société portant la référence de cette commande Shopify.
- Elle relit la fiche : si
Bon de commandea maintenant une valeur, elle ouvre ce bon de commande ; sinon, rien ne s'ouvre.
Les vérifications passent avant tout changement : si l'une d'elles arrête l'action avec un message, rien de ce que le bouton allait modifier n'est enregistré.

Idées fausses sur le bouton
« Il crée le bon de commande et le confirme »
La réalité est l'inverse. Selon le texte de confirmation, il est créé en devis que le connecteur ne confirme jamais. Ce même avertissement vous demande quelque chose avant d'accepter : vérifier d'abord que la commande n'a pas déjà été expédiée.
« Il apparaît sur toutes les commandes Shopify »
Il n'apparaît que tant que le champ Bon de commande est vide. Dès que la commande en a un, le bouton se masque. Et si la méthode était appelée malgré tout sur une commande qui en a déjà un, la première étape du code n'en crée pas un autre : elle ouvre l'existant. Pour savoir si une commande en a un, regardez ce champ dans la fiche ou dans la liste des Commandes Shopify ; il est en lecture seule et c'est le code qui le remplit, pas l'utilisateur.
« N'importe quel utilisateur interne peut cliquer dessus »
Le code vérifie que la personne qui l'utilise est administrateur des ventes. Si ce n'est pas le cas, l'action s'arrête avec Only a Sales Administrator can create the sales order of a Shopify order by hand.. Si vous voyez ce message, cette action doit être faite par un administrateur des ventes.
« Il crée le bon de commande avec ce que Shopify a en ce moment »
La méthode part des données Shopify que la commande a déjà enregistrées. S'il n'y en a aucune, elle s'arrête avec Aucune donnée Shopify disponible pour créer le bon de commande. Actualisez d'abord depuis Shopify. (No Shopify payload available to create sale order. Refresh from Shopify first.). Ces données se trouvent dans l'onglet Technical de la fiche de Commandes Shopify, sans intitulé : on n'en voit que le contenu, en lecture seule, et seuls les utilisateurs disposant du droit d'administration du système le voient. Le message lui-même indique la marche à suivre : actualiser d'abord depuis Shopify.
« Il fonctionne avec n'importe quelle boutique, quel que soit son état »
Si la boutique Shopify de la commande est archivée, le bouton s'arrête avec Its Shopify store is archived: create the sales order from the store connected now.. Le message indique la marche à suivre : créer le bon de commande depuis la boutique connectée actuellement. Le champ Instance, visible dans la fiche et dans la liste des Commandes Shopify, vous indique à quelle boutique appartient chaque commande.
Ce qui change en plus du devis
Le bouton ne fait pas que créer le bon de commande. Avant de traiter les données, il retire la retenue de la commande et la marque comme traitée à la main. Et la routine qui traite les données enregistrées met à jour la fiche de la commande Shopify avec ce qu'elles contiennent : montants, dates, adresse de livraison, étiquettes et note, entre autres. Vous pouvez voir le résultat dans la fiche et dans la liste : si la commande se retrouve avec un bon de commande, Bon de commande aura une valeur et Odoo l'ouvre ; sinon, rien ne s'ouvre.
Quant au nom du bouton, avec Odoo en espagnol il s'appelle Créer un bon de commande. En allemand c'est Verkaufsauftrag erstellen, en français Créer un bon de commande, en italien Crea ordine di vendita et en portugais Criar pedido de venda.

Si quelque chose ne passe pas
Chaque message ci-dessus dit quoi faire : faire faire l'action par un administrateur des ventes, actualiser d'abord depuis Shopify, ou créer le bon de commande depuis la boutique connectée actuellement.
Comment FlexigoTech vous aide
FlexigoTech met en place Odoo 17, 18, 19 et 20 et développe des connecteurs et des intégrations sur mesure. Si vous voulez revoir qui doit avoir le profil d'administrateur des ventes ou comment sont traitées les commandes retenues avant d'utiliser ce bouton, nous le voyons avec vous. Le module coûte 9 € par version d'Odoo (17, 18, 19 et 20), paiement unique HT, sur sa fiche Odoo Apps, et nécessite l'abonnement à FlexigoTech Cloud : plan Connecteur, 49 € par mois ou 490 € par an HT.
À 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 (c7078cd8): views/shopify_order_views.xml
- Code du module : flexigobe_shopify_connector 20.0 (c7078cd8): models/shopify_order.py
- 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/en/services.html
- flexigotech.com/precios.html
