Skip to content

Contact Relationship Management

CRM is a Drupal 11 module for managing contacts, communication methods, relationships between contacts, and optional links to Drupal user accounts.

  • Required modules — hard dependencies declared in crm.info.yml
  • Entity types — Contact, Contact Method, Relationship, and configuration entities
  • Integrations — Comment, Group, JSON:API, Navigation, REST, Search, User, and Views
  • CRM menu/crm routes, menu, and theme settings
  • Permissions — static and bundle-generated permissions
  • Testing — running PHPUnit and ParaTest with DDEV

External resources

Installation behavior

CRM requires seven modules (four contrib, three core). See Dependencies for the full list and installation steps.

When CRM is first enabled, it creates default contact types (person, organization, household), contact method types, relationship types, and method details from configuration in config/install/. The person contact type is locked after install. CRM also seeds a default organization contact (from the site name and email), a person contact for user 1, a user–contact mapping, and an employee relationship linking them.

Optional configuration for Comment, Search, and REST is imported automatically when those modules are enabled alongside CRM. See the integration guides for details.

Drush commands

Command Alias Description
crm:recalculate-statistics crm-rs Rebuild relationship statistics for all contacts
crm:generate-simpsons-recipe crm-gsr Regenerate Simpsons demo recipe content from CSV

See Tests and Thank You