Skip to main content
drupalreleases

Use direct release data with your AI assistant.

Learn more

CRM ECA: Event - Condition - Action

Security covered Under active development 1 sites

Part of the CRM ecosystem · 14 projects

crm_eca helps manage customer relationships by automating tasks and workflows. It allows you to create rules that trigger actions based on specific events, streamlining your business processes.

CRM ECA connects CRM to ECA: events, conditions, and actions for user–contact mapping, contact methods, and relationships. Plugins appear in the ECA modeller under the CRM category.

Generic insert, update, delete, load, and set-field on crm_contact, crm_contact_method, crm_relationship, and crm_user_contact_mapping already come from eca_content. This module does not reimplement those. It adds CRM-specific lifecycle events and operations that entity CRUD events cannot cover.

Features

Events

  • User-contact mapping requested — fires on an unsaved mapping inside CRM ensureContactForUser(), before insert (when entity insert is too late).
  • User mapped / unmapped — after a mapping entity is inserted or deleted.
  • Contact method primary changed — primary email, telephone, or address added or removed.
  • Relationship became inactive — published status cleared or end_date set.

Conditions

  • User has a mapped person contact
  • Contact is mapped to a user
  • Contact bundle (person, organization, household, or any site contact type)
  • Two contacts share a relationship of a given type (optional active-only)
  • Email or telephone already exists as a contact method (site-wide lookup)

Every condition can be negated. User and contact fields accept a token name, a bracketed token, or a numeric ID.

Actions

  • Load mapped contact or mapped user
  • Map a user to a person contact, ensure a contact for a user, or unmap (mapping entity only; the contact is not deleted)
  • Add email, telephone, or address methods (optional primary)
  • Find the unique person contact by email
  • Create a relationship (type, contacts A and B, optional dates) with CRM validation

Map user to contact fails when a mapping already exists or the contact is not a person, so webhook-style models can error and retry instead of silently skipping.

Tokens

Events and actions set canonical tokens such as [crm_contact], [crm_mapped_user], [crm_user_contact_mapping], [crm_contact_method], [crm_relationship], [crm_primary_email], and [crm_primary_telephone].

Access

Actions run as the same account ECA already uses. Mapping create, ensure, and unmap require administer crm. Add-method actions require update access on the contact. Create relationship respects CRM create access for that type. Models that run as anonymous (for example webhooks) should switch user with eca_user before write actions.

Requirements

  • Drupal 11.1+ or Drupal 12
  • CRM (^1)
  • ECA (^2.1 or ^3.0)
  • Drupal User module

Documentation

Module documentation covers events, conditions, actions, tokens, and access in detail.

Ask your assistant about CRM ECA: Event - Condition - Action

Check compatibility with your Drupal and PHP version, maintenance and security coverage, from current release data. How it works

Depends on

Dependencies of the latest stable release

No dependencies recorded for this project.

Required by

Tracked projects that depend on this one

No tracked projects depend on this one yet.

Activity

Tracked releases
2
Tracked since
Aug 2026
Latest release
1 month ago
Releases (12 mo)
2 ▲ from 0
Maintenance
Active

Releases

Version Type Core PHP Release date
1.0.0-alpha1 Pre-release 11 Sep 5, 2026
1.0.x-dev Dev Aug 27, 2026