Skip to content

CRM Membership

The CRM Membership module provides a flexible framework for managing memberships in Drupal. It allows the creation and management of different types of memberships with configurable terms, durations, and renewal logic.

The module integrates with the CRM module and provides entities and plugins for handling membership lifecycle management.

Key features

  • Contact-based memberships — Memberships are tied to CRM Contact entities (contacts as members, target contact as "member of").
  • Flexible term management — Different term calculation strategies via pluggable Membership Term plugins (fixed, rolling, lifetime).
  • Lifecycle workflows — Activation, renewal, expiration, and cancellation with optional grace periods.
  • Extensible architecture — Customize via custom plugins and event subscribers.

Documentation

Section Description
Getting started Requirements, installation, and where to find the admin UI.
Architecture High-level design: entities, plugin system, service, events, queue.
Plugin system Membership Term plugins: built-in types and how to implement custom ones.
Services & API MembershipService and events for checking membership status.
Development Cron and queue worker for membership expiration.
Configuration Config schema, settings form, and permissions.
Integration Views and routes for listing and managing memberships.

For developers