CRM Trigger¶
Overview¶
The CRM Trigger automatically starts workflows when specific events occur in your BaseCloud CRM. This creates powerful automation based on contact behavior, data changes, and CRM activities without any manual intervention.
When to use this trigger:
- Send welcome emails when new contacts are created
- Notify team members when contact data changes
- Trigger follow-ups based on contact status changes
- Start workflows when tags are added or removed
- Automate actions when custom field values change
- React to deal stage changes
Quick Start¶
- Create a new workflow
- Add a CRM Trigger as the first task
- Select the trigger event type (contact created, updated, etc.)
- Configure event conditions (optional filters)
- Save and enable the workflow
- The workflow runs automatically when the event occurs
[SCREENSHOT NEEDED: CRM Trigger task panel showing event type dropdown]
Trigger Event Types¶
Contact Created¶
Triggers when a new contact is added to your CRM.
Example Use Cases: - Send welcome email to new contacts - Assign to sales rep - Add to email marketing list - Create follow-up task
Contact Updated¶
Triggers when any contact field is modified.
Optional Filters: - Specific field changed (e.g., only when phone number changes) - Field changed to specific value (e.g., status changed to "Customer") - Any field changed on specific contact
Example Use Cases: - Notify team when deal value changes - Update external systems when contact details change - Send re-engagement email when status changes
Tag Added¶
Triggers when a specific tag is added to a contact.
Configuration: - Select which tag(s) to monitor - Trigger on any tag or specific tags only
Example Use Cases: - Start nurture sequence when "Lead" tag added - Notify manager when "VIP" tag added - Send onboarding email when "New Customer" tag added
Tag Removed¶
Triggers when a tag is removed from a contact.
Example Use Cases: - Remove from email list when "Subscribed" tag removed - Alert team when "Active" tag removed - Update external systems
Field Value Changed¶
Triggers when a specific custom field reaches a certain value.
Configuration: - Select the field to monitor - Define the condition (equals, contains, greater than, etc.) - Set the target value
Example: - Trigger when lifetime_value > 10000 - Trigger when lead_score >= 80 - Trigger when status = "Hot Lead"
Deal Stage Changed¶
Triggers when a deal moves to a specific pipeline stage.
Configuration: - Select which pipeline - Select which stage(s) to monitor
Example Use Cases: - Send proposal when deal reaches "Proposal" stage - Notify team when deal closes (moves to "Won") - Update accounting system when deal is won
Output Fields¶
The CRM Trigger outputs comprehensive contact and event data:
Contact Information¶
| Field | Description | Example Value |
|---|---|---|
task_[ID]_contact_id | Unique contact ID | 12345 |
task_[ID]_first_name | Contact first name | John |
task_[ID]_last_name | Contact last name | Smith |
task_[ID]_email | Contact email | john@example.com |
task_[ID]_phone | Contact phone | +27123456789 |
task_[ID]_company | Company name | ABC Corp |
task_[ID]_status | Contact status | Lead, Customer, etc. |
task_[ID]_tags | Comma-separated tags | VIP, Active, 2024 |
Event Information¶
| Field | Description | Example Value |
|---|---|---|
task_[ID]_event_type | Type of event | contact_created, contact_updated, tag_added |
task_[ID]_event_timestamp | When event occurred | 2024-02-08 14:30:00 |
task_[ID]_triggered_by | User who triggered event | john@yourcompany.com |
Changed Fields (for Update events)¶
| Field | Description | Example Value |
|---|---|---|
task_[ID]_changed_field | Which field changed | phone |
task_[ID]_old_value | Previous value | +27111111111 |
task_[ID]_new_value | New value | +27123456789 |
Custom Fields¶
All custom fields are available using their field names:
{{task_47123_custom_lead_score}}
{{task_47123_custom_industry}}
{{task_47123_custom_last_purchase_date}}
JSON Access¶
For complex data, use JSON notation:
Real-World Examples¶
Example 1: Welcome New Contacts¶
Trigger: Contact Created
Workflow: 1. CRM Trigger - Contact Created 2. Delay - Wait 5 minutes (ensure data is complete) 3. Email - Send welcome email 4. Delay - Wait 3 days 5. Email - Send follow-up
Example 2: Hot Lead Notification¶
Trigger: Field Value Changed - lead_score >= 80
Workflow: 1. CRM Trigger - Lead score changed 2. If Task - Check if lead score >= 80 3. Email - Notify sales manager 4. Edit Client - Add "Hot Lead" tag 5. Webhook Out - Send Slack notification
Example 3: Customer Status Change¶
Trigger: Field Value Changed - status = "Customer"
Workflow: 1. CRM Trigger - Status changed to Customer 2. Edit Client - Remove "Lead" tag, add "Customer" tag 3. Email - Send onboarding email 4. MySQL Query - Create customer record in accounting system 5. Google Sheets - Add to customer list
Example 4: VIP Tag Automation¶
Trigger: Tag Added - "VIP"
Workflow: 1. CRM Trigger - VIP tag added 2. Email - Notify account manager 3. Edit Client - Set priority to "High" 4. Webhook Out - Update CRM in external system 5. Email - Send VIP welcome email to contact
Example 5: Deal Won Celebration¶
Trigger: Deal Stage Changed - "Won"
Workflow: 1. CRM Trigger - Deal moved to Won stage 2. Email - Send thank you email to customer 3. MySQL Query - Create invoice 4. Email - Send invoice to customer 5. Webhook Out - Post celebration message to team Slack 6. Edit Client - Add "Closed Won 2024" tag
Conditional Filtering¶
Add conditions to your CRM Trigger to be more selective about which events trigger workflows.
Filter by Contact Type¶
Only trigger for contacts with specific status:
Filter by Tag Presence¶
Only trigger if contact has specific tag:
Filter by Custom Field¶
Only trigger if custom field meets criteria:
Combine Multiple Conditions¶
Use AND/OR logic:
Preventing Workflow Loops¶
The Loop Problem¶
If your workflow updates a contact's data, and your CRM Trigger monitors "Contact Updated", you'll create an infinite loop.
Example of a problematic workflow: 1. CRM Trigger - Contact Updated 2. Edit Client - Update a field 3. This triggers the workflow again → Loop!
Solution 1: Check Who Triggered¶
Add an If task to check if the change was made by the system (not a human):
Solution 2: Monitor Specific Fields Only¶
Instead of "Any field updated", monitor specific fields:
Solution 3: Use Changed Field Check¶
Add an If task at the start:
Solution 4: Add a "Processing" Flag¶
- At workflow start: Add temporary tag "Processing"
- Check if tag exists, if yes → stop workflow
- Do your processing
- Remove "Processing" tag at end
Best Practices¶
✅ Do's¶
- Be specific with triggers: Use filters to avoid unnecessary executions
- Add If tasks for validation: Double-check conditions even if trigger has filters
- Test thoroughly: Test with real CRM data before enabling
- Add error notifications: Alert yourself when critical workflows fail
- Document your workflows: Add clear descriptions of what each workflow does
- Use tags for tracking: Add tags to show workflow has processed a contact
- Monitor execution history: Check regularly that workflows are running correctly
❌ Don'ts¶
- Don't create loops: Always check if your workflow updates trigger new events
- Don't trigger on every update: Use specific field monitoring
- Don't skip error handling: Add If tasks to handle missing data
- Don't forget timezone issues: Be aware when using time-based conditions
- Don't over-automate: Not every CRM change needs a workflow
Troubleshooting¶
Workflow Not Triggering¶
Possible Causes: - Workflow is disabled - Trigger conditions too restrictive - Event type doesn't match actual CRM action - CRM trigger not saved properly
Solutions: 1. Check workflow toggle is ON 2. Review trigger configuration and filters 3. Test by manually performing the CRM action 4. Check execution history for error messages
Workflow Triggering Too Often¶
Possible Causes: - Trigger conditions too broad - Multiple users editing same contacts - Workflow creating loop by updating contacts
Solutions: 1. Add more specific filters 2. Check if workflow updates trigger additional events 3. Use "Changed Field" filters 4. Add processing flag to prevent duplicates
Missing Contact Data¶
Possible Causes: - Custom field not populated yet - Contact still being created when workflow runs
Solutions: 1. Add small delay (5-10 seconds) after trigger 2. Use If tasks to check if required fields exist 3. Handle missing data gracefully
Workflow Running Multiple Times¶
Cause: Multiple CRM updates in quick succession
Solution: Add a delay at workflow start and check if a "processing" tag exists
Advanced Patterns¶
Sequential Contact Updates¶
Update contact in stages with delays:
- CRM Trigger - Contact Created
- Delay - Wait 1 day
- Email - Send day 1 email
- Delay - Wait 2 days
- Email - Send day 3 email
- Delay - Wait 4 days
- Email - Send day 7 email
Conditional Multi-Path Workflows¶
Route based on contact properties:
- CRM Trigger - Contact Updated
- If Task - Check industry
- Technology → Tech sales flow
- Healthcare → Healthcare sales flow
- Other → General flow
Lead Scoring Automation¶
Automatically update lead scores:
- CRM Trigger - Contact Updated
- Code Task - Calculate lead score based on actions
- Edit Client - Update lead_score field
- If Task - If score >= 80
- Email - Notify sales team
Tag-Based Segmentation¶
Automatically segment contacts:
- CRM Trigger - Tag Added
- If Task - Check which tag was added
- "Webinar Attended" → Add to nurture list
- "Downloaded Ebook" → Add to education list
- "Requested Demo" → Alert sales
Frequently Asked Questions¶
Can I have multiple CRM Triggers in one workflow?¶
No, each workflow should have only one trigger task. If you need to respond to multiple CRM events, create separate workflows.
What's the delay between CRM change and workflow execution?¶
Usually immediate (within seconds). Very complex workflows may take longer.
Can I trigger on custom field changes?¶
Yes, use the "Field Value Changed" event type and select your custom field.
Will this trigger if I bulk import contacts?¶
Yes, Contact Created events fire for each imported contact. Consider: - Disabling workflows during large imports - Using filters to exclude imported contacts - Adding batch processing logic
Can I undo a workflow action?¶
No, workflows execute automatically and cannot be undone. Always test thoroughly before enabling.
How do I test without affecting real contacts?¶
- Create a test contact
- Use "Run Test" button if available
- Check execution history to see what would happen
- Use a test workflow (disabled for real contacts)
Can I trigger based on inactivity?¶
Not directly. Instead, use a Schedule Trigger to check for inactive contacts periodically: 1. Timer Trigger - Daily 2. MySQL Query - Find contacts with no activity in 30 days 3. Loop through results 4. Send re-engagement email
What happens if the workflow fails?¶
The system logs the error in execution history. The CRM event still occurred, but the workflow didn't complete. Consider: - Adding error notification emails - Implementing retry logic - Monitoring execution history regularly
Can I prevent certain users from triggering workflows?¶
Yes, add an If task checking triggered_by:
Next Steps: - Edit Client Task - Update contact data - If Task - Add conditional logic - Inbound Email - Trigger from incoming emails