Le cas : Marta clique sur Accepter la commande et Odoo s'arrête
Exemple Cas illustratif : l'entreprise et ses chiffres sont inventés pour expliquer le flux.
Distribuciones Norte, une entreprise inventée pour cet exemple, a déjà installé Mirakl Connector. Marta y travaille avec un utilisateur interne d'Odoo. Elle ouvre Mirakl › Opérations › Commandes, entre dans une commande, clique sur Accepter la commande et reçoit cet avertissement : Seul un Mirakl Manager peut accepter, annuler ou rembourser une commande du marketplace. Ces actions modifient la commande sur le marketplace et déplacent de l'argent réel.
Marta pense que quelque chose a échoué dans la commande ou dans la connexion. Mais l'avertissement ne parle ni de l'un ni de l'autre : il parle de la personne qui a cliqué sur le bouton.


Quand il apparaît exactement
Le module vérifie, côté serveur, si l'utilisateur qui a cliqué appartient au groupe Mirakl Manager. S'il n'y appartient pas, il lance l'avertissement et l'action s'arrête : l'avertissement apparaît au lieu de poursuivre. S'il y appartient, la vérification est validée et l'action suit son cours.
L'avertissement figure dans le code publié des quatre versions d'Odoo couvertes par le module : 17, 18, 19 et 20.
Le code lui-même explique pourquoi la vérification se fait côté serveur. Les boutons qui modifient quelque chose sur le marketplace (accepter, annuler, rembourser) sont limités dans les vues par des groupes, mais un attribut de vue n'est pas une barrière de sécurité : n'importe quel utilisateur interne pourrait appeler la méthode par RPC, et le droit d'accès donne aux utilisateurs internes l'écriture sur les commandes Mirakl. C'est pourquoi le groupe est exigé à nouveau côté serveur.
Boutons avec lesquels l'avertissement peut apparaître
Voici deux boutons de la fiche de la commande qui aboutissent à la vérification du groupe :
| Bouton | Quand il est visible | Que se passe-t-il si vous n'êtes pas Mirakl Manager |
|---|---|---|
Accepter la commande | Il est masqué si État de l'acceptation indique que la commande est déjà acceptée ou si la commande ne nécessite pas d'acceptation (champ Nécessite une acceptation) | L'avertissement apparaît et l'action s'arrête |
Annuler dans Mirakl | Il est masqué quand État est celui d'annulé ; avec les valeurs par défaut (commande en attente) il est visible | L'avertissement apparaît et l'action s'arrête |
Voir le bouton ne veut pas dire que l'action va aboutir : la vérification du groupe se fait au moment où vous cliquez. Si vous ne voyez pas l'un des boutons, cela peut venir des conditions du tableau.
Comment le résoudre, pas à pas
- Vérifiez que l'avertissement est bien celui-ci, avec le texte complet :
Seul un Mirakl Manager peut accepter, annuler ou rembourser une commande du marketplace. Ces actions modifient la commande sur le marketplace et déplacent de l'argent réel. - Décidez si cette action vous revient. Selon l'avertissement lui-même, accepter, annuler ou rembourser modifie la commande sur le marketplace et déplace de l'argent réel.
- Si elle ne vous revient pas, demandez à quelqu'un du groupe
Mirakl Managerd'ouvrir la même commande et de cliquer sur le bouton. - Si elle vous revient, demandez à la personne qui administre les utilisateurs de votre Odoo de vous ajouter au groupe
Mirakl Manager. - Revenez à la commande, cliquez à nouveau sur le bouton et vérifiez que l'avertissement n'apparaît plus.

Questions que se pose celui qui voit l'avertissement
Est-ce un problème de connexion avec Mirakl ?
L'avertissement parle du groupe de l'utilisateur : il est lancé quand l'utilisateur qui clique n'appartient pas à Mirakl Manager. Il ne mentionne ni la connexion ni les données de la commande.
Que se passe-t-il quand il apparaît ?
L'action s'arrête : l'avertissement apparaît au lieu de poursuivre. Il peut apparaître, par exemple, en cliquant sur Accepter la commande ou Annuler dans Mirakl.
Suffit-il que le bouton soit masqué dans la vue pour protéger l'action ?
Selon le code, non : un attribut de vue n'est pas une barrière de sécurité, et c'est pourquoi le groupe est aussi exigé côté serveur.
Cela arrive-t-il aussi dans Odoo 17, 18 ou 19 ?
L'avertissement figure dans le code publié de 17, 18, 19 et 20.
Ce qu'il faut retenir du cas
- L'avertissement concerne les droits, pas les données : avant de revoir la commande, regardez à quel groupe appartient la personne qui clique.
- Appartenir à
Mirakl Managerest ce qui compte. Être utilisateur interne d'Odoo, comme Marta, ne suffit pas. - Décidez avec discernement qui entre dans le groupe : les actions qu'il protège modifient la commande sur le marketplace et déplacent de l'argent réel.
- Qu'un bouton soit visible dépend des conditions de la vue ; que l'action aboutisse dépend du groupe de l'utilisateur, vérifié côté serveur au moment du clic.
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 répartissez les droits pour l'équipe qui gère les commandes de marketplace, nous pouvons le revoir avec vous. Mirakl Connector est publié sur Odoo Apps pour 17, 18, 19 et 20, et nécessite l'abonnement à FlexigoTech Cloud (plan Connecteur : 49 €/mois ou 490 €/an HT). Vous avez la fiche sur Odoo Apps et la page du module.
Sans l'abonnement, ou avec le service suspendu, ce qu'apporte l'abonnement s'arrête ; les données restent dans votre Odoo.
À lire aussi
Vérifié dans le code du connecteur (version 20.0) et dans les sources citées
Sources
- Code du module : flexigobe_mirakl_connector 20.0 (aa05e537): models/mirakl_order.py
- Code du module : flexigobe_mirakl_connector 20.0 (aa05e537): views/mirakl_order_views.xml
- apps.odoo.com/apps/modules/20.0/flexigobe_mirakl_connector
- flexigotech.com/en/services.html
- flexigotech.com/precios.html
