All Trigger Types Explained
Understand every automation trigger — WhatsApp messages, WooCommerce orders, Zapier webhooks, manual events, email received, SMS received, and bol.com orders, shipments & returns. Each trigger with all sub-events.
What Are Triggers?
A trigger is the starting point of every automation — the event that kicks off your workflow. When the trigger fires, Bugalou executes all the actions you've connected to it.
Selecting a Trigger
Click the Trigger node in the builder to open the Trigger Configuration Panel. You'll see all available trigger types as cards with icons.
💬 WhatsApp Trigger
Fires when something happens on your WhatsApp Business channel.
Sub-events
| Event | Icon | When It Fires |
|---|---|---|
| Message Received | 💬 | Any incoming WhatsApp message from a customer |
| Keyword Match | 🔑 | Customer sends a message containing specific keywords |
| First Contact | 👋 | First-ever message from a new WhatsApp contact |
Use Cases
- Message Received — auto-reply, AI chatbot, customer support menu
- Keyword Match — trigger specific flows when customers say "order", "price", "help"
- First Contact — send a welcome message to new customers
🛒 WooCommerce Trigger
Fires when events happen in your connected WooCommerce store.
Sub-events
| Event | Icon | When It Fires |
|---|---|---|
| New Order | 🛍️ | A new order is placed in your store |
| Order Completed | ✅ | An order is marked as completed |
| Order Shipped (MyParcel) | 🚚 | Tracking info is added via MyParcel |
| Order Updated | 🔄 | Any order field is changed |
| All Events | 📋 | Every WooCommerce order event (catch-all) |
Available Variables
WooCommerce triggers make these variables available for your message templates:
{{klantnaam}}— customer name{{email}}— customer email{{telefoonnummer}}— phone number{{ordernummer}}— order number{{product}}— product name{{bedrag}}— order amount{{leverdatum}}— delivery date{{myparcel_tracking_number}},{{myparcel_tracking_url}}{{sendcloud_tracking_number}},{{sendcloud_tracking_url}},{{sendcloud_carrier}}
⚡ Zapier / Webhook Trigger
Fires when an external service sends data via Zapier or a direct webhook.
Sub-events
| Event | Icon | When It Fires |
|---|---|---|
| Shopify New Order | 🛍️ | New order created in Shopify |
| Shopify Order Fulfilled | 📦 | Shopify order is fulfilled/shipped |
| Stripe Payment | 💳 | Stripe payment received |
| Custom Webhook | 🔗 | Any custom HTTP webhook payload |
Shopify Variables
{{first_name}},{{last_name}}{{order_number}},{{total_price}}{{tracking_number}},{{tracking_url}}
📨 Manual Event Trigger
Fires on internal business events that you define.
Sub-events
| Event | Icon | When It Fires |
|---|---|---|
| Subscriber Added | 👤 | New subscriber is added to your list |
| Cart Abandoned | 🛒 | Customer leaves items in their cart |
| Newsletter Scheduled | 📰 | Newsletter campaign is scheduled |
| Password Reset | 🔑 | Customer requests a password reset |
📧 Email Received Trigger
Fires when a new inbound email arrives in any of your connected email accounts. This trigger has no sub-events — it fires for every incoming email.
Best used with the AI Categorize & Assign action to automatically sort and route incoming emails.
📱 SMS Received Trigger
Fires when an incoming SMS message arrives via your connected Twilio phone number. Requires the Pro plan and Twilio integration.
Sub-events
| Event | Icon | When It Fires |
|---|---|---|
| Message Received | 💬 | Any incoming SMS message from a customer |
| Keyword Match | 🔑 | Customer sends an SMS containing specific keywords |
| First Contact | 👋 | First-ever SMS from a new contact |
Use Cases
- Message Received — auto-reply, confirmation, support routing
- Keyword Match — trigger flows when customers text "STOP", "INFO", "ORDER"
- First Contact — welcome message for new SMS contacts
📦 Bol.com Order Trigger
Fires when a new order is placed on your connected bol.com retailer account.
When It Fires
This trigger activates whenever a customer places a new order for one of your products on bol.com. The order data is received via the bol.com Retailer API.
Available Variables
Bol.com triggers make these variables available for your message templates:
{{klantnaam}}— customer full name{{voornaam}}— customer first name{{achternaam}}— customer last name{{ordernummer}}— bol.com order number{{productnaam}}— product name{{totaalprijs}}— total order price{{bezorgadres}}— delivery address{{datum}}— order date
Use Cases
- Order confirmation — send an automatic confirmation email when a new order comes in
- Review request — combine with a 48-hour delay to ask for a review after delivery
- Invoice attachment — attach an invoice to the confirmation email
EAN Product Filter
You can filter the trigger to only fire for specific products by entering one or more EAN codes. This is useful if you only want to send messages for certain products.
🚚 Bol.com Shipment Trigger
Fires when a bol.com order is shipped — i.e., when the shipment status is updated via the bol.com Retailer API.
When It Fires
This trigger activates when the order transitions to a shipped state on bol.com. Use it to notify customers that their package is on its way.
Available Variables
Same variables as the Bol.com Order trigger (see above).
EAN Product Filter
You can filter the trigger to only fire for specific products by entering one or more EAN codes. This is useful if you only want to send review requests for certain products.
Use Cases
- Shipping confirmation — let the customer know their order has been dispatched
- Delivery follow-up — combine with a delay to send a follow-up after expected delivery
↩️ Bol.com Return Trigger
Fires when a customer initiates a return for a bol.com order.
When It Fires
This trigger activates when a return is registered via the bol.com Retailer API. Use it to proactively communicate about the return process.
Available Variables
Same variables as the Bol.com Order trigger (see above).
EAN Product Filter
You can filter the trigger to only fire for specific products by entering one or more EAN codes.
Use Cases
- Return confirmation — confirm receipt of the return request
- Refund notification — inform the customer about the refund timeline
📬 MyParcel Trigger
Fires when a shipment status changes in your connected MyParcel account. Requires the MyParcel integration (Channels → MyParcel).
Sub-events
| Event | Icon | When It Fires |
|---|---|---|
| Handed to Carrier | 📦 | Shipment is handed to the carrier |
| Sorting | 🏭 | Shipment is being sorted at a distribution center |
| Distribution | 🚛 | Shipment is out for delivery |
| Delivered | ✅ | Shipment has been delivered |
| Ready for Pickup | 📮 | Shipment is ready for pickup at a pickup point |
| Shipped | 🚚 | Shipment has been shipped (any carrier scan) |
| All Events | 📋 | Every MyParcel status change (catch-all) |
Available Variables
MyParcel triggers make these variables available for your message templates:
{{tracking_code}}— barcode / tracking number{{tracking_url}}— track & trace link for the customer{{shipment_status}}— current status (e.g. "Delivered", "Out for delivery"){{order_reference}}— order reference / identifier{{recipient_name}}— recipient name{{recipient_email}}— recipient email address
Use Cases
- Track & trace notification — automatically send a WhatsApp or email when a package is shipped
- Delivery confirmation — notify the customer when their package has been delivered
- Review request — combine with a delay to ask for a review after delivery
- Ready for pickup — let the customer know their package is ready at a pickup point
Delay Configuration
All triggers support an optional delay — the time to wait after the trigger fires before executing the first action. Set the delay in hours using the slider or number input in the trigger configuration panel.