Subscriptions
Manages subscription lifecycle, billing cycles, and plan management for recurring revenue streams.
Overview
The Subscriptions Domain is responsible for managing all aspects of subscription-based services within our e-commerce platform. It is part of the E-Commerce E-Commerce Domain v1.0.0 The E-Commerce domain is the core business domain of FlowMart, our modern digital marketplace. This domain orchestrates ... Owner dboyne , full-stack Map Repo View docs domain and manages entities like BillingProfile BillingProfile Entity v1.0.0 Stores billing-related contact information and preferences for a customer, often used for invoices and communication. View docs and SubscriptionPeriod SubscriptionPeriod Entity v1.0.0 Represents a single billing cycle or interval within a subscription's lifetime. View docs .
This domain orchestrates the User Cancels Subscription User Cancels Subscription Flow v1.0.0 Flow for when a user has cancelled a subscription Owner subscriptions-management View flow View docs and Subscription Renewal Flow Subscription Renewal Flow Flow v1.0.0 Business flow for automatic subscription renewals and related processes Owner subscriptions-management View flow View docs flows for subscription lifecycle management.
Core Capabilities
- Subscription Lifecycle: Create, update, pause, resume, and cancel subscriptions
- Billing Cycles: Manage monthly, quarterly, and annual billing cycles
- Plan Management: Define and manage subscription plans and pricing
- Trial Periods: Support free trials and promotional periods
- Usage-based Billing: Track and bill based on usage metrics
Services
BillingService
The Billing Service Billing Service Service v0.0.1 Manages billing cycles, invoice generation, and payment scheduling for subscriptions Publishes InvoiceGenerated , SubscriptionPaymentDue Subscribes PaymentProcessed APIs GraphQL Owner dboyne Map Repo View docs handles billing cycle calculations, invoice generation, and payment scheduling. It coordinates with the Payment Payment Domain v0.0.1 Domain that contains payment related services and messages for processing financial transactions. Owner dboyne Map View docs domain and Payment Service Payment Service Service v0.0.1 Service that handles payments Publishes PaymentProcessed Subscribes PaymentInitiated Owner dboyne Map Repo View docs for processing recurring payments.
Cross-Domain Integration
The Subscriptions domain integrates closely with:
- Payment Payment Domain v0.0.1 Domain that contains payment related services and messages for processing financial transactions. Owner dboyne Map View docs : For processing recurring payments via Payment Service Payment Service Service v0.0.1 Service that handles payments Publishes PaymentProcessed Subscribes PaymentInitiated Owner dboyne Map Repo View docs
- Orders Orders Domain v0.0.3 The Orders domain handles all operations related to customer orders, from creation to fulfillment. This documentation pr... Owner dboyne , full-stack Map View docs : For managing subscription-based product orders
- Customer Domain: For customer account and profile management
Domain Events
Key events in the Subscriptions domain:
SubscriptionPaymentDue- Triggers payment collectionPlanMigrationCompleted- Subscription plan changed