Aller au contenu principal
Octopia (Cdiscount)

Envoyer un geste commercial Cdiscount depuis Odoo

Un geste commercial rembourse au client une partie du montant d'une commande Cdiscount sans l'annuler : un retard, des frais de port facturés en trop, une pièce manquante. Avec le connecteur Octopia, il se prépare dans Odoo, on vérifie combien de budget reste pour cette commande, il part chez Octopia et Odoo suit son état toutes les 5 minutes. Si vous l'avez activé, quand Octopia le considère comme fait, Odoo prépare l'avoir en brouillon.

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

L'essentiel

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

Quand c'est possible

Le geste porte sur une commande déjà en route : Odoo ne l'envoie que si la commande Octopia est en Shipped ou Delivered. De plus, le canal de vente doit accepter les gestes. Vous le voyez dans Octopia › Configuration › Sales Channels, dans le groupe « Commercial Gestures » de chaque canal : « Commercial Gestures Enabled », « Gesture Max Amount », « Gesture Max Rate (%) » et « Gesture Currency ». Ce sont des données en lecture seule qui arrivent d'Octopia lors de la synchronisation de la configuration. Tant qu'un canal n'a pas été synchronisé, Odoo ne bloque pas le geste pour cette raison et le dernier mot revient à Octopia.

Seuls les utilisateurs qui ont les droits de gestionnaire sur le connecteur voient les boutons du geste.

48 business hours to accept each Cdiscount order. Do it in Odoo
Vidéo : 48 business hours to accept each Cdiscount order. Do it in Odoo (vidéo en anglais)

Pas à pas

  1. Allez dans Octopia › Orders › Commercial Gestures et créez-en un nouveau.
  2. Choisissez la commande et le motif, et écrivez le détail si besoin.
  3. Cliquez sur « Check Remaining Budget ». Odoo lit chez Octopia combien il reste à accorder sur cette commande et le place dans le champ de budget disponible.
  4. Saisissez le montant du geste, sans dépasser ce budget.
  5. Cliquez sur « Submit to Octopia » et confirmez : l'avertissement rappelle que le geste rembourse ce montant au client.
  6. Le geste passe en In Progress avec la référence Octopia et la date d'envoi.
Schéma du parcours d'un geste commercial Cdiscount envoyé depuis Odoo
Le geste avec les libellés d'Odoo : budget avec « Check Remaining Budget », envoi avec « Submit to Octopia », consultation toutes les 5 minutes et, à l'arrivée en Done, l'avoir en brouillon. Schéma réalisé à partir du code du module.

Les motifs

Octopia demande un motif de sa liste, et Odoo vous propose les mêmes : Late Delivery, Missing Product, Product Return Fees, Quantity Compensation, Reference Mistake, Shipping Fees, Fees Unduly Charged, Warranty Period Exceeded et Other. Choisissez celui qui décrit ce qui s'est passé ; le détail, si vous le remplissez, voyage avec le geste.

Ce qu'il vérifie à l'envoi

VérificationMessage si elle échoue
Le canal n'a pas les gestes désactivésSales channel %s has commercial gestures disabled.
La commande est en Shipped ou DeliveredCommercial gestures apply to shipped or delivered orders only (order %s is %s).
Le montant ne dépasse pas le budget restant, quand celui-ci est supérieur à 0Gesture amount %(amount).2f exceeds the remaining budget %(available).2f for this order.

Odoo relit le budget juste avant l'envoi, donc le troisième contrôle utilise le chiffre du moment, pas celui que vous avez vu en cliquant sur le bouton. Ce contrôle ne bloque que s'il y a un budget supérieur à 0 : avec un budget à 0, épuisé ou sans donnée, Odoo envoie quand même le geste et c'est Octopia qui décide.

Liste des commandes Cdiscount dans Odoo avec leur état
La liste des commandes Cdiscount dans Odoo, avec canal, client, montant et état : le geste ne s'envoie que sur celles en Shipped ou Delivered. Capture réelle d'Odoo avec l'API Octopia simulée.

Après l'envoi

La tâche « Octopia: poll async jobs (packages, cancellations, gestures) » interroge Octopia toutes les 5 minutes sur les gestes en In Progress. Si vous ne voulez pas attendre, « Poll Status » fait la même consultation sur-le-champ. Le geste se termine en Done si Octopia l'accepte ou en Rejected sinon ; la liste les affiche en vert et en rouge.

Avec Done, Odoo peut vous préparer l'avoir. Il faut que « Auto-create Credit Notes » soit cochée dans le compte Octopia et que la commande ait un client. L'avoir est créé en brouillon, avec une seule ligne pour le montant du geste et sans taxes, et sa référence commence par « Octopia commercial gesture ». Il est sans taxes parce que ce montant est le brut remboursé par le canal, TVA déjà comprise. Vérifiez-le avant de le valider : si votre comptabilité doit ventiler cette TVA, faites-le sans changer le total.

Le geste annule-t-il la commande ?

Non. La commande reste telle quelle et le client ne reçoit que le montant du geste. Pour annuler la commande entière ou quelques lignes, il y a l'annulation de commandes Cdiscount.

Est-ce dans toutes les versions ?

Oui, les gestes commerciaux sont dans le connecteur publié pour Odoo 17, 18, 19 et 20.

À lire aussi

Connecter Cdiscount (Octopia) à Odoo, étape par étapeGuide pour connecter Cdiscount et les marketplaces Octopia à Odoo 17, 18, 19 et 20 : identifiants, canal de vente, catalogue, offres, commandes et expédition.Cdiscount annule les commandes non acceptées sous 48 heures : ce que personne ne vous ditCdiscount impose d'accepter les commandes sous 48 heures ouvrées avec un taux de 97,5 %. Ce qui arrive si vous ratez le délai et comment Odoo le gère.Vendre sur Cdiscount sans ERP : idées reçues et réalitéCe que croient souvent les vendeurs qui travaillent sur Cdiscount avec le back-office Octopia et des tableurs, confronté aux règles du canal et à ce que fait Odoo.
Vérifié dans le code du connecteur (version 17.0, 18.0, 19.0 et 20.0) et dans les sources citées

Sources

  • Code du module : flexigobe_octopia_connector · 17.0 501e336 · 18.0 e234fab · 19.0 d258001 · 20.0 5cbe12a: views/octopia_order_actions_views.xml, models/octopia_order_actions.py
  • Code du module : flexigobe_octopia_connector · 17.0 501e336 · 18.0 e234fab · 19.0 d258001 · 20.0 5cbe12a: models/octopia_api_client.py (GESTURE_REASON_SELECTION, GESTURE_STATUS_SELECTION), models/octopia_order_actions.py
  • Code du module : flexigobe_octopia_connector · 17.0 501e336 · 18.0 e234fab · 19.0 d258001 · 20.0 5cbe12a: models/octopia_order_actions.py (action_submit, action_check_available)
  • Code du module : flexigobe_octopia_connector · 17.0 501e336 · 18.0 e234fab · 19.0 d258001 · 20.0 5cbe12a: models/octopia_sales_channel.py, views/octopia_sales_channel_views.xml, views/menu.xml
  • Code du module : flexigobe_octopia_connector · 17.0 501e336 · 18.0 e234fab · 19.0 d258001 · 20.0 5cbe12a: models/octopia_order_actions.py (action_poll, _on_done), models/octopia_account.py, data/octopia_cron_data.xml
  • apps.odoo.com/apps/modules/20.0/flexigobe_octopia_connector