Skip to main content
All CollectionsUsing HoolaFlows & Broadcasts FAQsFlows
Hoola Flow Triggers: A Comprehensive Guide to Automating Customer Interactions

Hoola Flow Triggers: A Comprehensive Guide to Automating Customer Interactions

The power of automation with Hoola's versatile flow triggers

Updated over 4 months ago

Providing timely and personalized customer interactions is crucial for business success. Hoola's flow triggers are powerful tools that allow you to automate and optimize your customer communication strategy. This comprehensive guide will walk you through the various trigger types, their benefits, and how to implement them effectively.

Why Hoola Flow Triggers Matter

Hoola flow triggers are the foundation of creating dynamic, responsive customer journeys. They allow you to:

  • Automate repetitive tasks, saving time and resources

  • Provide instant, personalized responses to customer actions

  • Create seamless omnichannel experiences

  • Increase engagement and conversion rates

  • Gather valuable customer insights

Let's dive into the different types of triggers and how to make the most of them.

1. Message Triggers

The Message Triggers are perfect for flows where you control the starting point of the conversation:

  • The WhatsApp bubble (widget) on your website.

  • In an Instagram post, by adding a link that contains that message

  • On a button within your email or website, adding a link to it as well.

Exact Match

The exact match trigger is perfect for initiating flows based on specific customer inputs.

How to set it up:

  1. Go to your flow and select "Edit Trigger"

  2. Choose "Exact match"

  3. Type in the exact message you want to trigger the flow

Pro tip: Use exact match triggers for website widgets, Instagram post CTAs, or email button links to create seamless entry points into your flows.

Keywords

Keyword triggers offer more flexibility, allowing flows to start based on specific words within customer messages.

Setting up keyword triggers:

  1. In your flow, select "Edit Trigger"

  2. Choose "Keywords"

  3. Enter the keywords you want to trigger the flow

Best practice: Use keyword triggers for broader customer service queries or product inquiries.

💡 Here is a guide to the most typical use case: How to trigger flows from widgets

2. Webhooks

Webhook triggers are your gateway to integrating Hoola with external systems, opening up endless possibilities for automation.

Implementing webhook triggers:

1 In your flow, go to "Edit Trigger" and select "Webhook"

2 Copy the Hoola Webhook URL to your system

Back to your Hoola flow:

  • Edit Trigger

  • Copy the URL that appears under "Webhook URL POST".

  • Go to your system webhook and paste the URL in your destination URL

💡 You can leave the Headers empty, no Key, no Value is needed

4 Configure the information you want to transfer to Hoola

Prepare your webhook (from your source site) to send any user information you are interested in.

It is important that you follow a specific structure:

{
"phoneNumber": "{{ person.phone_number|default:'' }}",
"data":
{
"name": "{{ person.first_name|default:'' }}",
"checkout_url": "{{ event.extra.checkout_url|default:'' }}",
"variable_1": "{{ contenido.variable_1 }}",
"variable_n": "{{ contenido.variable_n }}"
}
}

{{ person.first_name|default:'' }}

where;
"phoneNumber": required = the phone number
"data": is mandatory if you want to send any additional information
"variable_n": is any additional variable you want to send, and must be inside "data".

Paste the payload structure in Hoola's webhook configuration

Go back to your Hoola flow, go to the "Edit Trigger" section and paste the payload in the black text box where it says "Send variables to Hoola":

Complete the flow with the variables you have sent to Hoola.

If you have pasted the payload in JSON format into the text box, all variables will be available during your flow for normal use.

If they do not appear, you can manually use any of the following variables by inserting it into the text of your messages in the format {{ variable }} .

Key benefit: Webhooks allow you to create highly customized flows based on events in any of your business systems.

3. Customer Interaction Triggers

Conversation Closed

This trigger activates when a conversation with a customer is marked as closed.

Use case: Send follow-up messages and surveys or thank you messages after resolving customer inquiries.

Date Property

Trigger flows based on specific dates related to your customers.Example: Send birthday wishes, renewal reminders, or anniversary congratulations automatically.

4. Broadcast Triggers

Broadcast triggers allow you to initiate flows for specific customer segments directly from your campaigns.How to use broadcast triggers:

  1. Set up your flow with a broadcast trigger

  2. In your campaign, select the audience and choose the flow

  3. Broadcast your campaign

Ideal for: Interactive campaigns, event invitations, or personalized offers based on customer preferences.

💡 Here is a step-by-step guide: Connecting broadcasts to flows

5. Shopify Triggers

For e-commerce businesses using Shopify, these triggers are invaluable for creating automated post-purchase experiences.

Available Shopify triggers:

  • Order Paid

  • Abandoned Cart (coming soon)

  • Order Returned (coming soon)

The Shopify trigger allows you to trigger a flow when a specific event occurs in Shopify. If you haven't already done so, it is important that you go to Connect Shopify to Hoola

In your flow, go to the trigger:

  • Edit Trigger > Shopify > Select the event you want to use

Events available:

Order Paid

Triggered when an order is paid via Shopify

Abandoned Cart

Coming soon... if you have Klaviyo you can create it by following this guide:

Order Returned

Coming soon...

Pro tip: Leverage Shopify variables to personalize your flow messages with order details.

When you use a Shopify flow, you can automatically use all the order variables to customise your messages.

💡 What variables are available in my Shopify flows?

The following variables will automatically appear in all your Shopify flows:

Variable

In addition, you can manually use any of the following variables by inserting it into the text of your messages with the format {{ variable }} .

Complete Shopify variable list

export interface ShopifyOrderWebhook {
id: number,
admin_graphql_api_id: string,
app_id: null,
browser_ip: null,
buyer_accepts_marketing: true,
cancel_reason: 'customer',
cancelled_at: Date,
cart_token: null,
checkout_id: null,
checkout_token: null,
client_details: null,
closed_at: null,
confirmation_number: null,
confirmed: false,
contact_email: string,
created_at: Date,
currency: 'USD' | 'EUR',
current_subtotal_price: string,
current_subtotal_price_set: ShopifyPriceSet,
current_total_additional_fees_set: null,
current_total_discounts: string,
current_total_discounts_set: ShopifyPriceSet,
current_total_duties_set: null,
current_total_price: string,
current_total_price_set: ShopifyPriceSet,
current_total_tax: string,
current_total_tax_set: ShopifyPriceSet,
customer_locale: 'en',
device_id: null,
discount_codes: [],
email: string,
estimated_taxes: false,
financial_status: 'voided',
fulfillment_status: 'pending',
landing_site: null,
landing_site_ref: null,
location_id: null,
merchant_of_record_app_id: null,
name: string,
note: null,
note_attributes: [],
number: Number,
order_number: number,
order_status_url: string,
original_total_additional_fees_set: null,
original_total_duties_set: null,
payment_gateway_names: [
'visa',
'bogus'
],
phone: string | null,
po_number: null,
presentment_currency: 'USD' | 'EUR',
processed_at: null,
reference: null,
referring_site: null,
source_identifier: null,
source_name: 'web',
source_url: null,
subtotal_price: string,
subtotal_price_set: ShopifyPriceSet,
tags: "",
tax_exempt: false,
tax_lines: [],
taxes_included: false,
test: true,
token: string,
total_discounts: string,
total_discounts_set: ShopifyPriceSet,
total_line_items_price: string,
total_line_items_price_set: ShopifyPriceSet,
total_outstanding: string,
total_price: string,
total_price_set: ShopifyPriceSet,
total_shipping_price_set: ShopifyPriceSet,
total_tax: string,
total_tax_set: ShopifyPriceSet,
total_tip_received: string,
total_weight: number,
updated_at: Date,
user_id: null,
billing_address: ShopifyOrderShippingAddress,
customer: ShopifyCustomer,
discount_applications: [],
fulfillments: [],
line_items: ShopifyOrderLineItem[],
payment_terms: null,
refunds: [],
shipping_address: ShopifyOrderShippingAddress,
shipping_lines: ShopifyShippingLine[]
}

6. Signals - Product Mentioned

This innovative trigger activates when a specific product is mentioned in a customer conversation.

Best for: Providing instant product information, upselling, or addressing common product-related queries.

7. Intent Match

Intent match triggers allow you to start flows based on perceived customer intentions derived from their messages.Setting up intent match:

  1. Go to "Edit Trigger" in your flow

  2. Select "Intent Match"

  3. Define the intentions you want to trigger the flow

Use case: Automatically route customers to the right department or provide specific information based on their inquiries.

8. Shipping Update

Based on Shopify delivery statuses, these triggers help you keep customers informed throughout the shipping process.

Available shipping triggers:

  • In Transit

  • Out for Delivery

  • Ready for Pickup

  • Attempted Delivery

  • Delivered

Best practice: Use these triggers to proactively communicate shipping updates and reduce "where is my order" inquiries.

Did this answer your question?