Skip to content

Loyalty Member

aggregate-root loyalty


A customer enrolled in a loyalty programme who accumulates and redeems points and benefits.

Business Purpose: Identify programme membership and enable personalised reward and benefits management.

Identity

Type Field Description
value-based member-id Membership is uniquely identified by the customer and the loyalty programme.

Attributes

Attribute Description
member-id Member ID Stable membership identifier.
customer-id Customer ID Associated customer reference.
programme-id Programme ID Loyalty programme identifier.
status Status Current membership state.
enrolled-at Enrolled At Timestamp of programme enrolment.

Lifecycle

enrolledactivesuspendedcancelled

Invariants

  • member-requires-customer — A loyalty member must reference a valid customer.
  • points-balance-non-negative — Points balance must never be negative.

Relationships

Type Target
belongs-to customer customer
uses loyalty-account loyalty-account

Events

Event Classification Terminal
LoyaltyMemberEnrolled created

Used by Capabilities

  • loyalty Loyalty

Semantic Constraints

Constraint Type Rule
loyalty-member-references-customer association A Loyalty Member record must reference exactly one Customer profile.
loyalty-member-owned-by-loyalty-platform ownership Loyalty Member records are exclusively owned by the Loyalty Platform.

Note

Added in EVT-001 to satisfy event cross-references for the loyalty domain.

Referenced by APIs

Endpoint Method Role Capability
/loyalty/members POST response loyalty

← Back to Loyalty Domain