👋 How can we help?

All practical tips to grow your business with messaging.

All CollectionsProductAll Trigger Types Explained

All Trigger Types Explained

Understand every automation trigger — WhatsApp messages, WooCommerce orders, Zapier webhooks, manual events, email received, SMS received, bol.com orders, MyParcel shipments, and Picqer orders & 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

EventIconWhen 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

EventIconWhen It Fires
New Order🛍️A new order is placed in your store
Order CompletedAn 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

EventIconWhen 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

EventIconWhen 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

EventIconWhen 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

EventIconWhen 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
DeliveredShipment 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

📦 Picqer Trigger

Fires when an order or return event occurs in your connected Picqer warehouse management system. Requires the Picqer integration (Channels → Picqer).

Sub-events

EventIconWhen It Fires
Order CompletedAn order is marked as completed in Picqer (orders.completed)
Order Status Changed🔄An order status changes in Picqer (orders.status_changed)
Order Closed🔒An order is closed in Picqer (orders.closed)
Return Status Changed↩️A return changes status in Picqer (returns.status_changed)
Return Products Received📥Returned products are received in the warehouse (returns.products_received)
All Events📋Every Picqer order or return event (catch-all)

Available Variables

Picqer triggers make these variables available for your message templates:

  • {{customer_name}} — customer name from the order
  • {{order_number}} — the webshop order reference (e.g. "Shopname #00596891")
  • {{return_number}} — return identifier (for return events)
  • {{order_status}} — current order status
  • {{tracking_url}} — track & trace link from the shipment
  • {{tracking_code}} — tracking barcode from the shipment

Use Cases

  • Order completed notification — send a WhatsApp or email when an order is fully processed and shipped
  • Review request — combine orders.completed with a delay to ask for a review after delivery
  • Return confirmation — automatically confirm when a return is received using returns.products_received
  • Status update — keep the customer informed of every order status change

Setting Up Picqer Webhooks

In your Picqer account, go to Settings → Webhooks and add a webhook for each event you want to use. The endpoint URL is shown on the Picqer integration page in Bugalou (Channels → Picqer). Add separate webhooks for: orders.completed, orders.status_changed, orders.closed, returns.status_changed, and returns.products_received.

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.