🛍️ Shopify on WhatsApp

Answering “where is my order?” without typing

Two flows, not one: a proactive update that prevents the question, and a reactive lookup for when it comes anyway.

Answering order-status questions automatically takes two flows: a proactive one that sends tracking the moment an order ships, and a reactive one that looks the order up when a customer asks anyway. Most stores build only the second and wonder why the volume stays high.

Both are free to run. The proactive one is a utility template, free inside an open conversation window; the reactive one is a reply to a customer who just messaged, which is free by definition.

Flow one: prevent the question

A large share of "where is my order?" messages exist because the customer was never told. A shipping notification with a real tracking link removes them.

Proactive: tell them before they ask

TriggerShopify: order shipped
SendCarrier and tracking linkUtility template, three variables

One caution worth building around: a manual fulfilment with no tracking number sends an empty variable, and Meta rejects the whole message with error 132000. If you fulfil by hand, put a fallback phrase in the template rather than relying on a variable that may be blank.

Flow two: answer the question when it comes

Some customers will ask regardless — they lost the message, or they want reassurance. This flow catches the question, asks for the order number, looks it up and answers.

Reactive: look it up and answer

TriggerCustomer messages you
ConditionMessage contains an order-status phrase
Ask"What's your order number?"Free text, saved to a contact field
Google SheetsFind the matching row
success
Send status and tracking
failure
"Let me get someone to check"
Assign the chat

Install the lookup flow

Needs three contact fields and your orders sheet connected.

Add this automation to my account It installs as a draft. Nothing is switched on and no customer is messaged until you press Publish.

Where the answer comes from

SourceGood forSetup effort
Google SheetA store whose team already keeps oneMinutes
Your own system, via an API stepLive, authoritative dataNeeds a developer once
Saved contact fields from the shipping flowThe simplest possible versionNone

That third row deserves attention because it costs nothing. If your shipping notification already stores the tracking link on the contact, the reactive flow can simply read it back — no sheet, no lookup, no failure branch. It only knows about the most recent order, which for most stores is exactly the order being asked about.

Catching the question reliably

The keyword list is what decides whether this flow ever runs. Start with: where is my order, order status, tracking, track my order, has it shipped, when will it arrive, delivery status, any update.

Then add how your customers actually write. In South Asian and Gulf markets that means transliterated phrasings — "kab ayega", "kab tak", "kidhar hai" — which contain no English words at all and will otherwise sail straight past the rule. See handling Roman Urdu and Hinglish.

If the flow shows zero runs, the keyword list is the culprit. Not the lookup, not the sheet. Check the automation's activity view: no runs means nothing matched, and the fix is twenty minutes reading real messages in your inbox.

Always have a human path

A lookup that finds nothing is routine, not exceptional — customers mistype order numbers, quote the wrong reference, or ask about an order placed by someone else. Wire the failure branch to a message and a handover every time.

The message matters as much as the routing. "I couldn't find that order number — let me get someone to check it properly" is honest and reassuring. Silence, which is what an unwired branch produces, is neither. Handing a chat to a human covers doing it well.

What this flow cannot do

Measuring whether it worked

The number to watch is what share of order-status conversations finish without a human. Compare your inbox volume for these questions before and after launching both flows — and expect the proactive flow to move it more than the reactive one, which is the opposite of most people's intuition.

Judge it against effort saved rather than messages sent. Measuring whether your automation works covers the distinction.

Frequently asked questions

How do I automate 'where is my order' on WhatsApp?

Two flows: a proactive shipping notification with a tracking link, and a reactive flow that catches order-status keywords, asks for the order number, looks it up and answers — handing over the ones it cannot find.

Where does the order status come from?

A connected Google Sheet, your own system via an API step, or contact fields your shipping flow already saved. The third costs nothing to set up and covers the most recent order.

My order-status flow never runs. Why?

Almost always the keyword list. Check the automation's activity view — no runs means nothing matched, so add the phrasings customers actually use, including transliterated ones.

Why does my tracking template fail to send?

Usually an empty variable. A manual fulfilment with no tracking number sends a blank where Meta expects a value, which produces error 132000 and the customer receives nothing.