Subscription¶
aggregate-root commerce
A recurring purchase agreement between a customer and the retailer, automatically generating orders at a defined frequency without customer intervention.
Business Purpose: Enable recurring revenue through automatic periodic orders, improving customer lifetime value and product replenishment convenience.
Identity¶
| Type | Field | Description |
|---|---|---|
global |
subscription-id |
Unique identifier for the subscription. |
Attributes¶
| Attribute | Description |
|---|---|
frequency Frequency |
Renewal cadence — weekly, bi-weekly, monthly, quarterly, or annual. |
next-order-date Next Order Date |
Date on which the next recurring order will be created. |
start-date Start Date |
Date from which the subscription is active. |
end-date End Date |
Optional date after which the subscription expires automatically. |
payment-method-token Payment Method Token |
Tokenised payment method used for recurring authorisation. |
Lifecycle¶
draft → active → paused → cancelled → expired
Invariants¶
subscription-has-frequency— A Subscription must have a defined frequency before activation.subscription-has-payment-token— A Subscription must have a valid payment method token to generate recurring orders.
Relationships¶
| Type | Target |
|---|---|
belongs-to |
customer customer |
contains |
basket basket |
creates |
order order |
uses |
payment payment |
Events¶
| Event | Classification | Terminal |
|---|---|---|
SubscriptionCreated |
created | — |
SubscriptionActivated |
transitioned | — |
SubscriptionRenewed |
transitioned | — |
SubscriptionPaused |
transitioned | — |
SubscriptionCancelled |
transitioned | — |
SubscriptionExpired |
transitioned | — |
Used by Capabilities¶
- subscription-management Subscription Management
- basket-management Basket Management
Used by Processes¶
Used by Applications¶
- eCommerce Platform
ecommerce-platform - OMS
oms
Note
Subscriptions are a commerce-layer concept. Recurring orders are fulfilled through the standard order management flow.