Skip to main content
Esc
Browse docs

Workflows

Build Slovio workflows that react to events from IndiaMART, Shopify, Razorpay, Google Sheets and webhooks, and act across WhatsApp, SMS, CRM, AI and your tools.

6 min readUpdated

A workflow connects an event to actions: when an IndiaMART enquiry arrives, send a WhatsApp template; when an order is paid, send a receipt; when a row is added to a sheet, post it to Slack. You start a workflow from an integration's template in Integrations, then finish it in the workflow builder.

Create a workflow

  1. Sidebar → Integrations.
  2. Open the integration the workflow starts from or acts in, for example IndiaMART or Send WhatsApp Template.
  3. Under Templates, select one. Slovio creates the workflow with that trigger, and usually its first action, and opens the builder.

Your workflows are listed on the Workflows tab. Select one to open it. See Workflow templates and skills for the template list.

The builder palette

The panel on the right lists every block in three sections. Drag a block onto the canvas, or select it to add it.

Triggers

Group Triggers
Commerce and payments Shopify (orders, payments, fulfilments, refunds, checkouts, carts, customers, products, inventory), Shiprocket, Razorpay
Leads IndiaMART, Facebook Leads
Slovio events Contact Created, Contact Updated, Ticket Created, Ticket Status Changed, Appointment, Meeting Booking, Contact Meeting, Comms Message
Tools Google Sheets (new row), Slack, ZeptoMail Events
Testing Test Trigger

Core

Blocks that need no connected account:

  • Schedule and Webhook triggers. See Trigger a workflow from your own system.
  • Wait / Delay: seconds, minutes, hours or days.
  • Condition (If / Else): several branches, checked top to bottom, with an else branch. Operators include equals, contains, exists, greater/less than and matches regex.
  • Find Contacts and Set Active Contact: send to someone other than the person who started the run, for example the phone number in a sheet row.
  • Set Variable, Approval, Guardrails, Response, Run Workflow.
  • HTTP Request: call any URL.

Actions

Update Contact, Send WhatsApp Template, Send SMS, Google Sheets, Book a Meeting, LeadSquared — Capture Lead, AI Agent, Knowledge Base, Google Calendar, Google Meet, Gmail, Memory, Zoom, Slack — Send Message, Slack, HubSpot, Stripe and ZeptoMail.

Blocks that send to a person, such as Send WhatsApp Template, need a contact. Triggers like IndiaMART, Shopify and Contact Created provide one. Schedule, Webhook, Google Sheets and Slack don't, so add Find Contacts and Set Active Contact first.

Values from the trigger and earlier steps are inserted as {{variables}}. See Variables in chatbots and workflows.

Example: reply to IndiaMART enquiries on WhatsApp

Shree Ganesh Packaging in Pune gets buyer enquiries on IndiaMART. This workflow sends every new enquiry an instant WhatsApp reply.

You need: a connected WhatsApp number and an approved template, for example indiamart_enquiry_reply:

text
Hi {{1}}, thanks for your enquiry about {{2}} on IndiaMART. Our sales team will call you within 2 hours. - Shree Ganesh Packaging, Pune
  1. Sidebar → Integrations → search "IndiaMART" → open IndiaMART.
  2. Under Templates, select New enquiry → WhatsApp reply. The builder opens with an IndiaMART trigger connected to Send WhatsApp Template.
  3. Select the IndiaMART trigger. A Secret token is filled in for you. Copy the Webhook URL.
  4. In IndiaMART, go to Lead Manager → Push API and paste the URL exactly as shown. It already carries the token.
  5. Select Send WhatsApp Template → Choose a template. Pick your WhatsApp number and indiamart_enquiry_reply.
  6. Under Message variables, set slot 1 to {{IMART_SENDER_NAME}} and slot 2 to {{IMART_QUERY_PRODUCT_NAME}}, then select Use template.
  7. Select Deploy. The button changes to Live.

When Amit Joshi from Nashik enquires about "Corrugated boxes", the IndiaMART trigger finds or creates his contact (source IndiaMART), and he receives:

text
Hi Amit Joshi, thanks for your enquiry about Corrugated boxes on IndiaMART. Our sales team will call you within 2 hours. - Shree Ganesh Packaging, Pune

To try it before a real lead arrives, post a sample lead to the webhook URL with your own number. The workflow must be live, and each test needs a new UNIQUE_QUERY_ID because repeats of the same enquiry are ignored:

bash
curl -X POST "YOUR_WEBHOOK_URL_WITH_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"RESPONSE":{"UNIQUE_QUERY_ID":"TEST1001","SENDER_NAME":"Amit Joshi","SENDER_MOBILE":"+919876543210","SENDER_CITY":"Nashik","QUERY_PRODUCT_NAME":"Corrugated boxes"}}'

Other IndiaMART values you can use include {{IMART_SENDER_COMPANY}}, {{IMART_SENDER_CITY}} and {{IMART_QUERY_MESSAGE}}.

Use the AI Agent block

AI Agent runs a prompt and passes the reply to the next steps as {{aiAgent.content}}. Its fields:

Field What it does
Agent Optional. Uses an agent from the AI Agents hub, with its own instructions, tools and knowledge. See AI agents for workflows.
Prompt What the AI should do. Supports variables, for example Summarise this enquiry: {{IMART_QUERY_MESSAGE}}. Ignored when an Agent is selected.
System instructions Optional rules for tone and format.
Temperature 0 gives the same answer each time; higher is more varied.
Max output tokens Caps reply length, up to 4096.
Structured output (JSON schema) Optional. Makes the AI return fields you can branch on, instead of free text.
Skills Optional. Attach saved skills; their text is added to the AI's instructions when the block runs.

All fields except Agent and Prompt are under Advanced settings. Structured output and Skills apply only when no Agent is selected.

Example: score a lead with structured output

Set Prompt to Rate this enquiry from 1 to 10 for purchase intent: {{IMART_QUERY_MESSAGE}} and Structured output (JSON schema) to:

json
{
  "type": "object",
  "properties": {
    "lead_score": { "type": "number" },
    "reason": { "type": "string" }
  },
  "required": ["lead_score", "reason"]
}

For the message "Need 5,000 boxes every month, send price today", the AI returns lead_score 9 and a short reason. Use {{lead_score}} in later text fields, and in a Condition branch set the field to aiAgent.object.lead_score, the operator to >= and the value to 7.

Test and publish

  • Run (or Run (safe test) from the arrow beside it) runs the workflow without sending or changing anything.
  • Run live really runs it: messages are sent and actions run. Slovio asks you to confirm.
  • Deploy saves and switches the workflow on. The button then shows Live, or Update after edits.
  • The ⋯ menu has Auto layout, Export workflow, Set to Draft / Set to Active and Delete workflow.
  • The logs panel under the canvas shows each step of a run.

Common questions

Why can't I find a "New workflow" button on the Workflows tab?

Workflows start from a template. Open any integration in Integrations and pick one under Templates; you can change or add blocks in the builder afterwards.

Can one workflow send a WhatsApp message and an SMS?

Yes. Connect Send WhatsApp Template and Send SMS one after the other, or put them on different Condition branches.

Why did my Send WhatsApp Template step fail with no contact?

The trigger doesn't provide a contact. Webhook, Schedule, Google Sheets and Slack triggers need Find Contacts and Set Active Contact before any send.

Does a safe test cost anything?

No. Run (safe test) simulates sends, AI calls and other side effects, so no messages go out and nothing is charged.

Can I use Zapier or Make?

Slovio has no Zapier or Make app. Call Slovio from them with the Webhook trigger, and call them from Slovio with HTTP Request.

Stuck, or is something here out of date? Tell the team — we reply within a working day.