---
title: 11. Automation Workflows
description: "Automation Workflows run a series of steps on their own when something happens: a WhatsApp message arrives, a contact is added, your online store sends an…"
url: "https://peikly.com/docs/automation-workflows/"
updated: "2026-10-07"
category: Automation Workflows
tags:
  - Manual sync
---

# 11. Automation Workflows

## What This Feature Does

Automation Workflows run a series of steps on their own when something happens: a WhatsApp message arrives, a contact is added, your online store sends an order, a broadcast is read, or a schedule comes round. Each run handles one contact (or none, for schedules and content events).

You build a workflow in the **workflow designer**: drag activities from the palette onto a canvas and connect them in the order they should run. Workflows can save a sender as a contact, reply on WhatsApp or by email, add tags, update contact fields, assign the contact to a team member, branch on what the customer wrote, wait, and start campaigns.

**Where to find it:** in the left sidebar, click **Automation Workflows**. This opens the **Workflow Dashboard**. From there, **New Workflow** opens the designer and **Workflow List** shows every workflow with its actions.

**Build it with AI instead:** click the ⚡ **Quick Actions** button in the top bar and choose **Create Automation**. Describe what should happen in your own words, review the proposed steps, and confirm. See [11.27 Create a Workflow with AI](/docs/create-a-workflow-with-ai-quick-actions/).

## When to Use

- Answer common WhatsApp questions automatically, any time of day.
- Save new WhatsApp senders as contacts and tag them as leads.
- Welcome new contacts, follow up after a delay, or re-engage inactive ones.
- React to store or website events (orders, carts, sign-ups) from WordPress/WooCommerce, PrestaShop or Shopify.
- Run follow-ups when a broadcast recipient opens, reads, clicks or replies.
- Do not use workflows for live one-to-one conversations. Use [9.2 WhatsApp Chat](/docs/whatsapp-chat/) or [10.3 Email Conversations](/docs/email-conversations-direct-communication/).

## Prerequisites

- CompanyAdmin or TenantUser role with workflow access.
- A plan that includes Automation Workflows (Enterprise).
- The **Automation Advanced** plan feature for these activities: **Lead Score**, **Assign Contact**, **Unsubscribe**, **Message Matches**, **Email Opened** and **Link Clicked**. Without it they are not offered in the designer.
- The **Scheduled** trigger needs a paid plan.
- WhatsApp steps: a connected Meta account and an active WhatsApp number. Template messages need an **Approved** template ([9.3](/docs/whatsapp-templates/)).
- Email steps: a Reply-To Mailbox with outgoing (SMTP) settings ([10.2](/docs/reply-to-mailboxes-contact-communication/)). Workflow emails are sent from a mailbox, not from an Outbound Mail Server.

## Permission & Access Control

| Action | CompanyAdmin | TenantUser |
| --- | --- | --- |
| View workflow list and dashboard | ✅ | ✅ |
| Create, edit and publish workflows | ✅ | ✅ |
| Activate / Deactivate | ✅ | ✅ |
| Delete | ✅ | ✅ |
| View execution history and retry failed runs | ✅ | ✅ |
| Trigger a workflow manually | ✅ | ✅ |
| Create Automation with AI (Quick Actions) | ✅ | ✅ |

## Key Concepts: Triggers, Steps and the Workflow Contact

- **Trigger:** the event that starts the workflow. Each workflow has exactly one.
- **Step:** one box on the canvas. There are three step types:
  - **Action:** does something, for example sends a message or adds a tag.
  - **Delay:** waits for a period or until a date and time.
  - **Condition:** checks something and continues on a TRUE or FALSE path.
- **Activity:** what a step does, picked from the palette (for example **Send WhatsApp** or **Has Tag**).
- **Run (instance):** one execution of the workflow. Every trigger event starts its own run.
- **Workflow contact:** the contact a run works on. Most activities act on this contact. If the trigger did not bring one (for example a WhatsApp message from an unknown number), the run has no contact until an **Add/Upsert Contact** step creates or finds it.
- **Version:** every save creates a version. Only the **published** version runs.

## Which trigger should I choose?

| If you want the workflow to start when... | Choose this trigger |
| --- | --- |
| Any WhatsApp message arrives (auto-reply, lead capture) | **Message Received via WhatsApp** |
| A contact replies by email | **Message Received via Email** |
| Someone on your team adds a contact | **New Contact Added Manually** |
| A WhatsApp chat is saved as a contact | **New Contact Added by WhatsApp Lead** |
| You start it yourself for one contact | **Manual** |
| A broadcast recipient is sent, delivered, reads, opens, clicks or replies | **Triggered from Broadcast** |
| Your store or website sends an event | The matching event (for example **Order Completed** or **Cart Abandoned**), or **External Integration Event Received** for any event |
| Something should run daily, weekly or monthly | **Scheduled** |

Full details of every trigger: [11.7](/docs/triggers-messages-contacts-and-manual/) and [11.8](/docs/triggers-store-and-website-events-broadcasts-and-schedules/).

## How trigger compatibility works

The trigger decides which activities you can use, because some activities need a contact.

| Trigger category | What it means | What you can do |
| --- | --- | --- |
| Contact | The run normally starts with a contact | All activities are offered |
| Mixed | The run may start with or without a contact | All activities are offered; add **Add/Upsert Contact** first when later steps need a contact |
| Contactless | The run never has a contact | Activities that need a contact are hidden, and saving is blocked if one is present |

- **Contactless:** **Scheduled**, **Post Published**, **Post Updated**, **Post Deleted**, **Product Published**, **Product Updated**.
- **Mixed:** **External Integration Event Received** and the store/website events (customer, cart, checkout, product, order, lead, form and similar).
- **Contact:** everything else, including **Message Received via WhatsApp**. Be aware that a WhatsApp message from an unknown number still starts the run *without* a contact. See [11.11 Add/Upsert Contact](/docs/activity-add-upsert-contact/).
- If you change a workflow to a contactless trigger, steps that need a contact must be removed before it can be saved.

## Common Use Cases

- WhatsApp auto-reply bot for common questions ([11.25](/docs/example-whatsapp-auto-reply-bot/)).
- Welcome automation for new contacts or customers.
- Abandoned-cart recovery after a store event.
- Lead follow-up after a form submission.
- Follow-up to broadcast recipients who read or clicked.
