How truongphuckhue/ecommerce-microservices works
This repository is documented as an e-commerce microservices platform with a separate PromoX marketing platform. The principal workflow is a customer request through the gateway into commerce services, followed by order, inventory, and payment coordination through a compensating Saga. The tree contains only README.md and no source excerpts, so paths and undocumented service wiring are omitted; the diagram reflects documented capabilities and relationships only.
Components 20
API Entry
- API Gateway
E-Commerce
- User Service
- Product Service
- Cart Service
- Notification Service
Order Saga
- Order Service
- Inventory Service
- Payment Service
PromoX Marketing
- Campaign Service
- Promotion Service
- FlashSale Service
- Coupon Service
- Reward Service
- Analytics Service
Platform Services
- Kafka
- Eureka Server
- PostgreSQL
- Redis
Other components
- Customer
- Payment Gateway
Connections 25
- Customer → API Gateway: requests
- API Gateway → User Service: authenticates
- API Gateway → Product Service: routes requests
- API Gateway → Cart Service: routes requests
- API Gateway → Order Service: routes requests
- Order Service → Kafka: publishes order
- Kafka → Inventory Service: dispatches event
- Inventory Service → Kafka: publishes result
- Kafka → Payment Service: dispatches event
- Payment Service → Payment Gateway: processes payment
- Payment Service → Kafka: publishes outcome
- Kafka → Inventory Service: dispatches compensation
- Kafka → Order Service: dispatches status event
- Kafka → Notification Service: delivers events
- API Gateway → Campaign Service: routes requests
- API Gateway → Promotion Service: routes requests
- API Gateway → FlashSale Service: routes requests
- API Gateway → Coupon Service: routes requests
- API Gateway → Reward Service: routes requests
- API Gateway → Analytics Service: routes requests
- API Gateway → Eureka Server: discovers services
- Product Service → PostgreSQL: stores catalog
- Inventory Service → PostgreSQL: stores stock
- Order Service → PostgreSQL: stores orders
- Cart Service → Redis: caches sessions