Promotion System
Internal system that calculates the discounts and promotions that apply to a cart. It owns promotion rules and returns calculated discounts to the Cart System.
Overview
The Promotion System owns the discount and promotion rules at Acme Inc. It receives requests to calculate the discount for a cart, evaluates the applicable rules from the Promotion DatabasePromotion DatabaseContainerv1.0.0PostgreSQL store of promotion and discount rules.MapView docs, and publishes a Discount CalculatedDiscount CalculatedEventv1.0.0Published when a discount has been calculated for a cart.
Ownershopping-platformSchemaMapView docs event with the result. It provides discounts to the Cart SystemCart SystemSystemv1.0.0Internal system that owns the customer's shopping cart and the checkout flow. It is the source of truth for cart content...Ownershopping-platformMapView docs.
Context Diagram
How this system relates to the other systems around it.
Resource Diagram
The services, data stores and messages that make up this system.
What’s inside
| Component | Type | Responsibility |
|---|---|---|
| Promotion ServicePromotion ServiceServicev1.0.0 | Service | Evaluates promotion rules and calculates discounts for a cart. |
| Promotion DatabasePromotion DatabaseContainerv1.0.0 | Data store | PostgreSQL store of promotion and discount rules. |
Messages this system publishes
- Discount CalculatedDiscount CalculatedEventv1.0.0Published when a discount has been calculated for a cart. Ownershopping-platformSchemaMapView docs — a discount has been calculated for a cart.