Workflow Triggers

Resool Team · · 6 min read

A workflow trigger is the event that starts a workflow for a contact. Resool offers triggers for conversation events (a conversation opens, a message arrives, a conversation closes), contact changes (tags, lifecycle stages, contact fields), people starting a workflow themselves (shortcuts, manual runs and webhooks), ads, WhatsApp calls, online store events and form responses. Each workflow has exactly one trigger, and you can narrow most triggers down to specific channels, keywords, tags, stages, fields, stores or forms.

How to choose a trigger

  1. Open a workflow from Workflows and click the Trigger block at the top of the canvas.
  2. In the right panel, open Trigger and pick one. For store events, pick E-commerce, then the Event.
  3. Fill in the options that appear under the trigger (channels, keywords, tag and so on). A short hint under the picker explains when the trigger fires.
  4. Click Save or Publish.
Screenshot placeholder

Workflows › open a workflow › click the Trigger block

The Trigger panel on the right with the trigger list open, showing Conversation Opened, Incoming Message, Conversation Closed, Contact Tag Updated, Lifecycle Updated, Shortcut, Contact Field Updated, Incoming Webhook, Click-to-Chat Ads, TikTok Messaging Ads, Manual Trigger, Call Ended, Typeform Response Submitted, SurveyMonkey Response Submitted and E-commerce.

File: screenshots/workflow-triggers-panel.png

Pick the event that starts the workflow.

If a trigger needs a channel or app you haven't connected, the panel shows a notice with a Connect in Settings button.

Conversation and message triggers

TriggerWhen it startsOptions
Conversation OpenedA new conversation opens on the chosen channels.Channels (empty = any channel).
Incoming MessageA customer sends a message, or only a message that contains one of your keywords.Channels, Keywords (up to 20; leave empty to start on every message).
Conversation ClosedA conversation is closed.Channels.

Keywords match anywhere in the message and ignore upper and lower case, so the keyword price also matches "What's the PRICE?".

Contact triggers

TriggerWhen it startsOptions
Contact Tag UpdatedA tag is added to or removed from a contact.Tag, and When the tag is: Added, Removed or Added or removed.
Lifecycle UpdatedA contact moves to a lifecycle stage.Lifecycle stage, or Any stage.
Contact Field UpdatedOne of the chosen contact fields changes.Fields: Name, Email, Phone, Language, Country and your custom fields. None picked = any field.

Triggers you start yourself

TriggerHow it starts
ShortcutAgents run it from the conversation menu in the inbox with Run a workflow. Only published shortcut workflows appear there.
Manual TriggerRun it for one contact from the contact's page: open the … menu and choose Run workflow.
Incoming WebhookAnother system (your CRM, store, form tool…) calls the workflow's Webhook URL with a contact.

How to use the Incoming Webhook trigger

  1. Choose Incoming Webhook and click Save. The Webhook URL appears only after the first save.
  2. Click Copy URL.
  3. In the other system, send a POST request to that URL with the contact's phone, email or contactId.
  4. Publish the workflow.
Screenshot placeholder

Workflows › open a saved workflow with the Incoming Webhook trigger › Trigger panel

The Webhook URL field with the Copy URL button and the explanation of what to send.

File: screenshots/workflow-triggers-webhook.png

Copy the workflow's webhook URL into the system that should start it.

The contact must already exist in Resool. The workflow runs on the contact's latest conversation.

Ad and call triggers

TriggerWhen it startsOptions
Click-to-Chat AdsSomeone starts a chat from a Click-to-WhatsApp, Click-to-Messenger or Click-to-Instagram ad.Channels (your WhatsApp, Messenger and Instagram channels).
TikTok Messaging AdsSomeone starts a chat from a TikTok Messaging Ad.Needs a connected TikTok channel.
Call EndedA WhatsApp call ends.Outcome (Any, Answered, Missed), Direction (Any, Incoming, Outgoing), Channels (WhatsApp numbers).

Use Call Ended with Missed to send an automatic "Sorry we missed your call" message. See WhatsApp Calls.

E-commerce triggers

Pick E-commerce, then the Event and the Store (Any connected store, or one store). Connect your store first in Settings › Apps.

EventWhen it starts
Order CreatedA new order is placed.
Order UpdatedAn order is edited (items, address, payment or fulfillment).
Order Status ChangedAn order changes status. Optional Statuses filter: Pending, Confirmed, Processing, Paid, Shipped, Delivered, Completed, Cancelled, Refunded. None picked = any change.
Order PaidAn order is paid.
Order Fulfilled / ShippedAn order is fulfilled, shipped or delivered.
Order CancelledAn order is cancelled.
Order RefundedAn order is refunded, fully or partly.
Abandoned CheckoutA customer leaves the checkout without ordering.
Customer CreatedA new customer signs up in the store.
Customer UpdatedA customer's details change in the store.

The workflow runs for the contact with the customer's phone or email. If there is no such contact, Resool creates one. Supported stores include Shopify, WooCommerce, Salla, Foodics, EasyOrders, Wix, BigCommerce, Gumroad and Square. Not every store sends every event; for example, abandoned checkouts come only from stores that report them.

Screenshot placeholder

Workflows › open a workflow › Trigger panel with E-commerce selected

Trigger set to E-commerce, Event set to Order Status Changed, Store set to Any connected store, the Statuses chips with Shipped and Delivered selected, and the Variables list below.

File: screenshots/workflow-triggers-ecommerce.png

Start a workflow when an order in your store is shipped or delivered.

Form triggers

TriggerWhen it startsOptions
Typeform Response SubmittedSomeone submits the chosen Typeform.Form. Resool adds a webhook to the form so its responses reach the workflow.
SurveyMonkey Response SubmittedSomeone completes the chosen SurveyMonkey survey.Survey.

The contact is found by the email or phone answered in the form, or created. Each answer becomes a variable you can use in later steps. See Typeform and SurveyMonkey.

Variables from the trigger

Every workflow can use {{contact.name}}, {{contact.email}} and {{contact.phone}} in its texts. Some triggers add more; the trigger panel lists them under Variables, and you can click one to copy it.

TriggerExtra variables
Order events{{order.number}}, {{order.total}}, {{order.currency}}, {{order.status}}, {{order.items}}, {{order.url}}, plus {{order.payment_status}}, {{order.tracking_number}}, {{order.tracking_url}}, {{order.previous_status}} or {{order.refund_amount}} depending on the event, and {{customer.name}}, {{customer.phone}}, {{customer.email}}
Abandoned Checkout{{order.total}}, {{order.currency}}, {{order.items}}, {{order.checkout_url}} and the customer variables
Customer Created / Customer Updated{{customer.name}}, {{customer.phone}}, {{customer.email}}
Typeform / SurveyMonkeyThe form title, response ID, submission time, email, phone and one variable per question

Trigger once per contact

In Workflow settings, turn on Trigger once per contact so each contact goes through the workflow only once, even if the trigger fires again. Publishing a new version lets contacts go through the new version once.

FAQ and troubleshooting

My Incoming Message workflow starts on every message. How do I limit it?

Add one or more Keywords. The workflow then starts only on messages that contain one of them.

The Incoming Webhook call returns an error.

What you can do:

  • Check that the workflow is published and that you're calling its exact Webhook URL.
  • Send the contact's phone, email or contactId, and make sure that contact already exists in Resool.

Why doesn't my Shortcut workflow appear in the inbox?

Only published workflows with the Shortcut trigger appear under Run a workflow in the conversation menu. Publish it first.

Can one workflow have two triggers?

No. Each workflow has one trigger. To react to two events, create two workflows (you can Duplicate one to save time).

Do store triggers need a WhatsApp conversation to exist?

No. They find or create the contact. Steps that write in a conversation are skipped if the contact has none yet, so start with a Send a WhatsApp template step to reach a new customer.

What's next?

Can't find what you're looking for?

Our team replies by email, usually within one business day.