Skip to content

Event Catalog

All domain events flow through the Kafka event bus (ADR-0004). Events are versioned in contracts/event-schemas/ and must conform to the canonical JSON Schema before a producer is approved to publish.


Orders Events

Event Topic Owner Schema
OrderPlaced chakra.orders.placed orders-team OrderPlaced.json
OrderAwaitingPayment chakra.orders.awaiting-payment orders-team OrderAwaitingPayment.json
OrderConfirmed chakra.orders.confirmed orders-team OrderConfirmed.json
OrderCancelled chakra.orders.cancelled orders-team OrderCancelled.json

Retention: 7 days (transactional events). The EventStoreDB stream is the permanent record; Kafka is for downstream integration.


Inventory Events

Event Topic Owner Schema
StockReserved chakra.inventory.reserved inventory-team StockReserved.json
StockReleased chakra.inventory.released inventory-team StockReleased.json
StockReplenished chakra.inventory.replenished inventory-team StockReplenished.json

Retention: 7 days. The Redis CQRS projection is rebuilt from these events on failure.


Customers Events

Event Topic Owner Schema
CustomerRegistered chakra.customers.registered customers-team CustomerRegistered.json
AddressUpdated chakra.customers.address-updated customers-team AddressUpdated.json
AccountSuspended chakra.customers.suspended customers-team AccountSuspended.json

Retention: 30 days (GDPR — customers team owns deletion compliance).


Event Consumption Map

Consumer Events consumed Purpose
Inventory Service OrderPlaced Trigger stock reservation
Inventory Redis Projection StockReserved, StockReleased Maintain CQRS read model
Fulfillment Gateway OrderConfirmed Dispatch to WMS via SOAP
Orders Service (produces only) —

Schema Governance

  1. Schema changes are PRs to contracts/event-schemas/.
  2. Breaking changes require a new major version (v2/OrderPlaced.json) and a consumer migration window.
  3. validate-contracts.sh enforces that every schema file has a matching TypeScript interface in services/*/src/domain/events/.

See ADR-0004 for the Kafka topic naming convention and partitioning strategy.