Aller au contenu principal
Temu

L'erreur « Request Override JSON must be an object/dict payload. » : checklist

Le message Request Override JSON must be an object/dict payload. apparaît quand vous cliquez sur Execute dans une fiche Fulfillment alors que le champ Request Override Json contient quelque chose qui n'est pas un objet JSON (un dictionnaire). Pour le résoudre, laissez dans ce champ un seul objet avec ses clés et ses valeurs, ou videz-le, en gardant à l'esprit que pour les opérations d'entrepôt coopératif le champ doit être rempli.

FlexigoTech · Responsable : Víctor Gómez · Mis à jour le 5 novembre 2026

L'essentiel

Module
Temu
Versions
Odoo 17, 18, 19 et 20
Vérifié
dans le code du connecteur, version 19.0 · dans les sources citées à la fin
Lecture
5 min

Ce que vérifie le module avant de lancer le message

Le message Request Override JSON must be an object/dict payload. est lancé par l'étape du module qui construit ce qui va être envoyé à Temu depuis une fiche Fulfillment. Cette étape est atteinte quand vous cliquez sur le bouton Execute de la fiche. Dans Odoo 17, 18 et 19, ce bouton est toujours visible, et le message figure dans le code publié de ces trois branches.

La logique du code est courte et se lit ainsi :

  • Si le champ Request Override Json a du contenu, le module vérifie de quel type de donnée il s'agit.
  • Si ce contenu n'est pas un objet (un dictionnaire de clés et de valeurs), l'action s'arrête avec le message.
  • Si c'est un objet, le module renvoie une copie de cet objet telle quelle et ne lit pas les autres champs de la fiche pour monter ce qui est envoyé.
  • Si le champ est vide, le code n'entre pas dans cette vérification. Dans la plupart des opérations, il passe à la construction de ce qui est envoyé à partir du type d'opération de la fiche et de ses champs. Dans les opérations d'entrepôt coopératif, il ne construit rien : le champ doit être rempli et, vide, l'action s'arrête avec un autre message.

Autrement dit, ce message ne signale pas qu'une donnée manque : il signale qu'une donnée est écrite sous la mauvaise forme. Une liste à la place d'un objet, par exemple, remplit déjà la condition de l'erreur.

Schéma réalisé à partir du code du parcours jusqu'à l'erreur : le menu Temu › Orders & Fulfillment › Fulfillment, le bouton Execute et le champ Request Override Json, et le message d'erreur
Schéma (ce n'est pas une capture d'Odoo) réalisé à partir du code publié du module pour Odoo 17.0, 18.0 et 19.0, avec les libellés en anglais du code.
Temu orders in Odoo every 15 minutes. Stock out every 5
Vidéo : Temu orders in Odoo every 15 minutes. Stock out every 5 (vidéo en anglais)

Avant de cliquer sur Execute

Une vérification rapide dans la fiche évite l'erreur. Les fiches Fulfillment s'ouvrent depuis le menu Temu › Orders & Fulfillment › Fulfillment.

  • Ouvrez la fiche « Fulfillment » depuis Temu › Orders & Fulfillment › Fulfillment.
  • Allez dans l'onglet Payload Override.
  • Regardez le champ Request Override Json. Son aide dit : « Optional payload override. If set, it is sent as-is. ».
  • Décidez si vous voulez vraiment remplacer ce que construit le module. Si vous remplissez le champ, ce que vous y mettez est ce qui est envoyé, tel quel.
  • Si vous ne voulez rien remplacer, laissez le champ vide, sauf si l'opération de la fiche est de type entrepôt coopératif : pour celles-ci, le champ doit être rempli.
  • Si vous le remplissez, écrivez un seul objet JSON : un seul bloc de clés et de valeurs, pas une liste d'éléments ni un texte ou un nombre isolés.

Le champ Request Override Json se trouve dans l'onglet Payload Override de la fiche Fulfillment.

Si le message est déjà apparu

L'erreur n'a qu'une seule condition dans le code : le champ Request Override Json est rempli et son contenu n'est pas un objet. Voici les étapes, dans l'ordre.

  • Fermez l'avertissement et ne cliquez pas encore sur Execute : avec le même contenu, le même message reviendra.
  • Ouvrez l'onglet Payload Override de cette même fiche.
  • Lisez ce qu'il y a dans Request Override Json et déterminez s'il s'agit d'un objet (un bloc de clés et de valeurs) ou d'autre chose, comme une liste.
  • Si c'était une liste, réécrivez le contenu sous forme d'un seul objet JSON ou videz le champ. Le vider ne convient que si l'opération n'est pas de type entrepôt coopératif ; pour celles-ci, le champ doit contenir un objet.
  • Si vous n'aviez pas l'intention de remplacer ce que construit le module, videz le champ (là encore, sauf pour les opérations d'entrepôt coopératif).
  • Enregistrez la fiche avec le champ corrigé.
  • Cliquez de nouveau sur Execute.

Si vous videz le champ, le code n'entre plus dans la vérification de ce message. Dans la plupart des opérations, il passe à la construction de ce qui est envoyé à partir du type d'opération et de ses champs, un chemin différent avec ses propres vérifications, que raconte le bouton Execute pas à pas. Dans les opérations d'entrepôt coopératif, le champ doit être rempli : vide, l'action s'arrête avec un autre message.

Schéma réalisé à partir du code et des traductions publiées du module : le texte du bouton Execute, qui en espagnol s'appelle Ejecutar
Schéma (ce n'est pas une capture d'Odoo) du libellé du bouton tel que le voit une personne qui a Odoo en espagnol : Execute.

Après la correction

Après avoir enregistré et cliqué de nouveau sur le bouton, vérifiez ce qui suit.

  • Le message Request Override JSON must be an object/dict payload. n'apparaît plus.
  • Si vous avez laissé le champ rempli, son contenu est un objet et c'est exactement ce que vous voulez envoyer, car le module le copie tel quel et ne le complète pas avec d'autres champs de la fiche.
  • Si vous l'avez vidé dans une opération qui n'est pas de type entrepôt coopératif, vérifiez que la fiche contient bien les données de l'opération choisie, car le module lit maintenant ces champs au lieu d'utiliser votre contenu.
  • Si l'opération est de type entrepôt coopératif et que vous avez vidé le champ, l'action s'arrêtera avec un autre message : là, le champ doit contenir un objet.
  • Si un autre message apparaît, ce n'est plus cette erreur : c'est une autre vérification du module et il faut lire son propre texte.

Les questions que vous allez vous poser

Peut-il apparaître si le champ est vide ?

Pas avec cette condition : le code ne regarde le type du contenu que si le champ contient quelque chose. Avec le champ vide, il poursuit avec l'opération de la fiche, sauf dans les opérations d'entrepôt coopératif, où il s'arrête avec un autre message parce que le champ doit être rempli.

Où apparaît le message ?

Quand vous cliquez sur le bouton Execute de la fiche Fulfillment : c'est là que la méthode arrive à la vérification.

Que devient l'action quand il apparaît ?

Le message arrête l'action : le bouton Execute ne poursuit pas avec ce qui allait être envoyé.

Est-ce identique dans toutes les versions ?

Le message figure dans le code publié des branches 17.0, 18.0 et 19.0. Le module est aussi publié sur Odoo Apps pour la 20.0.

Si vous avez besoin d'aide pour votre intégration

Si votre cas consiste à envoyer à Temu un contenu sur mesure et que vous voulez que quelqu'un le revoie avec vous, vous pouvez consulter la page du module. FlexigoTech déploie Odoo 17, 18, 19 et 20 et développe des connecteurs et des intégrations sur mesure, au cas où votre besoin irait au-delà de ce champ.

À lire aussi

Ce que fait le bouton Execute de Temu Connector for Odoo, étape par étapeCe que fait le bouton Execute de Fulfillment dans Temu Connector for Odoo : ce qu'il vérifie, quels statuts il écrit et quels messages peuvent l'arrêter.
Vérifié dans le code du connecteur (version 19.0) et dans les sources citées

Sources