---
title: "11.25 Example: WhatsApp Auto-Reply Bot"
description: "This is the structure of the auto-reply Peikly itself uses on WhatsApp. It answers three kinds of question, then tags everyone who got an answer."
url: "https://peikly.com/docs/example-whatsapp-auto-reply-bot/"
updated: "2026-10-07"
category: Automation Workflows
tags:
  - Manual sync
---

# 11.25 Example: WhatsApp Auto-Reply Bot

This is the structure of the auto-reply Peikly itself uses on WhatsApp. It answers three kinds of question, then tags everyone who got an answer.

**Trigger:** **Message Received via WhatsApp**

| Step | Activity | Settings | Connects to |
| --- | --- | --- | --- |
| 1 | **Add/Upsert Contact** | — | 2 |
| 2 | **Message Matches** | Contains "Can I get more info", Ignore case | TRUE → 4, FALSE → 3 |
| 3 | **Message Matches** | Equals "/website", Ignore case | TRUE → 4, FALSE → 6 |
| 4 | **Send WhatsApp** | Plain text: the portfolio reply; Channel Auto | 5 |
| 5 | **Send WhatsApp** | Plain text: "tell us about your business" questions | 10 |
| 6 | **Message Matches** | Contains "How much does a website cost?" | TRUE → 7, FALSE → 8 |
| 7 | **Send WhatsApp** | Plain text: the price-list reply | 10 |
| 8 | **Message Matches** | Contains "I need a new website" | TRUE → 9, FALSE → *(not connected: end)* |
| 9 | **Send WhatsApp** | Plain text: package and questions reply | 10 |
| 10 | **Add Tag** | Lead | 11 |
| 11 | **Add Tag** | website customer | *(last step: end)* |

**Why it is built this way:**

- **Step 1 comes first** so a first-time sender becomes a contact before anything is sent or tagged. Without it, steps 4–11 fail for new numbers.
- **Conditions are chained through their FALSE outputs** (2 → 3 → 6 → 8). Each message is tested against one question after another, and the first match wins.
- **Two conditions share one answer:** steps 2 and 3 both lead to step 4, so "Can I get more info" and the `/website` command get the same reply.
- **All answers meet at step 10**, so the tagging is built once and every answered contact is tagged.
- **The last condition's FALSE output is left unconnected.** Messages that match nothing end the run quietly, with no reply and no tag.
- **Plain text is safe here** because the customer has just written, so the 24-hour window is open. **Channel: Auto** replies from the number they wrote to.

**Making it more robust:** the matching phrases are long, so they work best when they come from pre-filled links or buttons (for example a "Chat on WhatsApp" link that pre-fills "Can I get more info?"). For free-typed messages, switch steps 6 and 8 to **Contains any of** with keywords, for example `price, cost, how much` and `new website, build a website, need a website`.
