Checkout System
Internal system that orchestrates checkout. When a cart is checked out it reserves inventory, authorizes payment, and asks the Order Management System to create the order.
Overview
The Checkout System drives the checkout flow at Acme Inc. When the ShoppingShoppingDomainv1.0.0The Shopping domain owns the customer's path to purchase — building a cart, applying promotions, and checking out. It co...Ownershopping-platformMapView docs domain checks out a cart, the Checkout APICheckout APIServicev1.0.0The entry point to the Checkout System. Receives the checkout command from the Shopping domain and starts the checkout f...Subscribescheckout-cartOwnerordering-platformMapRepoView docs receives the Checkout CartCheckout CartCommandv1.0.0Command to check out a shopping cart.
Ownershopping-platformSchemaMapView docs command and hands it to the Checkout OrchestratorCheckout OrchestratorServicev1.0.0
Runs the checkout saga. Reserves inventory, authorizes payment and creates the order, coordinating the steps that turn a...Publishesreserve-inventory, authorize-payment +1Ownerordering-platformMapRepoView docs. The orchestrator runs the checkout saga — reserving inventory via Reserve InventoryReserve InventoryCommandv1.0.0Command to reserve stock for the items in a checked-out cart.
Ownerordering-platformSchemaMapView docs, authorizing payment via Authorize PaymentAuthorize PaymentCommandv1.0.0Command to authorize payment for the total of a checked-out cart.
Ownerordering-platformSchemaMapView docs, and finally creating the order via Create OrderCreate OrderCommandv1.0.0Command to create a new order from a checked-out cart.
Ownerordering-platformSchemaMapView docs against the Order Management SystemOrder Management SystemSystemv1.0.0Internal system that is the source of truth for orders. It creates orders, tracks their lifecycle, and publishes events ...Ownerordering-platformMapView docs.
Context Diagram
How this system relates to the other systems around it.
Resource Diagram
The services and messages that make up this system.
What’s inside
| Component | Type | Responsibility |
|---|---|---|
| Checkout APICheckout APIServicev1.0.0 | Service | Entry point for checkout. Receives the checkout command and starts the flow. |
| Checkout OrchestratorCheckout OrchestratorServicev1.0.0 | Service | Runs the checkout saga — reserve inventory, authorize payment, create order. |
Messages this system sends
- Reserve InventoryReserve InventoryCommandv1.0.0Command to reserve stock for the items in a checked-out cart. Ownerordering-platformSchemaMapView docs — reserve stock for the items in the cart.
- Authorize PaymentAuthorize PaymentCommandv1.0.0Command to authorize payment for the total of a checked-out cart. Ownerordering-platformSchemaMapView docs — authorize payment for the order total.
- Create OrderCreate OrderCommandv1.0.0Command to create a new order from a checked-out cart. Ownerordering-platformSchemaMapView docs — create the order in the Order Management System.