What Are Triggers?
A trigger is the starting point of every automation. It's the event that kicks off your flow. Without a trigger, nothing happens.
Think of it like this: "When X happens, do Y."
The trigger is the "when X happens" part.
Triggers Are Channel-Specific
The triggers you see depend on:
Which channel you're building for (WhatsApp, Instagram, Facebook)
Which integrations you've connected (Shopify, Nitro, Shiprocket, Return Prime, etc.)
Each channel has its own set of triggers because the events that happen on Instagram are different from what happens on WhatsApp or your Shopify store.
Available Triggers in Spur
Shopify Triggers
Keyword — Customer sends a specific word or phrase to you as a message on the channel the flow is for
Order Created — New order placed on your Shopify store
Order Updated — Order details change on your Shopify store
Order Cancelled — Order gets cancelled on your Shopify store
Order Fulfilled — Order marked as fulfilled (by your shipping provider, manually fulfilling it on Shopify won't trigger this)
Order Partially Fulfilled — Some items shipped, others pending
Customers Create — New customer added to Shopify
Customers Update — Customer info updated
Fulfillment/Delivery Event — Shipping status changes
Checkout Started — Customer starts checkout
Cart Sent on WhatsApp — Cart shared via WhatsApp (will only show when your catalog is connected to your Spur connected WhatsApp number)
Product Viewed — Customer views a product on your Shopify store (will only capture people who already are logged in to your Shopify. If you want to target anonymous people who might've viewed products on your website, look into Nitro's service)
Added to Cart — Item added to cart (also only captures people who add something to their cart on your store but while already being logged in, that way we have their number to target them)
WhatsApp & Meta Ad Triggers
Click to WhatsApp Ad Received — Someone clicks your CTWA ad
Webhook (endpoint) — Listen to custom events from an external system
Shiprocket Triggers
Shiprocket Fulfillment/Delivery Event — Tracks all shipping updates (shipped, in transit, out for delivery, delivered) from Shiprocket once you've connected it to Spur
Return Prime Triggers
Return Prime - Request Approved — Return request approved
Return Prime - Request Updated — Return status updated
Return Prime - Request Received — Return request received
Return Prime - Request Inspected — Return inspected by warehouse
Return Prime - Request Refunded — Refund processed
Return Prime - Request Rejected — Return request denied
Return Prime - Request Archived — Return request archived
Return Prime - Request Created — New return request created
Nitro Triggers
Nitro - Page Viewed — Visitor views a page (tracked via Nitro)
Nitro - Category Viewed — Visitor browses a category
Nitro - Product Viewed — Visitor views a product
Nitro - Added to Cart — Visitor adds item to cart
Nitro - Removed from Cart — Visitor removes item
Nitro - Checkout — Visitor reaches checkout
General Spur Triggers
New Spur Contact Created — New contact added to Spur through any incoming channel/trigger
Instagram-Specific Triggers
When building a flow for Instagram, you'll see:
Keyword — Anyone sends a specific word in DMs
Post Sent — Someone sends an IG post of yours back to you
Comment — Someone comments on your post
Story — Someone replies to your story
Audio Message — User sends a voice note
Click to Instagram Ad Received — Someone clicks your CTDM ad
Facebook-Specific Triggers
When building a flow for Facebook, you'll see:
Keyword — User sends a specific word in Messenger
Post Sent — Someone sends a FB post of yours back to you
Comment — Someone comments on your post
Story — Someone replies to your story
Audio Message — User sends a voice note
How to Add a Trigger
Open your empty flow canvas
Click "+ Add Trigger"
Pick the event that should start your automation
Configure any settings (like keywords, order status, etc.)
Hit save
That's it. Your flow is now listening for that event.
What Happens Next?
Once the trigger fires, Spur moves to the next step in your flow; whether that's sending a message, adding a delay, or running a condition check.
We'll cover those in the next guide.
Trigger Variables: What They Are and Why They Matter
Each trigger comes with variables, dynamic placeholders that pull real-time data from the event that fired the trigger.
For example:
The Order Created trigger gives you variables like
{{trigger.name}}
for Order ID,{{trigger.tags}}
for order tags,{{trigger.total_price}}
for total cart price, etc.The Comment trigger (Instagram/Facebook) gives you variables like
{{comment.text}}
for comment text,{{comment.postId}}
for Post ID of your chosen post where the comment has come, etc.
These variables change based on which trigger you use.
You can use these variables in:
Message templates
Conditions (e.g., "If order total > INR 100, do X")
HTTP requests to external systems
Custom fields
How Trigger Variables Work
Let's say you select the Order Fulfilled trigger for WhatsApp.
You'll have access to variables like:
{{trigger.fulfillment_status}} - Order Fulfillment Status
{{trigger.computed.fulfilled_item_names}} - Latest Fulfilled Item Names (Comma-separated)
{{trigger.computed.latest_tracking_url}} - Order Tracking URL
{{trigger.note}} - Order notes
{{trigger.computed.cart_items_count}} - No. of items in cart
{{trigger.computed.note_attributes[]}} - Order additional details
You can use these in your messages:
Hey {{contact.name}}
!
Good news! Your order has been {{trigger.fulfillment_status}}
.
Items shipped: {{trigger.computed.fulfilled_item_names}}
Track your order here: {{trigger.computed.latest_tracking_url}}
Questions? Just reply to this message.
But if you switch to the Keyword trigger for Instagram, those variables disappear. Instead, you'll see:
{{contact.username}}
{{contact.name}}
{{comment.postId}}
Each trigger has its own set of variables tailored to the event it represents.
How to See Available Variables
When you add a trigger to your flow:
Click on the trigger block
Click on any input fields in message blocks
You'll see a list of all variables available for that specific trigger in a sidebar that opens to the right of the that input field, you can look for a section for ''Trigger Variables'' there to see what variables are available for the trigger you have chosen for this flow
These variables update automatically based on the trigger you've selected.
Mixing Triggers and Integrations
If you've connected multiple integrations (e.g., Shopify + Nitro + Shiprocket), you'll see triggers from all of them in the dropdown.
This lets you build flows like:
"When a customer views a product on Nitro, send them a WhatsApp message with a discount code"
"When Shiprocket marks an order as delivered, ask for a review"
The more integrations you connect, the more triggers you unlock.
Key Takeaways
✅ Triggers are channel-specific (WhatsApp, Instagram, Facebook each have their own)
✅ Each trigger comes with unique variables you can use in your flow
✅ Variables change based on which trigger you select
✅ More integrations = more triggers and more automation possibilities
Still Stuck?
If you don't see a trigger you need, check:
Is the integration connected? (Go to Settings → Integrations)
Are you building for the right channel?
Is the feature available on your plan?
Ping support if you're missing something.