Traduite de l'anglais. En cas de différence, la page en anglais fait foi. Lire en anglais
Catalogue des événements
Chaque type d'événement, quand il se déclenche et ce que contient data.object.
| Événement | Se déclenche quand | data.object |
|---|---|---|
order.created | Une nouvelle commande est importée depuis n'importe quel canal (poller ou webhook du canal). Exactement un par commande du canal, quel que soit son nombre de lignes (elles sont toutes dans le contenu) | Commande |
order.status_changed | Le status normalisé d'une commande change (par ex. awaiting_shipment → shipped, → canceled). Un événement par changement : un nouveau suivi, un détail de traitement ou un source_status seul ne le déclenche pas (relisez la commande si vous en avez besoin) | Commande. data.status est le statut après le changement, data.previous_status celui d'avant ; ils diffèrent toujours |
product.updated | Le contenu d'un produit change depuis le tableau de bord, l'API, ou une modification côté canal synchronisée dans Nembol | Produit |
product.deleted | Un produit est supprimé | { "id": … } |
inventory.updated | La quantité ou le prix d'une variante change suite à une vente sur n'importe quel canal (data.source: "order", un événement par ligne de commande, avec data.channel, data.order_id_on_channel, le data.variant_id / data.sku vendu et data.quantity_change, par ex. -1) ou depuis l'API (data.source: "api"). L'annulation d'une telle commande avant expédition restitue les unités (data.source: "order", data.reason: "order_canceled", data.quantity_change positif). Les changements de quantité effectués dans le tableau de bord ou directement sur un canal ne le déclenchent pas encore : relisez GET /products si vous en avez besoin | Produit (avec les variants[] mises à jour) |
listing.status_changed | Une annonce atteint un nouveau statut stable : listed, imported, error ou delisted. Un événement par changement, jamais pour une écriture qui conserve le statut. ongoing (publication ou retrait en cours) n'est pas notifié : l'opération le suit | Annonce (la seule annonce qui a changé). data.status est le nouveau statut, data.previous_status le dernier notifié : les événements consécutifs s'enchaînent donc toujours (listed → delisted → listed). null uniquement sur le premier événement d'une annonce |
operation.completed | Une opération asynchrone se termine (succeeded, partial ou failed). Abonnez-vous à cet événement plutôt que d'interroger /operations | Opération |
channel_account.updated | Les paramètres d'un compte de canal changent, depuis le tableau de bord ou l'API (un événement par compte modifié). data.source vaut dashboard ou api ; data.previous_attributes contient les anciennes valeurs. Renvoyez-les en PATCH pour annuler | Compte de canal |
channel_account.connected | Un compte de canal connecté via l'API a terminé sa connexion (data.connection_id) | Compte de canal |
channel_account.disconnected | Un compte de canal a été déconnecté, depuis le tableau de bord ou l'API (data.source) | Compte de canal (id + canal, status: disconnected) |
De nouveaux types d'événements sont ajoutés au fil du temps. Les consommateurs doivent accepter les valeurs
de type inconnues (les journaliser et en accuser réception).
De quels événements ai-je besoin ?
- Synchroniser les commandes dans votre système →
order.created+order.status_changed. - Synchroniser le stock vers votre système →
inventory.updated(se déclenche pour les ventes sur n'importe quel canal ; c'est ainsi que vous gardez un entrepôt externe synchronisé). - « Mon produit est-il en ligne ? » →
listing.status_changed(ouoperation.completedaprès une publication). - Écritures « fire-and-forget » →
operation.completedpour obtenir le résultat par canal sans interroger l'API. - Audit / annulation des paramètres de canal →
channel_account.updated. - Savoir quand un marchand a fini de connecter un canal →
channel_account.connected(etchannel_account.disconnected).
Dernière mise à jour le 20 octobre 2026
Besoin d'aide ?
Écrivez-nous et une personne vous répond, généralement sous un jour ouvré.