Place an order
The end-to-end customer purchase journey from cart checkout to confirmed order and downstream fulfilment.
Place an OrderPlace an OrderFlow•v1.0.0The end-to-end journey from a customer checking out their cart to a confirmed order — spanning the Shopping and Ordering...Ownerordering-platformView flowView docs is the highest-value customer journey in the catalog. It spans ShoppingShoppingDomain•v1.0.0The Shopping domain owns the customer's path to purchase — building a cart, applying promotions, and checking out. It co...Ownershopping-platformMapView docs, OrderingOrderingDomain•v1.0.0The Ordering domain turns a checked-out cart into a confirmed order. It orchestrates checkout — reserving inventory, aut...Ownerordering-platformMapView docs, PaymentsPaymentsDomain•v1.0.0The Payments domain takes payment for orders and processes refunds. It orchestrates authorization and capture through an...Ownerpayments-platformMapView docs and FulfilmentFulfilmentDomain•v1.0.0The Fulfilment domain gets a confirmed order to the customer. It reserves stock, picks and packs orders in the warehouse...Ownerfulfilment-platformMapView docs.
Flow map
Happy path
- The customer checks out through Cart APICart APIService•v1.0.0
The public-facing API for shopping carts. Handles commands to add and remove items and to check out, and publishes an ev...Publishescart-checked-out, calculate-discountSubscribesadd-item-to-cart, remove-item-from-cart +1APIsOpenAPIOwnershopping-platformMapRepoView docs using Checkout CartCheckout CartCommand•v1.0.0Command to check out a shopping cart. Ownershopping-platformSchemaMapView docs.
- Cart APICart APIService•v1.0.0
The public-facing API for shopping carts. Handles commands to add and remove items and to check out, and publishes an ev...Publishescart-checked-out, calculate-discountSubscribesadd-item-to-cart, remove-item-from-cart +1APIsOpenAPIOwnershopping-platformMapRepoView docs publishes Cart Checked OutCart Checked OutEvent•v1.0.0Published when a customer has checked out their cart. Ownershopping-platformSchemaMapView docs.
- Checkout APICheckout APIService•v1.0.0
The entry point to the Checkout System. Receives the checkout command from the Shopping domain and starts the checkout f...Subscribescheckout-cartOwnerordering-platformMapRepoView docs and Checkout OrchestratorCheckout OrchestratorService•v1.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 start checkout orchestration.
- Checkout OrchestratorCheckout OrchestratorService•v1.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 reserves inventory with Reserve InventoryReserve InventoryCommand•v1.0.0Command to reserve stock for the items in a checked-out cart. Ownerordering-platformSchemaMapView docs.
- It authorizes payment with Authorize PaymentAuthorize PaymentCommand•v1.0.0Command to authorize payment for the total of a checked-out cart. Ownerordering-platformSchemaMapView docs.
- It creates the order with Create OrderCreate OrderCommand•v1.0.0Command to create a new order from a checked-out cart. Ownerordering-platformSchemaMapView docs.
- Order ServiceOrder ServiceService•v1.0.0
The system of record for orders. Creates and cancels orders, serves order lookups, and publishes events as orders move t...Publishesorder-created, order-completed +1Subscribescreate-order, cancel-order +1APIsAsyncAPIOwnerordering-platformMapRepoView docs publishes Order CreatedOrder CreatedEvent•v1.0.0Published when a new order has been created. Ownerordering-platformSchemaMapView docs and eventually Order CompletedOrder CompletedEvent•v1.0.0Published when an order has been fulfilled and completed. Ownerordering-platformSchemaMapView docs.
- Fulfilment consumes completed orders and prepares shipment.
Important boundaries
The flow crosses several ownership boundaries. Shopping owns the cart, Ordering owns the order, Payments owns payment outcome, and Fulfilment owns stock and shipping. Each handoff is a contract boundary.
Failure points
The two most important failure points are inventory and payment. If Reserve InventoryReserve InventoryCommand•v1.0.0Command to reserve stock for the items in a checked-out cart. Ownerordering-platformSchemaMapView docs or Authorize PaymentAuthorize PaymentCommand•v1.0.0Command to authorize payment for the total of a checked-out cart. Ownerordering-platformSchemaMapView docs fails, checkout must compensate and avoid creating an order.
Review the Acme place-an-order flow and identify the operational impact of a checkout change. Focus on cart checkout,
inventory reservation, payment authorization, order creation, fulfilment handoff, compensation behavior and teams that
need to review the change. Return a concise impact checklist with risks and required catalog updates.Review the Acme place-an-order flow and identify the operational impact of a checkout change. Focus on cart checkout, inventory reservation, payment authorization, order creation, fulfilment handoff, compensation behavior and teams that need to review the change. Return a concise impact checklist with risks and required catalog updates.
Use Checkout SagaCheckout SagaFlow•v1.0.0How the Checkout Orchestrator turns a checked-out cart into an order — reserving inventory, authorizing payment and crea...Ownerordering-platformView flowView docs for the detailed orchestration view.