Campaigns & flows
Campaigns your customers can answer.
Send WhatsApp campaigns to people who opted in and run flows from Shopify and Klaviyo events. When someone replies, it's a conversation in your inbox, and every order after a click is labelled attributed or estimated.
Illustration of a WhatsApp campaign: an approved template with an image is sent to an opted-in segment, scheduled with a send speed and quiet hours, and the results show a funnel ending in attributed and estimated orders.
Illustrative demo · synthetic data
Campaigns
Built for WhatsApp's rules, not around them.
Campaigns reach only people with permission, on templates Meta has approved, at the pace and hours you choose.
Templates with media
Create WhatsApp templates with images, video or documents. Meta approves each one before it can be sent.
Opted-in audiences only
WhatsApp campaigns go only to people with permission. Everyone else is left out of the send.
Audiences from your data
BetaBuild audiences from contacts, tags and Shopify/Klaviyo data.
Schedule and send speed
Schedule campaigns and control send speed, so replies arrive at a pace your team can handle.
Quiet hours
Set quiet hours so nobody gets a campaign in the middle of the night.
Instagram and Messenger
BetaCampaigns on Instagram and Messenger reach people only within Meta's 24-hour window.
Flows
Flows that start from what actually happened.
Build flows on a visual canvas. An abandoned cart, a paid order, a Klaviyo segment or a keyword starts them; waits, templates, tags and handoffs move them along.
- Wait for a reply before taking the next step.
- Check the lifecycle stage, a tag or the channel before acting.
- Hand the conversation to a person, with the reason, whenever the flow says so.
Triggers
- Conversation created
- Contact created
- No reply after N hours
- Tag added
- Lifecycle stage changed
- Order paid (Shopify)
- Abandoned cart (Shopify)
- Klaviyo segment entered
- Keyword
- Inbound webhook
Conditions
- Lifecycle stage
- Tag
- Channel
Actions
- Wait
- Wait for reply
- Send template
- Send message
- Assign
- Add tag
- Set lifecycle stage
- Record consent
- Resolve
- Hand off
Illustration of a flow: when a cart is abandoned, wait one hour, send an approved WhatsApp template to contacts with permission, then wait up to 24 hours for a reply. If the customer replies, the AI agent answers in the inbox and hands off to the sales team when it shouldn't continue. If not, the contact is tagged.
Illustrative demo · synthetic data
Follow-ups
When a customer goes quiet, follow up at a decent hour.
Automatic follow-ups when a customer goes quiet, respecting quiet hours. Up to three steps, each with its own delay.
- Set the delay and the message for each of up to three follow-ups.
- Nothing goes out during your quiet hours.
- Follow-up analytics show which step gets the replies.
Illustration of an automatic follow-up ladder with three steps and quiet hours from 21:00 to 09:00. The first follow-up falls at 22:10, inside quiet hours, so it is moved to 09:00. The customer replies at 09:14 and the remaining follow-ups are cancelled. A chart shows synthetic replies per step.
Illustrative demo · synthetic data
Consent
Every opt-in, with its receipt.
Every opt-in is stored with the exact text the person accepted and how they gave it.
- Permission can come from a WhatsApp keyword or button, a web form confirmed from the person's own WhatsApp, an import you declare, your team, or a Shopify or Klaviyo sync.
- Opt-outs, including the ones the AI detects in a conversation, are recorded too.
- Opt-outs sync back to Shopify. Beta
You remain responsible for the legal basis of your marketing. Kanesh keeps the evidence.
Illustration of a consent record: the contact, the channel, how permission was given, the exact text accepted, the business name, a partial IP address and the date, followed by a later opt-out synced to Shopify.
Illustrative demo · synthetic data
What happens next
A reply is a conversation, not a bounce.
Replies to campaigns and flows land in the shared inbox, where the AI agent and your team pick them up with the order in view.
Answered from your data
The AI agent answers from your knowledge and store data, and recommends from your live catalogue.
Handed off with context
When the AI shouldn't answer, it hands the conversation to your team with the reason and context.
Measured in orders
Orders that follow a campaign click show up next to the campaign, labelled attributed or estimated.
Attribution
Orders after a campaign, with the method in view.
See which orders came after a campaign click, with the method shown: attributed vs estimated.
- Attributed: the person clicked a tracked link in the campaign, and a paid Shopify order from them followed.
- Estimated: no tracked click, but the order arrived within the window after the send. It's kept apart and never added to attributed.
- Attributed means an order followed a click. It doesn't prove the message caused it, and we don't call it revenue generated.
Illustration of a campaign's order list. Each paid Shopify order is tagged attributed when the customer clicked a tracked link from the campaign before ordering, or estimated when there was no click but the order arrived within the window after the send. A note explains the method for each tag.
Illustrative demo · synthetic data
Campaign questions
Can I send a campaign to everyone in my Shopify customer list?
Do Instagram and Messenger campaigns work the same way?
Does Kanesh replace Klaviyo?
How do you decide an order is attributed?
Are WhatsApp fees included?
What happens when someone replies to a campaign?
Free diagnosis
See what your conversations are leaving on the table.
We review up to 180 days of your WhatsApp history and send you a written diagnosis within 48 hours. Free, and nothing is connected until we've agreed in writing how your data is handled.