Avant d'annuler
Cdiscount demande au vendeur de ne pas annuler de ventes de son propre chef sans motif justifié. C'est pourquoi l'annulation n'est pas un simple bouton : elle va avec un motif de la liste qu'Octopia admet pour le canal de la commande, en agissant comme vendeur et selon l'état où elle se trouve. Si le problème vient du stock, pensez aussi à ce qui l'a causé, car la prochaine vente de ce produit peut finir de la même façon.
Ce qu'il vous faut :
- La commande Cdiscount déjà importée dans Odoo, avec son canal de vente.
- Savoir si vous annulez la commande entière ou seulement quelques lignes.
- Si elle est déjà facturée, décider si vous voulez qu'Odoo prépare l'avoir tout seul.

Pas à pas
- Allez dans Octopia › Orders › Cancellations et créez une nouvelle demande.
- Choisissez la commande et le type : Full Order pour l'annuler entièrement, Specific Lines pour ne retirer que quelques lignes.
- Cliquez sur « Fetch Eligible Reasons ». Odoo récupère auprès d'Octopia les motifs valables pour cette commande et les enregistre ; vous les avez aussi dans Octopia › Configuration › Referentials › Cancellation Reasons.
- Choisissez le motif. La case pour rembourser aussi les frais de port est cochée par défaut ; décochez-la seulement si cela ne s'applique pas.
- Si l'annulation est partielle, ajoutez les lignes que vous annulez. Chaque ligne peut avoir son propre motif ; sinon, elle prend celui de la demande.
- Cliquez sur « Submit to Octopia ». La demande passe de Draft à In Progress.

Ce qui se passe ensuite
La tâche « Octopia: poll async jobs (packages, cancellations, gestures) » consulte toutes les 5 minutes les demandes encore en cours. Si vous ne voulez pas attendre, « Poll Status » sur la demande elle-même fait la même consultation sur-le-champ.
- In Progress Octopia a reçu la demande et la traite.
- Blocked La demande est restée bloquée chez Octopia. La liste la marque en rouge : ouvrez-la et vérifiez-la.
- Done Octopia l'a acceptée. À partir de là, c'est Odoo qui agit.
Quand elle arrive en Done, ce que fait Odoo dépend de si vous avez déjà facturé :
| Situation | Ce que fait Odoo |
|---|---|
| Annulation totale sans facture validée | Annule la commande client |
| Avec facture et « Auto-create Credit Notes » coché | Crée un avoir en brouillon |
| Annulation partielle avec facture | L'avoir ne reprend que les lignes annulées |
| Avec facture et la case décochée | Ne crée rien : c'est vous qui faites l'avoir |
| Annulation partielle sans facture | Ne touche pas à la commande client : ajustez vous-même les quantités |
L'avoir reste en brouillon pour que vous le vérifiiez avant de le valider. La case se trouve dans le compte Octopia, onglet Automation, groupe Accounting.

Si quelque chose ne marche pas
The order has no sales channel to fetch reasons for.La commande n'a pas de canal de vente et Odoo ne sait pas quels motifs demander. Vérifiez la commande importée avant de continuer.A partial cancellation needs at least one line.Vous avez choisi Specific Lines sans ajouter de ligne.- La demande reste en Blocked. Ouvrez-la et regardez la commande chez Octopia : tant qu'elle reste ainsi, Odoo ne touche ni à la vente ni à la facture.
Puis-je annuler une seule unité d'une ligne ?
La demande partielle travaille par lignes de la commande : chaque ligne que vous ajoutez est annulée avec son motif.
Est-ce dans toutes les versions ?
Oui, dans le connecteur publié pour Odoo 17, 18, 19 et 20.
À lire aussi
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
- Code du module : flexigobe_octopia_connector · 17.0 501e336 · 18.0 e234fab · 19.0 d258001 · 20.0 5cbe12a: models/octopia_order_actions.py
- Code du module : flexigobe_octopia_connector · 17.0 501e336 · 18.0 e234fab · 19.0 d258001 · 20.0 5cbe12a: data/octopia_cron_data.xml
- marketplace.cdiscount.com/wp-content/uploads/2025/08/2025.08.25-CGMAD-FR.pdf
- apps.odoo.com/apps/modules/20.0/flexigobe_octopia_connector
