Ce que dit le message et quand il apparaît
L'action s'arrête avec Le transfert doit être validé avant d'envoyer l'expédition Shopify. (Picking must be done before sending Shopify fulfillment.) quand le transfert n'est pas à l'état Terminé (Fait en Odoo 17.0) (Done). C'est la première vérification de la méthode qui envoie le fulfillment : avant de chercher l'instance Shopify et avant de contacter Shopify, le code compare l'état du transfert avec Terminé et, s'il est différent, il lève l'erreur.
Comme l'erreur interrompt l'action, rien de ce que l'envoi allait écrire dans le transfert n'est enregistré. Le message peut apparaître en cliquant sur le bouton Send Shopify Fulfillment de la fiche du transfert. Il figure dans le code publié d'Odoo 17.0, 18.0, 19.0 et 20.0 ; le code de la méthode que nous décrivons ici est celui d'Odoo 20.0.

Send Shopify Fulfillment et le message que donne la méthode (Odoo 17.0, 18.0, 19.0 et 20.0), avec les libellés en anglais du code.
La même règle, vue depuis le bouton
Le bouton Send Shopify Fulfillment est masqué quand le transfert ne correspond pas à une commande Shopify ou quand son état n'est pas Terminé. La condition est la même dans Odoo 17.0, 18.0, 19.0 et 20.0. Autrement dit :
| Transfert | Le bouton est-il visible ? |
|---|---|
D'une commande Shopify et à l'état Terminé | Oui |
| D'une commande Shopify et à un autre état | Non |
| Qui n'est pas d'une commande Shopify | Non |
Le bouton et le message partagent donc la même exigence : pour envoyer le fulfillment, le transfert doit être à Terminé.
Un cas : la boutique qui ne trouve pas le bouton
Exemple Cas illustratif : l'entreprise et ses chiffres sont inventés pour expliquer le flux.
Cerámica Ejemplo, une boutique fictive, vend sur Shopify et gère son entrepôt dans Odoo. Marta, qui prépare les expéditions, ouvre le transfert d'une commande Shopify dans l'idée d'envoyer le fulfillment. Elle cherche Send Shopify Fulfillment et il n'y est pas.
Elle regarde l'état du transfert : il n'est pas encore Terminé. Avec la condition de la vue, l'explication est là : tant que l'état est différent, le bouton reste masqué. Et si la méthode s'exécutait avec le transfert dans cet état, le message ci-dessus apparaîtrait et rien ne serait enregistré.
Marta termine la livraison dans Odoo jusqu'à ce que le transfert passe à Terminé. Le bouton apparaît alors. Elle clique dessus et la méthode cherche l'instance Shopify liée à la commande client, appelle Shopify pour créer le fulfillment, enregistre dans le transfert les données renvoyées et laisse un message dans le transfert.
Ce que l'on retient du cas :
- L'état est la première chose vérifiée, avant tout appel à Shopify.
- L'absence du bouton ne signifie pas qu'un élément échoue : il se peut simplement que le transfert ne soit pas à
Terminé. - Si le transfert est à
Terminéet que le bouton reste masqué, l'autre partie de la condition est que le transfert ne provient pas d'une commande Shopify.
Comment le résoudre, pas à pas
- Ouvrez le transfert et regardez son état.
- S'il n'est pas
Terminé, terminez la livraison dans Odoo jusqu'à ce qu'il le soit. C'est ce que demande la condition du code. - Avec le transfert à
Terminé, vérifiez queSend Shopify Fulfillmentapparaît. S'il n'apparaît pas, le transfert ne provient pas d'une commande Shopify selon la condition de la vue. - Cliquez sur
Send Shopify Fulfillment. - Vérifiez le transfert : si l'envoi réussit, la méthode y enregistre les données du fulfillment renvoyées par Shopify, efface l'erreur précédente et laisse un message dans le transfert.
Si, après avoir passé cette vérification, un autre message apparaît, ce n'est plus celui-ci : la méthode poursuit avec d'autres vérifications et avec l'appel à Shopify, et chacune a son propre avertissement.

Le transfert doit être validé avant d'envoyer l'expédition Shopify. ; le schéma montre aussi son texte en espagnol, allemand, italien et portugais.Prérequis et prix
Shopify Connector est à paiement unique par version : 9 € par version d'Odoo, pour 17.0, 18.0, 19.0 et 20.0, HT, sur la fiche d'Odoo Apps. Il nécessite en outre l'abonnement à FlexigoTech Cloud : le plan Connecteur coûte 49 €/mois ou 490 €/an HT. Plus de détails sur la fiche d'Odoo Apps.
Autres boutons du module
Si vous avez besoin d'aide
FlexigoTech met en place Odoo 17, 18, 19 et 20 et développe des connecteurs et des intégrations sur mesure. Si votre circuit de transferts et d'expéditions avec Shopify a besoin de quelque chose que le module ne couvre pas, nous pouvons l'examiner avec vous.
À 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): models/stock_picking.py
- Code du module : flexigobe_shopify_connector 20.0 (c7078cd8): views/stock_picking_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
