Le cas normal : Odoo accepte les commandes tout seul
Dois-je cliquer sur Accepter la commande (Accept Order) sur chaque commande Mirakl ?
Non. Selon le code publié pour Odoo 20, l'acceptation est aussi lancée par deux tâches planifiées actives dès l'installation du module : Mirakl - Accepter les commandes (Mirakl - Accept Orders) et Mirakl - Synchroniser les commandes (Mirakl - Sync Orders). Toutes deux s'exécutent toutes les 10 minutes et arrivent à la même méthode, celle qui accepte les commandes en attente d'une instance. Le bouton reste la voie manuelle pour une commande précise.
Quelles commandes cette méthode prend-elle, et dans quel ordre ?
Celles de l'instance qui nécessitent une acceptation (Nécessite une acceptation, Requires Acceptance), dont l'état d'acceptation est en attente ou en erreur, et qui ne sont pas retenues par rapport aux commandes clients : le code note qu'accepter l'une de ces commandes reviendrait à s'engager à expédier ce qu'Odoo n'expédiera jamais. Elles sont triées par date de commande, de la plus ancienne à la plus récente.
Que se passe-t-il si l'acceptation automatique échoue ?
Si l'appel à Mirakl échoue, dans le cas automatique l'erreur n'est pas relancée : la commande passe à l'état d'acceptation en erreur, la date et l'heure de la tentative sont notées, le compteur de tentatives augmente d'une unité et le texte de l'erreur est enregistré. Comme les commandes en erreur font partie de la sélection, la prochaine exécution réessaie. Si FlexigoTech Cloud ne laisse pas passer la requête, la commande n'est pas marquée et l'exécution suivante réessaie. En cas de doute sur la connexion, voyez d'abord ce que fait le bouton Tester la connexion.

Le bouton : où il se trouve, quand il s'affiche et qui peut le cliquer
Où se trouve-t-il et quand apparaît-il ?
Il se trouve dans l'écran Commandes Mirakl (Mirakl Orders), qui s'ouvre depuis Mirakl › Opérations › Commandes (Mirakl › Operations › Orders), dans les branches 17, 18, 19 et 20 d'Odoo. Il est masqué lorsque État de l'acceptation (Acceptance State) indique que la commande est déjà acceptée ou lorsque Nécessite une acceptation n'est pas activé ; la condition est la même dans les quatre versions. La commande affiche son Instance dans la fiche et dans la liste, et l'acceptation est envoyée via cette instance. Avec Odoo en français le bouton s'appelle Accepter la commande ; le second schéma montre comment il est libellé dans d'autres langues.


Aceptar pedido, en allemand « Bestellung annehmen », en français « Accepter la commande », en italien « Accetta ordine » et en portugais « Aceitar Encomenda ».Que se passe-t-il si mon utilisateur n'est pas Mirakl Manager ?
C'est la première chose que vérifie le bouton, avant de toucher à quoi que ce soit. Si vous ne l'êtes pas, il s'arrête avec ce message : 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. (Only a Mirakl Manager can accept, cancel or refund a marketplace order. These actions change the order on the marketplace and move real money.). La solution est de cliquer sur le bouton avec un utilisateur Mirakl Manager.
Ce qu'il fait au clic et quelles erreurs il peut donner
Que fait-il pas à pas, et qu'est-ce qui change si tout se passe bien ?
D'abord il vérifie la permission Mirakl Manager. Ensuite il vérifie que la commande nécessite une acceptation et prépare les données à envoyer à Mirakl ; si ces données ne contiennent aucune ligne de commande, il n'envoie rien. Puis il envoie la requête d'acceptation à Mirakl, avec l'adresse et la méthode HTTP configurées dans l'instance. Si Mirakl répond correctement, la commande passe à acceptée : la date et l'heure de la tentative et celles de l'acceptation sont enregistrées, le compteur de tentatives augmente d'une unité, la dernière erreur est effacée et la réponse de Mirakl est conservée. L'acceptation étant manuelle, un message est en plus publié sur l'instance. Comme l'état d'acceptation passe à accepté, le bouton n'est plus affiché sur cette commande.
Quelle erreur vois-je si l'appel à Mirakl échoue ?
Celle de l'échec lui-même, telle qu'elle arrive. Le bouton demande que les erreurs se propagent, donc l'action s'arrête et ce qui devait changer n'est pas enregistré (ni l'état d'erreur ni le compteur). Dans le cas automatique, en revanche, l'erreur est notée dans la commande. Comme la commande n'est toujours pas acceptée, le bouton reste visible tant qu'elle nécessite une acceptation et vous pouvez le cliquer à nouveau.
En quoi le bouton diffère-t-il du cas automatique ?
Selon le code, le bouton vérifie d'abord que vous êtes Mirakl Manager, affiche les erreurs au lieu de les noter dans la commande, publie un message sur l'instance à l'acceptation et n'applique pas le filtre des commandes retenues, car il appelle directement l'acceptation de la commande. Gardez à l'esprit l'avertissement du code sur ces commandes : les accepter reviendrait à s'engager à expédier ce qu'Odoo n'expédiera jamais.
Si vous avez besoin d'aide pour la mise en route
Mirakl Connector est un module à paiement unique par version d'Odoo, publié pour 17, 18, 19 et 20, et il nécessite l'abonnement à FlexigoTech Cloud, plan Connecteur : 49 €/mois ou 490 €/an HT, jusqu'à 3 comptes de la plateforme. Sans abonnement, ou avec le service suspendu, ce que donne l'abonnement s'arrête ; les données restent dans votre Odoo. Vous trouverez les détails sur la fiche Odoo Apps et sur la page du module. Si vous mettez en place Odoo, FlexigoTech déploie Odoo 17, 18, 19 et 20 et développe des connecteurs et des intégrations sur mesure.
À 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): views/mirakl_order_views.xml
- Code du module : flexigobe_mirakl_connector 20.0 (aa05e537): models/mirakl_order.py
- Code du module : flexigobe_mirakl_connector 20.0 (aa05e537): models/mirakl_instance.py
- apps.odoo.com/apps/modules/20.0/flexigobe_mirakl_connector
- flexigotech.com/en/services.html
- flexigotech.com/precios.html
