ข้ามไปยังเนื้อหาหลัก

Customer conversations

Answer the most-asked question without a person

"Where is my order" is the message a shop receives more than any other, and answering it is a lookup, not a conversation. The hard part is not the reply. It is having a status a machine can read, and knowing that the free-text answer is only allowed because the customer wrote first — a few hours later the same sentence needs a template WhatsApp approved in advance.

Triggers
Two
Runs
Every 15 minutes
Stack
5 tools
Durable execution
Not required

The flow

The top track keeps an answer worth giving. The bottom track is the conversation, and it reads that answer rather than going back to the courier.

Orchestration

Every 15 minutes

n8n 排程

Orchestration

Pull fulfilment status

n8n · Make

Data

Write the status table

Sheets · Airtable

Platform

Customer writes in

WhatsApp Cloud API

Orchestration

Read intent and order number

OpenAI · Anthropic

Orchestration

Order found?

n8n IF

Platform

Reply with the status

WhatsApp Cloud API

Notify

Hand it to a person

Slack · WhatsApp

Step by step

  1. 01

    Every 15 minutes

    n8n 排程

    The status refresh runs on its own clock, so the answer is already sitting there when somebody asks — not fetched while the customer waits.

  2. 02

    Pull fulfilment status

    n8n · Make

    Read the current state for every open order from the store and the courier. Keep the tracking reference, because that is the one thing customers ask for that you cannot paraphrase.

  3. 03

    Write the status table

    Sheets · Airtable

    One row per open order, keyed on the order number the customer actually has. This table is what the reply is built from, which means a wrong answer is a wrong row and can be found.

  4. 04

    Customer writes in

    WhatsApp Cloud API

    The webhook fires when the message arrives. That moment also opens the 24-hour service window, which is the only reason the reply below can be free text.

  5. 05

    Read intent and order number

    OpenAI · Anthropic

    Classify whether this is an order-status question and extract the order number from the wording. The model does that and nothing else — it does not look up the status and it does not write the reply.

  6. 06

    Order found?

    n8n IF

    Match the extracted number against the status table. Treat a near-match as a miss: the cost of confidently telling somebody about another person's parcel is far higher than the cost of a hand-off.

  7. 07

    Reply with the status

    WhatsApp Cloud API

    Send the state and the tracking reference. If more than one order is open, offer them as an interactive list — the customer picks rather than types the number again.

  8. 08

    Hand it to a person

    Slack · WhatsApp

    No match means a person, immediately, with the original message attached. Self-serve without a way out is a wall.

What the platform will not allow

The free-text answer is not a design choice. It is a permission that expires, and what replaces it has to exist before you need it.

  • "When a WhatsApp user messages you or calls you, a 24-hour timer called a customer service window starts. If the user messages or calls you again before the timer expires, the timer resets to 24 hours." The instant reply is inside that window, which is why it needs no approval.

    WhatsApp Cloud API — Send messages
  • "When the window closes, you can only send pre-approved template messages." An answer written at 2am to a question asked two days ago cannot be free text, so the overnight version of this reply has to be a template that already exists.

    WhatsApp Cloud API — Send messages
  • An interactive list supports "up to 10 sections, with up to 10 rows for all sections combined", a row title of at most 24 characters and a row description of at most 72. A customer with a long order history cannot be shown all of it, and a row title will not hold a full product name.

    WhatsApp Cloud API — Interactive list messages
  • Reply buttons are capped at three, each with a label of at most 20 characters. "Track another order / Talk to us" is about the whole budget — anything richer has to be a list.

    WhatsApp Cloud API — Interactive reply buttons messages

When this is not worth building

Three cases where the upkeep costs more than the repetition.

  • Your order status does not live anywhere a machine can read. If tracking sits in a courier's PDF or in one person's memory, the flow has nothing to answer from — and it will still answer, confidently, with whatever it found.

  • The question you actually get is not "where is my order" but "can I have this in another size". Deflecting the wrong question leaves the volume where it was and adds a step for the customer to get past.

  • Nobody will own the no-match branch. Every self-serve flow eventually fails to match, and if that path leads nowhere the customer meets a machine that cannot help and cannot pass them on.

Related reading

ติดต่อเรา

กระบวนการไหนที่คุณควรทำจริง ๆ

เรารันกระบวนการเหล่านี้ให้ทีมปฏิบัติการในฮ่องกงทุกสัปดาห์ บอกเราว่าขั้นตอนไหนกินเวลาคุณ แล้วเราจะบอกว่าทำอัตโนมัติแล้วคุ้มหรือไม่

เริ่มพูดคุย