Business Events¶
Purpose¶
Business Events represent meaningful business facts that have occurred. Events are immutable and expressed in the past tense.
Business Events
- OrderCreated
- InventoryReserved
- PaymentAuthorized
Event Rules¶
Every Business Event SHALL:
- refer to exactly one Business Object;
- occur at a specific point in time;
- be immutable;
- contain a unique identifier;
- contain the Business Object identifier.
Canonical Event Naming¶
<EventObject><PastTenseVerb>
Event Names
- OrderCreated
- OrderCancelled
- ShipmentDelivered
- CustomerRegistered
- InventoryAllocated
Mandatory Event Metadata¶
| Field | Description |
|---|---|
| eventId | Unique identifier |
| eventType | Canonical event name |
| occurredAt | UTC timestamp |
| aggregateType | Business Object |
| aggregateId | Business Object identifier |
| source | Producing component |
| version | Event schema version |
Canonical Events¶
Customer¶
- CustomerRegistered
- CustomerUpdated
- CustomerMerged
- CustomerDeleted
Basket¶
- BasketCreated
- BasketUpdated
- BasketCheckedOut
- BasketExpired
Order¶
- OrderCreated
- OrderValidated
- OrderConfirmed
- OrderAllocated
- OrderCancelled
- OrderCompleted
Inventory¶
- InventoryReserved
- InventoryAllocated
- InventoryReleased
- InventoryAdjusted
Shipment¶
- ShipmentCreated
- PickingStarted
- PickingCompleted
- ShipmentDispatched
- ShipmentDelivered
Payment¶
- PaymentAuthorized
- PaymentCaptured
- PaymentSettled
- PaymentRefunded
Event Payload
References¶
- UCBOK-001 Meta Model
- UCBOK-300 Business Services
- UCBOK-400 Core Business Objects