Où apparaît le message
Vous le voyez en cliquant sur Submit dans la fiche d'une annulation, qui s'ouvre depuis le menu Temu › Orders & Fulfillment › Cancellations. Ce bouton n'est visible que tant que le champ State conserve sa valeur initiale et que le champ Request Type n'est pas Remote Cancellation. Avec les valeurs par défaut, il est visible, et Request Type commence à Cancellation Appeal.
Le champ Request Type a trois valeurs : Cancellation Appeal, Out-of-stock Cancellation et Remote Cancellation. Il se voit dans la fiche Order Cancellations. Le message Out-of-stock cancellation requires at least one order SN. ne peut apparaître qu'avec la deuxième, Out-of-stock Cancellation.

Request Type et le message, dans Odoo 17.0, 18.0 et 19.0.
Ce que le code vérifie avant et quand le message apparaît
Avant cela, le module exige que l'annulation ait un Parent Order Sn ; s'il manque, un autre message apparaît et on n'arrive pas à cette vérification. Avec Remote Cancellation, l'action s'arrête aussi avant. Une fois ces deux vérifications passées, le message Out-of-stock cancellation requires at least one order SN. arrête l'action lorsque deux conditions sont réunies : Request Type est Out-of-stock Cancellation et la liste des order SN de l'annulation est vide. Avec Cancellation Appeal, cette vérification ne s'applique pas. Le message figure dans le code publié des branches 17.0, 18.0 et 19.0.
Le terme « vide » comporte des nuances qui ressortent du code :
- Les order SN peuvent être enregistrés sous forme de liste ou de texte séparé par des virgules ou des sauts de ligne ; le module lit le texte dans ce format.
- Les blancs sont écartés : les espaces et les entrées vides ne comptent pas. Un texte contenant uniquement des virgules ou des lignes vides équivaut à une liste vide.
- Avant de vérifier, le module tente de compléter l'annulation depuis sa commande : si elle est associée à une commande, que la liste est vide et que cette commande possède son propre order SN, il utilise ce numéro.
Le message apparaît donc quand, après cette tentative, il ne reste aucun order SN : l'annulation n'est pas associée à une commande, ou la commande associée n'a pas d'order SN, et la liste reste vide.
Ce que cela signifie
La demande que le module envoie à Temu pour une annulation pour rupture de stock contient deux données : l'order SN de la commande parente et la liste des order SN. Sans aucun order SN dans la liste, le module n'essaie même pas : le message est déclenché avant l'appel à Temu, donc rien n'est envoyé.
Un cas illustratif
Exemple Cas illustratif : l'entreprise et ses chiffres sont inventés pour expliquer le flux.
Menaje Levante est une boutique fictive qui vend sur Temu et gère ses annulations depuis Odoo. Marta, qui s'occupe des commandes, se retrouve sans stock d'un article déjà vendu. Elle ouvre la fiche d'une annulation depuis Temu › Orders & Fulfillment › Cancellations, choisit Out-of-stock Cancellation dans Request Type et clique sur Submit. Le message Out-of-stock cancellation requires at least one order SN. apparaît.
Marta se pose les questions qui s'imposent. Quel est le type de l'annulation ? Out-of-stock Cancellation, donc la vérification s'applique. Est-elle associée à une commande avec un order SN ? Non, donc le module n'a pas pu compléter la liste de lui-même. Y a-t-il un order SN dans la liste ? Non plus.
Elle fait en sorte que l'annulation contienne dans sa liste l'order SN de la commande concernée et clique à nouveau sur Submit. Comme le message arrête l'action avant d'envoyer quoi que ce soit à Temu, rien de ce que cette action allait modifier n'a été enregistré. Cette fois, le module envoie à Temu la commande parente et la liste.
Ce qu'il faut retenir du cas : le message ne parle pas d'un échec de connexion ni de Temu, mais d'une donnée manquante dans l'annulation elle-même, et il se règle sans quitter Odoo.
Comment le résoudre
- S'il s'agit d'une annulation pour rupture de stock : assurez-vous que la liste des order SN en contient au moins un, ou que l'annulation est associée à une commande qui a le sien, auquel cas le module le reprend à votre place.
- Si la liste semble remplie et que ça échoue : vérifiez qu'elle ne contient pas uniquement des virgules, des sauts de ligne ou des espaces, car le module les écarte.
- S'il ne s'agissait pas d'une annulation pour rupture de stock : utilisez le type qui convient. La vérification ne s'applique qu'à
Out-of-stock Cancellation. - Si le type est
Remote Cancellation: le boutonSubmitn'apparaît pas.
Ce qui se passe après avoir cliqué sur Submit avec la liste complète
Avec au moins un order SN, le module envoie à Temu la commande parente et la liste. Si Temu renvoie un résultat positif, l'annulation passe à un état d'attente ; sinon, elle passe à échouée. Si l'appel à Temu renvoie une erreur, l'action s'arrête et Odoo affiche cette erreur.
Avec Odoo en français, le bouton s'appelle Submit, comme le montre le second schéma.

Submit.Si vous avez besoin d'aide avec vos annulations
FlexigoTech met en place Odoo 17, 18, 19 et 20 et développe des connecteurs et des intégrations sur mesure. Si vous voulez voir le module, consultez sa page sur flexigotech.com.
À lire aussi
Vérifié dans le code du connecteur (version 19.0) et dans les sources citées
Sources
- Code du module : flexigobe_temu_connector 19.0 (455b3f0f): models/temu_order_cancellation.py
- Code du module : flexigobe_temu_connector 19.0 (455b3f0f): views/temu_order_cancellation_views.xml
- flexigotech.com/en/services.html
