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énementSe déclenche quanddata.object
order.createdUne 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_changedLe 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.updatedLe contenu d'un produit change depuis le tableau de bord, l'API, ou une modification côté canal synchronisée dans NembolProduit
product.deletedUn produit est supprimé{ "id": … }
inventory.updatedLa 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 besoinProduit (avec les variants[] mises à jour)
listing.status_changedUne 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 suitAnnonce (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.completedUne opération asynchrone se termine (succeeded, partial ou failed). Abonnez-vous à cet événement plutôt que d'interroger /operationsOpération
channel_account.updatedLes 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 annulerCompte de canal
channel_account.connectedUn compte de canal connecté via l'API a terminé sa connexion (data.connection_id)Compte de canal
channel_account.disconnectedUn 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 (ou operation.completed après une publication).
  • Écritures « fire-and-forget » → operation.completed pour 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 (et channel_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é.

Sur cette page