Event Schema Registry
Общий формат события
{
"event_id": "uuid-v4",
"event_type": "entity.action",
"version": 1,
"timestamp": "2026-03-30T12:00:00.000Z",
"source": "service-name",
"payload": { ... }
}Реестр пополняется по мере появления топиков
Список ниже — текущие активные топики, полные payload-структуры — в соответствующих
03-Services/{Service}/Events.md.
Текущие топики
| Topic | Producer | Consumers | Outbox | Описание |
|---|---|---|---|---|
store.table.upserted | Store Service | pos-bff | нет (fire-and-forget) | Realtime-инвалидация плана зала на POS |
catalog.product.upserted / .deleted | Catalog Service | pos-bff | да | Изменения товаров |
catalog.category.upserted / .deleted | Catalog Service | pos-bff | да | Изменения категорий |
catalog.modifier_group.upserted / .deleted | Catalog Service | pos-bff | да | Изменения модификаторов |
catalog.stoplist.updated | Catalog Service | pos-bff | да | Стоп-листы |
aggregator.order.received | Aggregator Service | pos-bff | да | Входящие заказы агрегаторов |
order.status.changed | Order Service | store-service-tables | да | Жизненный цикл заказа |
marketing.slide.changed (BR 6.1) | Store Service | pos-bff | да | CRUD маркетинговых слайдов для standby-карусели POS |
Конвенции
- Topic naming:
{service_domain}.{entity}.{action} - Consumer group:
{consumer_service}-group - Serialization: JSON, UTF-8
- Обязательные поля:
event_id,event_type,version,timestamp,source,payload - Идемпотентность: консьюмеры дедуплицируют по
event_id - Partitioning: по
entity_idдля гарантии порядка в рамках одной сущности - DLT: каждый топик имеет dead letter topic
{topic}.dlt