Skip to main content

Customer service

Build a WhatsApp order status bot that answers "where is my order?"

"Where is my order?" is the question every online store answers all day. A WhatsApp bot can look the order up in your own system and reply with the status and tracking link in seconds, and hand the hard cases to a person. Here is how to design it and build it without writing a server.

MonoChat Team Updated: 7 min read

On this page
  1. Why “where is my order?” deserves its own bot
  2. What the bot should answer, and what it should not
  3. The WhatsApp rules that apply
  4. Plan the lookup before you build
  5. How to build it in MonoChat
  6. Test it like a customer would
  7. Sources

A WhatsApp order status bot asks the customer for an order number, or recognizes them by phone number, calls your store or ERP to look the order up, and replies with the status, the delivery estimate and the tracking link. When the order is delayed, missing or the lookup fails, it hands the chat to a person with the context. Built well, it answers the most common post-purchase question in seconds, at any hour, and leaves your team the cases that need judgment.

This guide covers what the bot should answer, the WhatsApp rules that shape it, how to plan the lookup, and how to build it in MonoChat with an HTTP Request node.

Why “where is my order?” deserves its own bot

Order status questions (“WISMO”, for “where is my order?”) have three properties that make them ideal for automation:

  • The answer already exists. Your store, ERP or courier knows the status. Nobody needs to think, only to look it up.
  • They come in waves. After a sale, before a holiday, when a courier is late: the same question arrives hundreds of times in a day.
  • The customer is anxious, not curious. A fast, specific answer (“shipped yesterday with DHL, arriving Thursday, here is the link”) calms them. A generic “we will get back to you” creates a second message.

A bot that answers in seconds also cuts the follow-ups: a customer who got their tracking link does not write again an hour later.

What the bot should answer, and what it should not

Customer asksBot answers withHand to a person when
Where is my order?Status, carrier, tracking link, estimated deliveryThe order is late, stuck or marked lost
Has my order shipped?Shipped or not, and whenIt has been “processing” longer than your promise
Can I change my address?What is possible at this statusAlways, if the order has not shipped yet
I want to return itReturn policy and the next stepThe item is damaged or the case is disputed
Was my payment received?Payment statusThe status is failed or pending for a paid customer

Keep the first version narrow: status and tracking. Add the other questions once you see how customers phrase them.

The WhatsApp rules that apply

Replies are service messages, and they are not free anymore

When a customer writes to you, a 24-hour customer service window opens, and inside it you can reply with normal messages instead of templates. The bot works inside that window. Since October 1, 2026 Meta charges for those replies (service messages) per delivered message, after a free tier of 1,000 service messages a month per business phone number, according to Meta’s pricing documentation. A bot that answers in one message instead of three also costs less.

Proactive updates are templates

Telling a customer their order has shipped before they ask is a different message: you are writing first, usually outside a window, so it needs an approved utility template, charged by the recipient’s country. Proactive updates and the bot work together: the update prevents half the questions, and the bot answers the rest. Our guide to sending WhatsApp messages from webhooks covers the proactive side.

There must be a way to reach a person

A bot that cannot hand over turns a simple question into a complaint. An order bot that loops “I didn’t understand, please type your order number” is the fastest way to get blocked and reported. Two failed attempts should always end with a person.

Plan the lookup before you build

Answer these four questions with whoever runs your store or ERP:

  1. How do we find the order? By order number, by the customer’s phone number, or both. Phone lookup is more convenient, but a customer may have several orders, or may write from a different number.
  2. Which address answers? Your store platform’s order API, your ERP, or a small endpoint your developer adds that returns only what the bot needs. A small endpoint is safer: it never exposes more of the order than the reply uses.
  3. What does the answer look like? Write down the exact fields: status, carrier, trackingUrl, estimatedDelivery. Status values must be a fixed list (“processing”, “shipped”, “delivered”, “delayed”), not free text.
  4. How is the call protected? An API key or bearer token that only allows reading orders. Never a key that can create refunds or change orders.

How to build it in MonoChat

MonoChat is an official Meta Business Partner. Since version 3.8.37 (October 2026), flows can call your own systems with an HTTP Request node and keep parts of the answer as flow variables for later messages and conditions.

1. Create a bot flow. Under flows, create a flow and turn on Is bot?, so it answers in the live conversation. Start it from the New Message Received event, and use a keyword or menu condition so it runs when the customer asks about an order.

2. Ask for the order number. Add a Question Answer node: “Please send your order number, for example 10482.” If you look orders up by phone number instead, skip this step.

3. Call your order system. Add an HTTP Request node. Choose GET, enter the URL with a path variable, for example https://shop.example.com/api/orders/:orderId, and fill the Path Variables row with the order number from the conversation. Under Authorization, choose Bearer Token and paste the read-only token. Turn on Select Sample Data and pick a recent conversation: the Sample Data panel shows every variable with its real value, and the copy icon copies its {{key}}, so you do not guess names.

4. Keep what the reply needs. Turn on Save Flow Variable, name it order, and map the fields: status from response.data.status (Text), tracking from response.data.trackingUrl (Text), eta from response.data.estimatedDelivery (Text). Run Test Request: the node shows the response and the Flow Variable Preview, and it can only be saved once a test with the current settings succeeded.

5. Reply, or route. Add an If node with a Flow Variable Value condition: when order.status is Equal to delayed, go to Assign Session so a person apologizes and explains. Otherwise Send Message: “Your order is {{flow.order.status}}. Estimated delivery: {{flow.order.eta}}. Track it here: {{flow.order.tracking}}.”

6. Handle failure. Connect the node’s On Fail output, which it takes when the response is not 2xx (an unknown order number usually returns 404), when it times out (10 seconds by default, 30 at most) or when the response is over 1 MB, to a message such as “I couldn’t find that order. A colleague will check it now.” and an Assign Session node. Add a Within Working Hours condition before it if you want the message to say when a person will answer.

The conversation stays in the same MonoChat inbox as your WhatsApp, Instagram and Messenger chats, so when the bot hands over, the agent sees the order number, the lookup and the customer’s messages.

Two other routes, depending on your setup:

  • Customers write in free text and mix topics. An AI agent with AI function tools can call the same order endpoint, understand “my parcel from last week still hasn’t come”, and handle returns and address questions in the same chat.
  • You sell on Shopify. The order status and returns assistant finds orders by phone, e-mail or order ID and shares delivery status without a custom endpoint.

Test it like a customer would

Before you switch it on, try:

  • an order number with a typo, and one that belongs to someone else (the endpoint must not return another customer’s order to the wrong phone number);
  • an order with no tracking link yet;
  • the endpoint switched off, to see the On Fail path;
  • a customer who answers “I don’t know my order number”.

Then read real conversations for the first week and add the phrasings you missed.

To start, create a free account at app.monochat.ai, connect your WhatsApp number and see plans on the pricing page. For the bigger picture of post-purchase support, read our e-commerce customer service guide.

Sources

FAQ

Frequently asked questions

What is a WhatsApp order status bot?

It is an automated reply flow on your WhatsApp Business number that asks for an order number (or uses the customer's phone number), looks the order up in your store, ERP or courier system, and replies with the status, the delivery estimate and the tracking link. Cases it cannot answer go to a person.

Do I need a developer to build one?

You need an address your system answers on, such as your store's order API or a small endpoint your developer already has. The flow itself is built without code in MonoChat: an HTTP Request node calls the address, saves the fields you need as flow variables, and the reply uses them.

Does answering order questions on WhatsApp cost money?

Replies inside the 24-hour customer service window are service messages. Since October 1, 2026 Meta charges for them per delivered message after a free tier of 1,000 service messages a month per business phone number. Proactive shipping updates outside the window are utility templates and are charged by country.

What happens if the order system is down or the order is not found?

In MonoChat the HTTP Request node continues on On Fail when the response is not 2xx, when the call times out or when the answer cannot be read. Connect that output to a short apology and an Assign Session node, so a person takes over instead of the customer getting silence.

Should I use an AI agent or a fixed flow?

Use a fixed flow when the question is always the same and the answer is a lookup. Use an AI agent with tools when customers mix order questions with returns, address changes and product questions in free text. Many stores start with the flow and add the agent later.

First month of Growth on us

Run WhatsApp, Instagram and Messenger from one inbox

Start free with MonoChat: shared team inbox, AI assistants, templates and campaigns on official Meta APIs.

One code per business • 30 days to redeem • No card needed

$150 to get started.

Claim