S Sozuri / Documentation WhatsApp guide Open Sozuri ↗
User guide

The WhatsApp Shop

Sell on WhatsApp from your own store. Customers browse your real products, fill a cart, choose delivery and pay — all inside the chat — and every order lands in your store like a website order.

Last updated 2 October 2026 For shop owners and their teams Setup takes about 20 minutes The WhatsApp Business guide
Your own storeProducts, prices and stock come from your WooCommerce store, and every order goes back into it.
Pay their wayA Paystack link for M-Pesa and cards, or cash on delivery. The money goes straight to your account.
Delivery that fitsPrice by area, by distance, a fixed price or pick-up. Customers can just name their town.
A helper that knows your shopAn optional assistant answers in plain words and fills the cart — the customer still places the order.

How it works

The shop is a part of your WhatsApp number that sells. A customer writes “shop”, taps your shop link, or simply asks “do you have sunscreen?”. From there they:

  1. browse your categories or search, and see your products as cards with a photo, price and Add to cart;
  2. check out: confirm their name, choose how to get the order — or just tell you their town — and share a location pin;
  3. pay with a secure link (M-Pesa or card) or choose cash on delivery;
  4. get the confirmation on WhatsApp, while the order appears in your store with everything your team needs to fulfil it.

You set it up once in WhatsApp → Shop. The page has eight steps on the left and, on the right, a Test phone where you try the shop as a customer would. Nothing in the test is sent or charged.

The WhatsApp Shop page: the eight steps on the left, the Catalogue step in the middle, and the Test phone on the right showing a product carousel
WhatsApp → Shop. The steps (left), the one you are on (middle) and the Test phone (right), where the shop answers exactly as it will on WhatsApp.
It works beside your flows

The shop does not replace your conversation flows or the Team Inbox. It answers shop messages; everything else goes on to your flow or to your team, as before. A flow can also send customers into the shop with its Open the shop step.

Before you begin

  • Your WhatsApp number is connected to Sozuri and receives replies — see Connect your number and Receive replies.
  • A WooCommerce store and someone who can sign in to its WordPress admin. (Shopify, ERPNext and Odoo are coming next.)
  • A way to be paid: a Paystack account (its secret key), or cash on delivery — or both.
  • Optional: AI tokens on your account, if you want the shopping assistant to answer in plain words.

The page shows a dot beside each step: green when it is done. The shop can go live once the store, delivery and payment are set up.

Step 1Connect your store

WhatsApp → Shop → Store
  1. Choose WooCommerce and press Connect with WooCommerce

    Your store's WordPress admin opens and asks you to approve Sozuri. Approve it, and you come straight back here. If your host blocks that, open Or paste a key instead: in WordPress go to WooCommerce → Settings → Advanced → REST API → Add key, choose Read/Write, and paste the key and secret.

  2. Let it copy your products

    Your products and categories are copied in the background, and refreshed every 3 hours. Copy products now refreshes them at once, for example after you add a new range.

The Store step: 8 products copied, 5 in stock and on sale, 4 categories, KES; Connected to WooCommerce, with Copy products now, Test connection and Disconnect
A connected store. How many products were copied, how many can be sold, and when they were last refreshed.

The copy is only for showing products quickly. When a customer presses Place order, the shop checks every price and the stock with your store again — so a price you changed, or the last item sold on your website, is never sold twice.

Step 2Choose what customers see first

WhatsApp → Shop → Catalogue

The shop opens with a menu. Decide what is on it:

  • Categories on the opening menu — up to 8, each with a short name of up to 24 characters (WhatsApp cuts longer menu rows). Leave it empty to show your biggest categories. Every other category is still one tap away, under More categories….
  • Featured products — up to 9, shown as the first row of the menu under a name you choose, such as “Best sellers”.
  • Let customers search by typing — anything they type that is not a command is a product search, and spelling mistakes are forgiven.
  • Hide sold-out products and Show product photos.
  • Show lists of products as swipeable cards — WhatsApp's carousel: up to 10 products side by side, each with its photo, price, Add to cart and Details. When a product on the page has no photo, that page is shown as a list instead.
The Catalogue step: three categories on the opening menu with their short names, two featured products named Best sellers, and switches for search, sold-out products, photos and cards
Catalogue. Three categories lead the menu; two featured products sit above them as “Best sellers”.

Step 3Delivery

WhatsApp → Shop → Delivery

Add the ways a customer can get their order. The quickest start is Import from your store: your WooCommerce delivery zones, rates and pick-up point are copied in for you to check, and nothing is saved until you press Save.

KindPriced byGood for
Price by areaA price per area you list — Westlands KES 300, Karen KES 500 — with the towns each one coversA rider in town, or a parcel service to other towns
Price by distanceA base price plus a price per km from your shop, up to a limit. The customer shares a location pin and the price is worked out from itRiders and courier apps
Fixed priceOne price wherever they areCountrywide courier
Pick-upFree. Where they collect, and optionally its map location — then a pick-up order is followed by a pin they can open in their maps appYour shop or a collection point

For each way you can also set:

  • Free for orders over an amount (0 means never free);
  • Ask for the delivery address — the customer taps Send location or types it, and you can change what that question says;
  • Allow cash on delivery — cash on delivery is only offered with the ways you allow it for.
The Delivery step: Import from your store, a Nairobi rider priced by area, a parcel service to other towns, and a pick-up point with its map location
Delivery. A Nairobi rider by area, a parcel service to other towns (no cash on delivery), and pick-up at the shop with its map location.
Customers can just name their town

A customer who types “I am in Kisumu” at checkout is shown the ways that reach Kisumu, cheapest first, with pick-up last. It uses the towns each area covers, so list them — an imported zone brings its counties with it.

For a pick-up map location, open Google Maps, press and hold the place and copy the two numbers (for example -1.2833, 36.8219), or paste a Google Maps link that shows them. Short maps.app.goo.gl links do not carry the numbers, so they are refused.

Step 4Payment

WhatsApp → Shop → Payment

Every payment goes straight into your own account. Sozuri never holds the money.

  • Paystack — the customer gets a Pay now link and pays by M-Pesa or card on Paystack's secure page. Paste your secret key from Paystack → Settings → API Keys & Webhooks and press Test. A test key (sk_test_…) lets you try the whole journey without real money.
  • Cash on delivery — the order is placed straight away and paid when it arrives. You choose what its button says.
  • M-Pesa (Daraja) and Kopo Kopo — the PIN prompt on the customer's phone, inside the chat. Coming next.
The Payment step: Paystack on with a test key, cash on delivery on, and M-Pesa Daraja and Kopo Kopo marked Coming next
Payment. Paystack and cash on delivery are both on; customers choose at checkout.
Your website already uses Paystack?

A Paystack account has one webhook address, and your website plugin probably uses it. That is fine: the shop confirms payments by checking with Paystack itself — when the customer returns from paying, and every minute after — so you do not need to change it.

Step 5Messages

WhatsApp → Shop → Messages

Everything the shop says has a sensible default. Change only what you want in your own words — the welcome, the payment link message, the thank-you after payment, what is said when they ask for a person, and the rest. WhatsApp formatting works: *bold*, _italic_.

These fill themselves in:

WriteIt becomes
{{shop}}Your shop's name
{{first_name}}, {{name}}The customer's first name, or full name
{{order}}, {{total}}, {{amount}}The order number, its total, and the amount paid
{{cart_total}}, {{cart_count}}What is in the cart
{{query}}What they searched for
{{back}}, {{hours}}When your team is back, and your team's hours
The Messages step: the welcome, back at the menu, asking what they are looking for, a search that finds nothing, starting checkout, the payment link, payment received and order placed
Messages. Each box shows what is said now; edit it in place.

Step 6The shopping assistant

WhatsApp → Shop → Assistant

With the assistant on, customers can simply write what they want — “something for dark spots under 2,000, delivered to Kilimani” — in English, Swahili or Sheng. It finds the products, answers questions from your catalogue and delivery settings, and brings them to the order summary.

  • It never sets a price and cannot place the order: the customer still taps Place order.
  • Taps and simple answers (a number, a name, “yes”) cost nothing. Each message the assistant reads uses AI tokens from your account.
  • Give it a name if you like, and tell it what it may say about your shop — delivery times, returns, opening hours, how to use your products. Anything you have not told it, it will not claim: it says a colleague will check.
  • Switched off, the shop still works: customers tap through it, and anything they type is a product search.
The Assistant step: Ready, 50,000 AI tokens left, the assistant switched on, named Amani, and a box for what it may tell customers
Assistant. On, named “Amani”, with the tokens left on the account.
A customer asks for something for dark spots under 2,000; the assistant answers and shows the Vitamin C serum; the customer asks for delivery to Kilimani and the shop asks where to deliver
In plain words. One sentence filled the cart, the name and the delivery; the shop asks for the one thing still missing.

Step 7Test it

The Test phone on the right of every step is your shop, answering as it will on WhatsApp. Type as a customer, tap the buttons, and press Restart to begin again. It always uses what you saved last.

  • Nothing is sent and nothing is charged. A test order is not sent to your store: the phone shows exactly what your store would have received, and it is listed under Orders as a test.
  • Your real customers see the same messages, buttons and cards — try the whole journey once before you go live.
The Test phone after Place order: the order summary, a Pay now link secured by Paystack, and a test order card showing what the store would receive
A test order. The customer's Pay now link, then the card your store would have received — marked “not sent to your store”.

Step 8Go live

WhatsApp → Shop → Go live

Switch on Shop is live at the top of the page. Then make sure customers can find it — they never need to know a keyword:

  • A link and a QR code. Tapping the link (or scanning the code) opens WhatsApp with a message already typed; they press send and the shop answers. Put it on your website, Instagram bio, Facebook and Instagram ads, flyers and packaging.
  • Plain requests. “Do you have sunscreen?” or “bei ya vitamin C?” opens the shop at those products. The message must ask for something and name a product you sell, so your other chats are left alone. (This works when no conversation flow is switched on.)
  • Shop words — “shop”, “order”, “buy”, “duka”, “nunua” and any you add always open it.
  • Answer every message with the shop — for a number used only for the shop.
  • New-chat buttons — WhatsApp can show “Browse products / Find a product / Talk to us” in a brand-new chat. Everyone who opens a new chat sees them, so leave this off on a number you also use for other things.
  • From a conversation flow — add the step Open the shop to a flow, for example as a “Shop” button in your welcome menu. It can start at the menu, a category, a product, a search, their orders or their cart.
Go live: the shop name, a QR code with the message already typed and the shop link, and the switches for plain requests, answering every message and shop words
How customers get in. The link and its QR code, and the ways a message opens the shop.

Further down the same step:

  • Words that leave the shop (“menu” hands them back to your flow) and words that ask for a person;
  • Ask for an email for the receipt (customers can skip it), and ask for directions after a location pin — a gate number or a landmark for the rider;
  • Show “typing…” while the shop answers — their message is marked read and WhatsApp shows “typing…” until the answer arrives;
  • Ask “How many?” when a product is added — off by default: Add to cart puts one in at once, and customers change it with Change quantity;
  • a minimum order, how long payment links stay open (unpaid orders are then cancelled in your store), how long carts are kept, and a note added to every order in your store.

What your customers see

These are from the Test phone; on WhatsApp they look the same, in the customer's own theme.

The welcome with a Shop now menu, then the Serums category as swipeable product cards with photos, prices, Add to cart and Details
Browsing. The welcome and its menu, then a category as cards they swipe through.
After Add to cart: Added 1 × Vitamin C Brightening Serum, Your cart: 1 item, KES 1,800, with Checkout, Keep shopping and Change quantity
One tap to add. Then check out, keep shopping, or change the quantity.
At checkout the customer writes I am in Kisumu and the shop shows the ways that reach Kisumu: the parcel service for KES 350, or pick-up at the shop for free
“I am in Kisumu.” The ways that reach their town, with pick-up last.
A pick-up order paid on delivery: the order summary, Order is placed with the amount to have ready, and the shop's location pin with Open in Maps
Placed, paid on collection. A pick-up order ends with the shop's pin.
The page after paying: Payment received, order 5001, KES 1,800, the payment reference, and Back to WhatsApp
After paying. The page they return to; the confirmation also arrives on WhatsApp.

Their orders

A customer who writes “my orders” or “where is my order?” sees their orders from the last 12 months — placed on WhatsApp or on your website with the same number — with the status, what they ordered, the total, and Pay now for any still unpaid. WhatsApp proves the number is theirs, so no code is needed.

When a customer asks for a person

A customer taps Talk to us or types a word such as “agent” or “human”. The shop then:

  1. puts the chat in the Team Inbox with a note, and tells your team — a text message and/or an email with their name, number, cart and a link straight to the chat;
  2. answers honestly about when you will reply. With team hours on, outside them it says “we're back tomorrow at 8am” instead of “shortly”;
  3. keeps helping until someone from your team replies — right away, or after a wait you choose. The moment a person replies in the Team Inbox, the shop and the assistant go quiet;
  4. optionally checks in once, after 10 minutes to 2 hours, if nobody has replied — offering to check them out if something is in their cart.
Go live: team hours Monday to Friday 8am to 5pm and Saturday 9am to 1pm, and alerts by text and email when a customer asks for a person, with Send a test alert
Team hours and alerts. Who to tell, and when your team answers chats.
The customer taps Talk to us and the shop replies that someone from the team will reply here shortly
Talk to us, inside team hours.

In the Team Inbox, the chat's side panel shows the shop assistant's state. Hand back to the assistant gives the conversation back to the shop when your team is done.

Text alerts are sent from one of your approved sender IDs and use SMS units from your balance; email alerts are free. Send a test alert tries them before you save.

Orders and payments

WhatsApp → Shop → Orders

Every WhatsApp order goes into your store, marked as from WhatsApp, with the customer, the items, the delivery and its price, the address or location pin, the directions and your order note. Fulfil it exactly as you would a website order. The Orders step lists the latest 30 with their status and links to the order in your store and to the chat.

The Orders step: order 5002 for Brian Mwangi waiting for payment and order 5001 for Achieng Otieno paid, each KES 1,800
Orders. One waiting for payment, one paid. Store opens it in WooCommerce; Chat opens the conversation.
WhenIn your storeOn WhatsApp
Cash on delivery, placedA new order, Processing“Order #… is placed. Please have KES … ready.”
Pay online, placedA new order, Pending paymentThe Pay now link
PaidMarked paid, Processing, with the Paystack reference“Payment received — thank you!”
Not paid in timeCancelled when the link expiresA note in the Team Inbox
Changed after placingThe new order replaces the unpaid one, which is cancelled“Your earlier order is cancelled — this one replaces it.”
  • The amount charged is your store's own order total, so tax or rounding set in your store are respected.
  • If the store cannot be reached when a payment arrives, the payment is still recorded, the customer is still told, and the store is updated automatically as soon as it answers.
  • A payment for less than the order total is never treated as paid; your team gets a note to look at it.
  • Each customer is saved in Contacts → All Contacts — the name they ordered under, and their email and delivery address as contact fields — so broadcasts can reach them later.

Connecting other tools

Send shop orders on to a spreadsheet, a CRM, an accounting system or Zapier:

  • Webhooks — order.placed, order.paid and order.cancelled are sent to your own address the moment they happen, signed and retried. See Webhooks.
  • The orders list — GET /orders gives your shop orders newest first, with their items, delivery, payment and total. See Lists.

Both are part of the WhatsApp API on your account (For developers).

When something is wrong

What you seeWhy, and what to do
The live switch is greyed outA step is not finished. The dots on the left show which: the store must be connected, and there must be at least one way to deliver and one way to pay.
A product is missingIt may be out of stock (with Hide sold-out products on), hidden in your store's catalogue, or not copied yet. Press Copy products now on the Store step.
Products show as a list, not cardsA product on that page has no photo, or its photo is not a JPEG or PNG. Add one in your store, then copy the products again.
The shop says it cannot reach the storePress Test connection. If the key was removed or is Read only, connect again with a Read/Write key.
A customer paid but the order says waitingPayments are confirmed with Paystack every minute. A payment that was started but not finished shows as abandoned and is not paid. Check the reference in your Paystack dashboard.
The shop does not answer someoneA person on your team replied in that chat in the last 12 hours, so the bots stay quiet. Use Hand back to the assistant in the Team Inbox. With a conversation flow on, plain requests go to the flow; use your shop link or a shop word.
A town is not recognisedAdd it to the towns an area covers on the Delivery step. The customer can always pick from the list instead.

Still stuck? Call 0722 117 850 or email [email protected], and say which step you are on. A screenshot of the Test phone is the fastest way to help.

Words used in this guide

Carousel (cards)
WhatsApp's swipeable row of product cards, each with a photo, the price and buttons.
Test phone
The rehearsal on the right of the Shop page. It answers like the real shop and sends, charges and stores nothing.
Location pin
A place shared from WhatsApp's 📎 → Location. The shop prices distance delivery from it and passes it to your rider.
Pick-up pin
Your collection point's place on the map, sent to customers who choose pick-up.
Shop link
A wa.me link that opens a chat with your number and a message already typed.
AI tokens
What the shopping assistant uses each time it reads a message. Buy more under Top up.
Team Inbox
Where your team reads and answers every WhatsApp chat — see the Team Inbox.