Setting up Bitrix24 CRM triggers

Our company is engaged in the development, support and maintenance of Bitrix and Bitrix24 solutions of any complexity. From simple one-page sites to complex online stores, CRM systems with 1C and telephony integration. The experience of developers is confirmed by certificates from the vendor.
Our competencies:
Development stages
Latest works
  • image_website-b2b-advance_0.png
    B2B ADVANCE company website development
    1177
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Website development for FIXPER company
    811
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    Development based on Bitrix, Bitrix24, 1C for the company Development of an Online Appointment Booking Widget for a Medical Center
    564
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Development based on 1C Enterprise for MIRSANBEL
    747
  • image_crm_dolbimby_434_0.webp
    Website development on CRM Bitrix24 for DOLBIMBY
    655
  • image_crm_technotorgcomplex_453_0.webp
    Development based on Bitrix24 for the company TECHNOTORGKOMPLEKS
    976

Setting Up CRM Triggers in Bitrix24

A deal has been sitting at the "Proposal Sent" stage for a week, the client clicked the link in the email — but the manager doesn't know about it. Triggers solve this: they move a CRM entity in response to external events, not manager actions.

Triggers vs. Robots: The Core Difference

Robots fire when a stage is entered and perform actions. Triggers fire on an external event and move the entity to the target stage.

Technically both mechanisms use the bizproc engine, but triggers are implemented via \Bitrix\Crm\Automation\Trigger\BaseTrigger and listen for events through Bitrix event handlers (AddEventHandler).

Available Triggers and Their Use Cases

Incoming call — a lead or deal moves to a stage when an inbound call comes from a linked number. Requires telephony configured in Bitrix24 (the voximplant module).

Email opened / link clicked — a trigger from the email tracker module. When a client opens an email sent from the CRM, or clicks a link in it, the deal can automatically advance to the next stage. Works only with emails sent through the built-in CRM mailbox.

CRM form submitted — a site visitor filled out a form configured in CRM → Lead Generation → CRM Forms. A lead is created and immediately placed at the target stage.

Incoming message — the client wrote in a chat (open channel). Useful for automatically moving a lead from "New" to "In Progress" on the client's first reply.

Invoice paid — when an invoice is successfully paid, the deal moves to the "Paid" stage. Requires a connected payment system.

Webhook — an external system sends a request, the trigger fires. The most flexible option for integrations.

Configuring a Trigger in Practice

Path: CRM → [Entity type] → Robots → "Triggers" tab. Select the target stage and the event type.

For a webhook trigger the system generates a unique URL like:

https://portal.bitrix24.com/rest/WEBHOOK_TOKEN/crm.automation.trigger/?target=DEAL_ID&code=MY_TRIGGER

This URL is called from an external system — and the deal with DEAL_ID moves to the stage the trigger is bound to.

Firing Conditions

A trigger can be limited by conditions: fires only if the deal is at a specific stage, the responsible person is a particular user, or a field value matches a condition. Without conditions the trigger will move the entity to the target stage from any state — which is often undesirable.

Common Problems

  • Email-opened trigger not working — the email was sent from a mail client directly, not through the CRM. Open tracking only works for emails sent via Bitrix24.
  • Webhook trigger not firing — wrong DEAL_ID or code in the URL, or the webhook token has expired (recreate it in REST settings).
  • Duplicate stage transitions — the trigger fires multiple times. Add a condition "current stage = X" so a repeated transition to the same stage doesn't restart the chain.

Setup Time

Configuring a set of triggers for one funnel — 2–4 hours depending on the number of events and the need to test integrations with telephony or external systems.