Automation

Store orders: a WhatsApp message for every step of an order

Connect your online store — the ExceliaBOT app for Shopify, or one link for any other platform — and your customer hears from you on WhatsApp when the order is received, prepared, out for delivery and delivered.

4 min readUpdated: September 2026Open the dashboard

#What it does

Your store tells us about each order and each change of its status; we send the customer the message you chose for that step, with their name and order details filled in. Fewer “where is my order?” calls, fewer refused deliveries — and nobody on your team typing a message.

The Store orders page on an account whose plan does not include it: what it does, and one button to ask for it.
The Store orders page on an account whose plan does not include it: what it does, and one button to ask for it.
  1. 1Not in your package.
  2. 2Request an upgrade — your account manager contacts you with the options.

Store orders is available on request. If your account does not have it yet, the page explains the feature and Request an upgrade sends the request to your account manager.

#Connecting your shop

The Setup tab.
The Setup tab.
  1. 1The URL your store sends orders to.
  2. 2Your secret key. Keep it on your store’s server; never put it in a page visitors can see.
  3. 3The ready-made link with the key included — for platforms that only ask for a URL.
  4. 4Connected, with the time of the last event — or Waiting until the first order arrives.
  5. 5Generate a new key. Every link already pasted into a store stops working until it is replaced.
  6. 6Where to paste it, step by step, for WooCommerce and Shopify.

WooCommerce — no plugin needed

  1. In WordPress open WooCommerce → Settings → Advanced → Webhooks → Add webhook.
  2. Set Status to Active, Topic to *Order updated*, and paste the ready-made link as the Delivery URL. Save.
  3. Add a second webhook with Topic *Order created*, so the first message goes out too.

Shopify — install the ExceliaBOT app

For a Shopify store there is nothing to paste: install the ExceliaBOT app from the Shopify App Store and link it to your account, and every order step, left checkouts and your products reach us on their own. The whole flow is in Connect your Shopify store.

Any other platform

Post each order to the URL as JSON, with the key either in the link (?key=…) or in an X-Order-Key header. The fields we read are order_id, customer_name, phone_number, order_value, payment_method, store_name and order_status. Capitals and spelling do not matter, a store’s own field names are understood, and any phone format is fine — we normalise it. Hand the two lines on the Setup tab to whoever built your store; that is all they need.

Below the connection: the default country code and the test order.
Below the connection: the default country code and the test order.
  1. 1Default country code — used when a store sends a local number such as 010…; 20 for Egypt, 966 for Saudi Arabia. Leave it empty if your store already sends numbers with the country code.
  2. 2Your own WhatsApp number for a test.
  3. 3Send a test order — a fake order runs through the whole pipe.
Test with your own number

Before going live, set a message for the “Order received” step, put your own number in Try it now and press Send a test order. If the message reaches your phone, the pipe works end to end.

#Choosing the message for each step

The Order messages tab.
The Order messages tab.
  1. 1The five values any message can use, with what they held in your last order.
  2. 2The message to send at this step — an approved template from the Campaigns page.
  3. 3A preview with the real values of your last order.
  4. 4Choose the fields myself — map each variable to a field of your store’s order, with a fallback if it is missing.
  5. 5Send a message at this step — the switch for this step.
  6. 6Save.

Every order message is a template you build on the Campaigns page and Meta approves — use the Utility category for these, since they concern an order the customer placed. The template’s variables are filled from the order in a fixed order:

VariableFilled with
{{1}}Customer name
{{2}}Order number
{{3}}Total
{{4}}Payment method
{{5}}Store name

One card per step. The four every shop starts with are Order received, Preparing, Out for delivery and Delivered; your store’s own statuses appear as extra cards the first time an order carries them, and you attach a message to each. A step with no message, or with its switch off, sends nothing.

If your store names things differently — a total under another field, a note you want in the message — tick Choose the fields myself: one picker per variable lists every field the last order carried, with a sample value, and a fallback text for orders where the field is empty.

#What was sent

The History tab: every order event and what happened to its message.
The History tab: every order event and what happened to its message.
  1. 1The step the store reported.
  2. 2Sent, Failed (with a Resend button) or Not sent with the reason — usually that no message is set for that step.

Every event from your store is listed with the order, the customer, the step and the outcome. A failed send shows Meta’s reason and a Resend button; *Not sent* with “no message is set for this status” means the step simply has no template chosen yet.

#Cost and limits

  • Order messages are templates: Meta bills each delivered one to your WhatsApp Business account at the Utility rate for the customer’s country.
  • They count against the same monthly campaign quota as campaigns and follow-ups.
  • Meta’s messaging limit (unique customers per 24 hours) applies to them as well.
Does the customer need to have written to us first?
No. An order message is a template, which may start a conversation. When the customer replies, the thread appears in your inbox and the assistant answers.
My store sends the phone without a country code.
Set the default country code on the Setup tab and local numbers are completed automatically.
The test order says “no message is set”.
Open the Order messages tab, choose a template for Order received, tick *Send a message at this step*, save, and test again.
Can I stop messages for one step?
Untick *Send a message at this step* on that card and save. The step is recorded in History as Not sent.
Still stuck?

Write to us and a real person answers — usually the same working day. [email protected]

Or message your account manager from the My Manager page in the dashboard.