Cart System
Internal system that owns the customer's shopping cart and the checkout flow. It is the source of truth for cart contents and publishes an event when a cart is checked out.
Overview
The Cart System owns the shopping cart at Acme Inc. It accepts commands to add and remove items and to check out, persists cart contents in the Cart DatabaseCart DatabaseContainerv1.0.0PostgreSQL database that is the system of record for shopping carts and their items.MapView docs, and asks the Promotion SystemPromotion SystemSystemv1.0.0Internal system that calculates the discounts and promotions that apply to a cart. It owns promotion rules and returns c...Ownershopping-platformMapView docs to calculate the discounts that apply. When a cart is checked out it publishes a Cart Checked OutCart Checked OutEventv1.0.0Published when a customer has checked out their cart.
Ownershopping-platformSchemaMapView docs event.
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 |
|---|---|---|
| Cart APICart APIServicev1.0.0 | Service | Public-facing API. Handles add/remove/checkout commands and publishes the checkout event. |
| Cart DatabaseCart DatabaseContainerv1.0.0 | Data store | PostgreSQL system of record for shopping carts and their items. |
Messages this system publishes
- Cart Checked OutCart Checked OutEventv1.0.0Published when a customer has checked out their cart. Ownershopping-platformSchemaMapView docs — a customer has checked out their cart.