The E-Commerce domain is the core business domain of FlowMart, our modern digital marketplace. This domain orchestrates all critical business operations from product discovery to order fulfillment, handling millions of transactions monthly across our global customer base.

Domain Overview

FlowMart’s E-Commerce domain is built on event-driven microservices architecture, enabling:

  • Real-time inventory management across multiple warehouses
  • Seamless payment processing with multiple providers
  • Smart order routing and fulfillment
  • Personalized customer notifications
  • Subscription-based shopping experiences
  • Advanced fraud detection and prevention

Sub domains

The E-Commerce domain is built on the following sub domains:

  • Orders - Core domain for order management
  • Payment - A generic domain for payment processing using Stripe as a payment provider
  • Subscription - Generic subscription domain handling users subscriptions

Target Architecture (Event Storming Results)

Our target architecture was defined through collaborative event storming sessions with product, engineering, and business stakeholders. This represents our vision for FlowMart’s commerce capabilities.

Target Architecture (Lucid Chart)

First we used Lucid to create a detailed target architecture diagram, but moved to use EventStorming results for the final target architecture.

Here is a reference to the Lucid diagram for the target architecture:

Current Production Architecture

Our current event-driven architecture powering FlowMart’s shopping experience:

Order Processing Flow

Loading graph...

Key Business Flows

Subscription Management

Our subscription service powers FlowMart’s popular “Subscribe & Save” feature:

Payment Processing

Secure, multi-provider payment processing with fraud detection:

Core Services

These services form the backbone of FlowMart’s e-commerce operations:

Resources

Resources (5)

Essential services powering our e-commerce platform
NameVersionTypeDescriptionOwners
Inventory Service
v0.0.2serviceService that handles the inventory
order-management
Orders Service
v0.0.3serviceService that handles orders
order-management
Notifications
v0.0.2serviceService that handles orders
order-management
Shipping Service
v0.0.1serviceService that handles shipping
dboyne
Payment Service
v0.0.1serviceService that handles payments
dboyne

Performance SLAs

  • Order Processing: < 2 seconds
  • Payment Processing: < 3 seconds
  • Inventory Updates: Real-time
  • Notification Delivery: < 30 seconds

Monitoring & Alerts

  • Real-time order volume monitoring
  • Payment gateway health checks
  • Inventory level alerts
  • Customer experience metrics
  • System performance dashboards
Event-driven architecture documentation: FlowMart