Last updated

The shopping bot

WhatsApp Shop

The shopping bot

When a customer messages your WhatsApp number, the bot answers with your welcome message and three buttons: Browse, Search and My orders. Below the welcome it tells them how to reach a person, for example Need a person? Type "Talk to us" any time.

What customers can do

The customer wants to…What the bot does
BrowseLists your top-level categories. Tapping one opens its sections (with All of … first), up to three levels deep, then its products. More… shows the next page of categories.
SearchAsks what they are looking for and lists the matching products, with Next page when there are more. Typing another word on a results list searches again.
See a productSends the photo with the name, the price (and the old price when it is reduced), the first lines of the description and the stock: In stock, Only 3 left or Out of stock. Buttons: Add to cart, Options when the product has variants, and Back.
Add to cartAsks how many, as a list of up to nine numbers starting at the product's minimum quantity; the customer can also type a number. It confirms Added 2 × … with View cart, Checkout and Keep shopping.
See the cartLists each item, then the subtotal, any discount, shipping and tax where they are known, and an Estimated total, with Checkout, Edit cart and Keep shopping. Edit cart removes an item or changes its quantity.
Check outSends a Complete your order button that opens their cart on your store. The message says that prices and shipping are confirmed on that page. With Take orders in the chat on, customers paying by cash on delivery or bank transfer place the order in the chat instead (see Ordering in the chat).
Check an orderA customer whose WhatsApp number belongs to their store account sees their last 5 orders; tapping one shows its status, date, total and items and, once it has a shipment, the courier and a Track your order button. Anyone else is asked for the order number and then the email used for the order.
Talk to a personTyping Talk to us (your fourth menu label) or one of your Talk to a person keywords hands the chat to your team. See The inbox.

Customers can also type these words at any time, whatever screen they are on: hi, hello, menu or start (back to the welcome), browse, categories or shop, search or find, orders, order status or track, cart, and checkout or pay. Your own menu labels work too, so a customer can type what a button says.

When the bot cannot tell what the customer wants, it sends your Not understood message with the menu. A photo or file without text gets Thanks! Send me a product name or pick an option., and the file stays in the chat for your team (with AI answers on, voice messages and photos are read first: see Voice messages and photos). A photo, video or document with text is read like a typed message: the words above work, and anything else is searched for, so Do you have this in blue? under a photo gets search results. Reactions and WhatsApp's own notices (such as changed their number) get no answer; they stay in the chat for your team.

AI answers

With AI answers questions on, CartWhizz AI (your store's AI assistant) answers the typed questions the bot does not understand, such as is the blue mug dishwasher safe? or how long does delivery take?. It is off until you switch it on.

  • What it answers. Only typed text the bot would answer with your Not understood message, and a question (a message ending in ? or starting with words like do, is or how) that starts a new chat. Taps on buttons and lists, photos, locations, the cart, checkout and orders always stay with the bot.
  • Where the answer comes from. The same assistant as the chat on your website: your products, policies, help pages and FAQs, looked up while it answers. It cannot change the cart, prices or orders. Products it suggests are sent as the bot's own product messages, so Add to cart works exactly as in the bot.
  • When the answer is sent. Only when it passes the assistant's checks (no price, stock level or date that did not come from your store, nothing outside your blocked topics) and is at least as sure as Answer confidence. Otherwise the customer gets the bot's usual reply, plus a Talk to us button that hands the chat to your team.
  • When the AI is not available. If CartWhizz AI is switched off for your store, its AI key is revoked or over a limit, the AI service is busy, or an answer takes longer than 12 seconds, the bot answers as if AI answers were off. The customer sees no error.
  • What it needs. CartWhizz AI available for your store, with its AI key active. Every question asked counts against that key's limits, the same as questions in your website's chat. The AI sees the chat's last few messages, never the whole history, and links are left out.
SettingDefaultWhat it does
AI answers questionsOffOn: CartWhizz AI answers typed questions the bot does not understand.
Answer confidence0.7How sure an answer must be before it is sent, from 0 to 1. An answer built on your store's data (a product, policy, help page or delivery check it looked up) scores 0.9; an answer that looked nothing up scores 0.5; an unsure answer, or one that offers a person, scores 0.1. At 0.7 only answers built on your store's data go out.

AI answers appear in the inbox like any other bot message, and with your website's chats under Marketing → Artificial intelligence → Shopper assistant. Try a few questions in the Bot simulator before switching it on: the simulator uses the AI too, and those questions count against the key.

Voice messages and photos

With AI answers questions on, CartWhizz AI also reads what customers send without typing:

  • Voice messages. A voice message recorded in WhatsApp is written down, and the words are handled exactly as if the customer had typed them: stop unsubscribes, agent asks for a person, search and the other words above work, and a question can get an AI answer. Voice messages are written down in every chat, also one your team is answering, so your team can read them in the inbox. A forwarded audio file is not a voice message and is not written down.
  • Photos without text. CartWhizz AI names the product in the photo in a few words, such as blue denim jacket, and the bot searches your catalog for it, as it does for a photo with text. Only when the bot is answering the chat. Nothing is ever added to the cart: the customer still taps Add to cart. A photo with text is read from its text, as before.
  • When it does not work. No speech model, a voice message over about eight minutes (1 MB), a photo with nothing to sell in it, the AI busy, switched off or over a limit, or no answer within 20 seconds: the customer gets the bot's usual reply to a file and sees no error.
  • What it needs. The same as AI answers: CartWhizz AI available for your store with its AI key active. Photos are read only while Search with a photo is on in your shopper assistant's settings (Marketing → Artificial intelligence → Shopper assistant). Every voice message and photo read counts against the AI key's limits. The recording and the photo go only to CartWhizz AI, for that one reading, and are not kept by it.

The words appear in the inbox under the voice message or photo, marked as written by CartWhizz AI, since they can contain mistakes.

What the bot shows

  • Category lists and search results show only products a guest could buy on your store right now: active, and in stock or open to back-orders. Categories with nothing in stock are left out. A product that sells out while a customer is looking at it says Out of stock.
  • Prices are the ones a guest sees on your store, in your store's money format. If your store hides prices until sign-in, the bot says Sign in on our store to see the price.
  • The chat cart is a normal cart, so stock limits, quantity rules and cart totals work exactly as on your website. Cart totals in the chat are labelled an estimate; the final price comes from your checkout, either on the checkout page or in the review of an order placed in the chat.

The checkout link

Complete your order opens a page on your store that brings the chat cart over:

  • It adds the chat's items to the customer's own cart: their account cart when they are signed in, otherwise a guest cart. Anything already in that cart stays; an item that is in both is topped up to the chat's quantity.
  • It then opens the cart page. From there it is your normal checkout: sign in or check out as a guest, shipping, and payment with your store's payment methods.
  • If the store asks shoppers to sign in before using a cart, the page asks them to sign in first and then brings the chat cart over.
  • If nothing could be added (everything sold out, for example), it says These items are no longer available.
  • A link works for Checkout link valid for (72 hours by default). After that it says This link has expired; the customer taps Checkout in the chat again for a new link. Tapping Checkout twice in a row sends the same link, as long as it still has at least half its time left.

The order is recorded as a WhatsApp order: it counts in Metrics, and the conversation in the inbox shows Order #1001 placed. The chat cart is then emptied and the bot goes back to its menu, so the customer's next View cart starts fresh. If they added more to the chat cart after opening the link, it is kept as it is.

Ordering in the chat

Turn on Take orders in the chat (off by default) and customers who pay by cash on delivery or bank transfer can place their order without leaving WhatsApp. When they tap Checkout, the bot asks, one message at a time:

  1. Name and email. The email is required: the order confirmation goes there. A customer whose WhatsApp number is linked to their store account sees the name and email from that account and taps Continue or Change name; the order then goes on their account and is priced for it, so prices for their customer group apply.
  2. The address. Only the fields your checkout requires (the Shipping section of your profile fields), one at a time: country, street, city, state, postal code. A linked customer can use their saved address with one tap. The phone number on the order is the customer's WhatsApp number.
  3. A delivery option, with the prices your checkout charges for that address.
  4. A payment method: only the cash on delivery and bank transfer methods you have switched on and that fit the order (their amount limits and other rules apply). Pay online sends the checkout link instead, for cards and other online payments.
  5. The review: the items, subtotal, discount, shipping, tax, any payment fee and the total your checkout calculates, with the address, payment method and email. Place order places it; Edit changes any part; Cancel keeps the answers for later.

The customer then gets the order number and what happens next: for cash on delivery, the amount to have ready; for bank transfer, the amount, the order number to use as the reference and the Payment instructions you wrote on that method (Finance → Payments). Your usual order confirmation from WhatsApp Notifications and email goes out as for any other order; the bot sends no second one.

Good to know:

  • The order is a normal order in Orders, marked as a WhatsApp order, with the same stock, prices, discounts, tax and payment rules as your website. The total the customer confirmed is exactly what the order costs. The conversation in the inbox shows Order #1001 placed, as for an order from a checkout link.
  • If anything changes the total between the review and Place order (a delivery price, for example), nothing is placed: the bot shows the new total and asks the customer to confirm again. Tapping Place order twice places one order.
  • Each step has Back, and tapping a button from an older message shows the step the customer is on instead of acting. The answers are kept for the Conversation memory time after the customer's last message.
  • The bot keeps sending the checkout link when guest checkout is off and the customer is not linked to an account, when no cash on delivery or bank transfer method is on, or when your store needs the order finished on the website (for example when it asks customers to verify their email before checkout).
  • In the Bot simulator you can walk through every step; Place order there shows a note instead of placing an order.

Cart reminders

A customer who fills a cart in the chat and then goes quiet can get one reminder with a new checkout link. It is off until you switch it on in WhatsApp Shop settings → Cart reminders.

SettingDefaultWhat it does
Remind customers about a cart left in the chatOffOn: one reminder per chat cart, sent with the template below.
Reminder templateNoneThe approved WhatsApp template the reminder is sent with.
Send the reminder after4 hoursHow long the chat must be quiet before the reminder goes out, 1 to 72 hours.

The reminder is a business-initiated message, so WhatsApp only lets you send it as an approved template:

  1. Open Messaging → Templates and create a WhatsApp template for Promotions (a cart reminder is a marketing message). Give it the name your template has in WhatsApp Manager and set it to Approved once WhatsApp approves it.
  2. Write it with any of these: {{store_name}}, {{customer_name}} (the customer's WhatsApp name), {{link}} (the checkout link that brings the chat cart to your store) and {{item_count}} (how many items are in the cart). A template that uses anything else, such as a coupon code, is not offered, because the reminder could not fill it.
  3. Back in Cart reminders, choose it under Reminder template, switch the reminder on and save.

When it goes out:

  • The chat has been quiet for Send the reminder after: no change to the cart, no message from the customer or your team, no hand-over to or from your team, and the checkout link not opened. A chat that started its quiet more than a week ago is not reminded, so switching the reminder on does not message old carts.
  • The customer has opted in to offers on WhatsApp (on your store under My account → Notification preferences, or at checkout). A customer who has not, or who sent STOP, is skipped for that cart and is not reminded about it later.
  • The bot has the chat: nobody from your team is handling it and the customer did not ask for a person.
  • The cart still has items and has not become an order, and a customer whose WhatsApp number belongs to an account has not ordered since the cart last changed.
  • Your quiet hours (in Messaging, on the WhatsApp channel) are respected: a reminder that falls inside them waits until they end.
  • Each cart is reminded at most once, however long it stays in the chat.

The reminder appears in the conversation in the inbox like a template your team sent, so everyone sees what the customer got. It counts in Metrics as a message sent and in the WhatsApp spend; with the monthly budget's hard cap reached no reminder goes out (see Costs, budget and metrics). Simulator chats are never reminded.

Orders by number and email

A customer who is not linked to an account can still check an order: the bot asks for the order number, then the email used for that order, and shows the order when both match. After 5 failed tries it asks them to try again later or to type Talk to us to reach your team.

A WhatsApp number is linked to a store account automatically when exactly one customer has that verified phone number, or when the customer proves an order in the chat whose account has the same phone number.

Settings that change what the bot says

All in Customers → WhatsApp Shop → WhatsApp Shop settings. Each message holds up to 1024 characters; you can write them in any language.

SettingDefaultWhat it does
Bot answers customersOnOff: the bot stays quiet and every message waits in the inbox for your team.
Welcome messageHi! Welcome to {store_name}. What would you like to do?The first message of a chat. {store_name} becomes your store's name.
Menu button labelsBrowse, Search, My orders, Talk to usFour labels separated by commas, in that order, up to 20 characters each and all different. The first three are the buttons; the fourth is the word customers type to reach a person.
Not understood messageSorry, I didn't get that. Pick an option below.Sent with the menu when the bot cannot match what the customer wrote.
Search results per message10Products in one results list, 1 to 10 (a WhatsApp list holds at most 10 rows).
Conversation memory24 hoursHow long the bot remembers where a customer was after their last message, 1 to 168 hours. After that a typed message starts again at the welcome.
Checkout link valid for72 hoursHow long a checkout link keeps working, 1 to 720 hours.
Take orders in the chatOffOn: customers paying by cash on delivery or bank transfer place the order in the chat (see Ordering in the chat). Card and online payments still use the checkout link.
AI answers questions, Answer confidenceOff, 0.7See AI answers above.

The bot's other replies (product pages, cart, orders) are fixed English text.

Talking to a person

SettingDefaultWhat it does
Talk to a person keywordsagent, human, help, supportWords that hand the chat to your team, separated by commas. Only a message that is just the keyword counts: help does, can you help me does not. Capitals don't matter.
Connecting messageOne moment, connecting you to our team.Sent when a customer asks for a person.
Team busy messageOur team is busy right now; I'm back to help in the meantime.Sent when the chat goes back to the bot because nobody replied in time (see the timers in The inbox).

Unsubscribe (STOP)

SettingDefaultWhat it does
Unsubscribe keywordsSTOP, UNSUBSCRIBEWords that stop every message to the customer. Their WhatsApp consent is withdrawn for order updates and offers alike (STOP ALL works too).
Unsubscribe confirmationYou've been unsubscribed from our messages. You can message us any time to shop.Sent once when a customer unsubscribes, never again for a repeated keyword.

An unsubscribed customer can still write to you: the bot and your team answer them in the chat they started. What stops is everything your store would start itself, such as order updates and offers. They can opt back in on your store under My account → Notification preferences → Text & WhatsApp.

Opening hours

SettingDefaultWhat it does
Use opening hoursOffOn: outside opening hours a customer gets the after-hours message once per chat per day, then the bot carries on helping them shop.
Opening hoursMon-Fri 09:00-18:00Days and times separated by commas, for example Mon-Fri 09:00-18:00, Sat 10:00-14:00. Days not listed are closed; 24:00 closes at midnight.
Time zoneYour store's time zoneAn IANA time zone such as Europe/London.
After-hours messageWe're closed right now; we answer during opening hours. The bot can still help you shop.The notice itself.

A customer who asks for a person after hours still reaches the inbox, so your team sees the chat when they are back.

The 24-hour window

WhatsApp lets a business reply freely only within 24 hours of the customer's last message. The bot always answers straight away, so it is always inside that window. For your team the inbox shows how much of the window is left; once it has closed, only approved templates can reach the customer until they write again.

Order updates from WhatsApp Notifications are approved templates, so they are not limited by the window.

Try it in the simulator

Open Customers → WhatsApp Shop → Bot simulator (it needs the Manage WhatsApp Shop permission) to chat with your bot the way a customer would:

  • Type a message, or start with one of the suggestions, and tap the reply buttons and list rows as a customer would.
  • Nothing is sent to WhatsApp or to any customer. You chat as a test customer of your own, so your tests never mix with real chats, another admin's tests, the inbox or the metrics.
  • Checkout links open in a new tab, so you can test the whole way to your cart. With Take orders in the chat on you can walk through ordering in the chat; Place order shows a note and places nothing.
  • Reset chat starts over from the welcome message and empties the test cart.
  • Edit bot messages opens the settings.

The simulator runs the bot, with AI answers when they are on. Typing one of your talk-to-a-person keywords or your Talk to us label shows your Connecting message and a note where a real chat would go to your team; the test chat stays with the bot. Your unsubscribe keywords and opening hours apply in real chats only.