Compound condition (AND / OR / NOT)
The Compound Condition robot evaluates several conditions with AND, OR and NOT grouping in Bitrix24 (Alaio) business processes and robots. It accepts up to four value pairs with comparison operators (eq, neq, gt, lt, contains, is_empty and more) or a JSON tree of arbitrary nesting, and returns a single Y/N flag for conditional branching.
The robot combines several checks into a single condition, replacing chains of nested Condition blocks in the workflow designer. Flat mode takes up to four value A — operator — value B pairs and AND or OR combining logic; JSON mode supports arbitrary nesting of and, or and not groups. Operators: eq, neq, gt, lt, gte, lte, contains, not_contains, starts_with, ends_with, is_empty, not_empty, matches; string comparison is case-insensitive by default. Typical use cases: before a deal stage change, verify the amount exceeds a threshold and the contact phone is filled; route a lead down the right branch when the source is advertising or the website. It returns a Y/N flag — compare it in the condition of the next step of the business process.
What input parameters does the robot accept?
| Parameter | Type | Required? | Default |
|---|---|---|---|
| Conditions as JSON (takes priority over flat mode). Format: {"and":[{"a":"X","op":"==","b":"Y"},{"or":[...]}]} | string | — | |
| Combining logic: AND (all must be true) / OR (at least one) | string | — | |
| Condition 1 — value A | string | — | |
| Condition 1 — operator (==, !=, <, >, contains, is_empty …) | string | — | |
| Condition 1 — value B | string | — | |
| Condition 2 — value A | string | — | |
| Condition 2 — operator | string | — | |
| Condition 2 — value B | string | — | |
| Condition 3 — value A | string | — | |
| Condition 3 — operator | string | — | |
| Condition 3 — value B | string | — | |
| Condition 4 — value A | string | — | |
| Condition 4 — operator | string | — | |
| Condition 4 — value B | string | — |
What does the robot return?
| Parameter | Type |
|---|---|
| Result (Y/N) | string |
Scenario: deal check before a stage change
- A deal enters the Approval stage
- The robot checks that the amount is over 100000 AND the source equals Website
- On Y the process moves the deal forward, on N it returns the deal to the manager
Related robots
Related articles
- Bitrix24 automation rule did not run: how to find out why
- Vacation management in Bitrix24: status, absence chart, and approval workflow
- Approval workflows in Bitrix24: routes, approval sheet and deadlines
- Automation rules in Bitrix24: setup guide and what to do when the stock ones fall short
- Smart Process Automation (SPA) in Bitrix24: when and how to use it
- Bitrix24 workflows: how to build a business process without drowning in the designer
- Duplicate deals in Bitrix24: how to find and prevent duplicates
- Robots not working in Bitrix24: step-by-step diagnostics and the log
- Sales funnel report in Bitrix24: why it lies and how to fix it
- PHP in Bitrix24 business processes: where it works and what replaces it
- Contract approval in Bitrix24: a step-by-step business process
- Document approval in Bitrix24: routes, approval sheet, and deadlines
- Invoice approval in Bitrix24: the feed, a smart process, or a business process
- Lists in Bitrix24: registries, business processes, and the limits of their use
- Triggers in Bitrix24: what they are, how they differ from robots, and why they don't fire
- The "if — then" condition in Bitrix24 robots: complex checks without code
- Pipelines in Bitrix24: configuring stages, tunnels, and automation on every stage
- Dependent and hidden fields in Bitrix24: how to set them up without a developer