Skip to main content

Connecting your online store

If you sell through WooCommerce, ConnectWiz can recognise the people who write to you as the customers they already are — on every channel, not only on your website. Once a store is connected:

  • somebody who writes on WhatsApp is matched to their store account, so your team stops asking who they are;
  • your assistant can answer "where is my order" with the real status, carrier and tracking number;
  • your product list, prices, pictures, categories and variants come into your catalogue, so the assistant answers "do you sell this, and how much" from your own shelf instead of guessing — and, if you choose, a price changed here travels back to the shop.

Open Settings → Integrations to begin.

Step 1 — Connect your shop​

In Settings → Integrations, open WooCommerce and use Connect my shop. Type your shop's address and press it: a tab opens on your own WordPress asking whether ConnectWiz may access the store. Approve it there, come back, and you are connected.

That one approval does everything the old way needed six steps for — the API key is created in your shop and sent straight to ConnectWiz, and the event subscriptions are set up at the same time, so your shop starts telling ConnectWiz when products, orders and customers change.

Your shop must be reachable over https

WooCommerce will not send credentials over an unencrypted connection, so an address starting http:// cannot be connected this way. Use the manual route below instead.

If your shop asks which permissions to grant, choose read/write. Read-only works for everything ConnectWiz shows you, and quietly refuses everything it would send back — which looks exactly like ConnectWiz being broken.

Step 1b — Or connect it by hand​

Still supported, and the right choice for a shop behind a login, an older WooCommerce, or if you would simply rather make the key yourself.

  1. In WordPress, go to WooCommerce → Settings → Advanced → REST API.
  2. Choose Add key, describe it — ConnectWiz does nicely — and set Permissions to Read/Write.
  3. Choose Generate API key.

WordPress now shows a Consumer key and a Consumer secret.

The secret is shown once

Copy both values before you leave that page. WordPress will not show the secret again, and the only way back is to delete the key and make a new one.

Step 2 — Give them to ConnectWiz​

In Settings → Integrations, open WooCommerce and fill in:

  • Store address — the address people type to reach your shop, for example https://shop.example.com;
  • the consumer key and consumer secret you just copied.

Choose Test connection. A green result means ConnectWiz reached your store. If it does not, the two usual causes are a mistyped address and a key created with the wrong permission.

Then turn the connection on.

What ConnectWiz can and cannot do in your shop

Reading is all it does until you say otherwise: customers, orders and products. It never edits a price and never writes a stock number.

Sending things back — orders you confirm here, and where they have got to — is a separate decision you make later, on the same screen, and it is off until you make it. See Sending orders to your shop below.

A read-only key is enough for everything above. If you plan to send orders back, the key needs read/write; without it those switches are on at our end and refused at yours, which reads as ConnectWiz being broken.

Matching customers automatically​

Leave Match customers automatically on and ConnectWiz links a person to the store customer with the same e-mail or phone number, on whatever channel they arrived from.

The phone half matters more than it sounds. Somebody who writes on WhatsApp usually has no e-mail address anywhere in the conversation, so without it they would stay a stranger to a shop that has known them for years.

Guest checkout is covered

People who buy without making an account have no customer record in WooCommerce at all — in many shops that is most orders. ConnectWiz finds those orders by the e-mail on the order itself, so a guest is recognised too.

Step 3 — Put the chat on your site​

The ConnectWiz Chat plugin puts the chat widget on your WordPress site and, for a visitor who is already logged in to your shop, signs them into the chat as that person — so they are not asked to identify themselves twice.

  1. In Settings → Integrations → WooCommerce, choose Download plugin.
  2. In WordPress, go to Plugins → Add New → Upload Plugin and upload the .zip you downloaded.
  3. Activate it.
  4. Open Settings → ConnectWiz Chat in WordPress and paste the SSO secret. The widget key and the API address are already filled in: your download carries them. The Instructions button beside the download repeats these steps.

The download carries no secrets. The widget key in it is the one every page with your chat already shows; the SSO secret is typed into that settings page.

The same plugin also adds ConnectWiz cookie consent when you switch it on for the site.

Step 4 — Bring your products in​

Open Settings → Catalogue and choose Import. Your products arrive with their names, codes, prices, stock and categories.

The import is safe to run again whenever your shop changes, and it follows three rules worth knowing:

  • It never overwrites a price you typed. If somebody sets a price here, a later import leaves it alone. The shop's value is only ever used to fill a gap.
  • Stock is refreshed every time. Unlike a price, what is on the shelf is a fact your shop counts, so it is always taken from the shop.
  • Products that disappear are retired, not deleted. They stop being offered, and any past quote or sale that named them still reads correctly.
Sizes and colours come across as their own things

If a product comes in sizes or colours, each one is imported as a separate item under the product — "Kimono" with "M" and "L" beneath it — carrying its own code, its own stock and the axes your shop names them by. So the assistant can answer "have you got it in medium", and an order can be placed for one particular size rather than for the product in general.

Importing them costs a request per product, so one import expands the options of the first hundred products with any and stops. Products past that still arrive; their sizes do not. Run the import again after the shop has settled and the rest follow — the count is reported so you can tell the difference between "no options" and "we stopped looking".

Step 5 — Let the assistant answer​

Go to Settings → AI assistant and turn on Answer about products and orders.

From then on your assistant can:

  • look up your catalogue — what you sell, for how much, and whether it is in stock;
  • look up this customer's orders — status, delivery, carrier and tracking number, and what was in the box.
It can only ever see this customer's orders

If someone types an order number in the chat, the assistant does not fetch that order. It looks only among the orders belonging to the person it is talking to. A number that belongs to somebody else simply finds nothing — and the assistant cannot tell whether that number exists, so it cannot be used to go fishing.

When your shop does not count stock​

Many shops leave WooCommerce's stock management off, so "in stock" is the shopkeeper's word rather than a number. ConnectWiz keeps that distinction: the assistant is told "they say yes and do not count" rather than being handed a zero, so it does not refuse a sale you would happily make.

Ordering from the chat​

If your workspace has a priced catalogue, a visitor can browse it and place an order without leaving the chat. Their order appears in the conversation and on their contact, beside anything they bought in your connected shop.

An order placed here is final, not a draft: somebody who pressed "order" believes they have done something, and the record agrees with them.

The price is never the browser's to send

The chat asks for an item and a quantity. The price and the name are read from your catalogue at the moment of the order, so nothing a page can be made to send changes what is charged. Unpriced items are not shown at the counter at all — a visitor who could see one would try to order it and be refused.

A visitor only ever sees their own orders. There is no order number in the address and no customer id in the request; the person is taken from their verified chat session, so there is no digit to change.

What your team sees​

Open any conversation with a matched customer and their profile carries:

  • their orders, with the tracking number and carrier right there, so nobody has to open the shop's admin to read a code back to a customer;
  • what was in each order, how many of each, and what it cost;
  • the delivery address, and whether anything was refunded.

Orders you write in ConnectWiz yourself — see Sales and money — appear alongside the shop's, so a customer who bought once in the shop and once over the phone has one history rather than two.

Sending orders to your shop​

Everything above reads from your shop. This is the one thing that writes back to it, and it is off until you turn it on — under Settings → Integrations → WooCommerce → Writing into your shop.

Switched on, an order confirmed in ConnectWiz is created in your shop too, so your stock, your reports and whoever packs the boxes all see it without anybody retyping it.

Two things about how it is switched on are deliberate, and worth knowing before you go looking for a missing order:

  • Turning it on does not make it real. New shops rehearse: the order is prepared exactly as it would be sent, and then not sent. Leave it rehearsing for a few days if you want to watch before committing, then choose Send for real.
  • If you keep your own sales records, that decision wins. A workspace whose sales are marked as held here under Data ownership does not mirror them out even with this switch on — the screen says so on the row rather than leaving you with a control that looks broken.

An order is only ever sent once, even if your site times out halfway through and we try again. A duplicate here is not a stale number on a screen; it is a real order somebody could pick, pack and post.

Keeping the shop's copy up to date​

A second switch, on the same screen. With it on, marking an order shipped or delivered — or adding a tracking number — tells your shop, so whoever works in WooCommerce all day sees the same thing your agents do.

It only works on orders ConnectWiz sent to your shop in the first place. An order that was already there is not touched: we would have to guess which of your orders is ours, and guessing wrong means editing a real customer's order.

A return is reported as a note, not as a refund. ConnectWiz tracks where the goods are; whether money goes back is a separate decision and it stays yours. The note lands on the order in WooCommerce for somebody to read and act on.

Notes we add are private. WooCommerce e-mails the customer about customer-facing notes, and you may have already told them yourself — one parcel should not produce two messages, one of which you did not know you were sending.

What is not synced​

Said plainly, so nothing surprises you:

  • Only orders are written back, and only the ones ConnectWiz created there, and only when you switch it on — as above. Orders that were already in your shop are never edited.
  • ConnectWiz never writes a stock number into your shop. Your stock stays yours to keep. What it does do, when order sending is on, is name the actual product on each line — so WooCommerce reduces its own stock in its own way as the order progresses, exactly as it would for an order placed on your site. For an item ConnectWiz has that your shop does not (a service, say), the line is plain text and nothing is counted.
  • Sizes and colours are imported, but only for the first hundred products that have any — see above. Nothing about them is ever written back to your shop except which one an order was for.
  • By default your shop does not notify us. ConnectWiz asks your store for the latest when it needs to, so an order status can be up to a minute behind. You can change that — see below.

Letting your shop tell us​

Optional, and off unless you set it up. Under Settings → Integrations → WooCommerce → Letting your shop tell us, create the webhook details and paste them into WooCommerce under Settings → Advanced → Webhooks.

It is worth doing for one thing in particular: the product list ConnectWiz holds is a copy, refreshed when you import. Between imports, a price you changed this morning or a product that has just sold out is still the old number here — and that number is what your assistant quotes and what a customer sees in the chat. With the webhook on, those arrive as they happen.

Order changes are handled differently, and deliberately: an order event makes ConnectWiz forget what it remembered rather than rewrite it, so the next person to look gets the whole truth from your shop instead of a patch applied to an old copy. That also means the two directions cannot argue: nothing arriving from your shop ever overrules something you did here.

The secret is shown once. If you lose it, replace it — and update WooCommerce straight away, because the old one stops working immediately.

The card shows when your shop last called. If it says your shop has never called, the URL or secret did not save correctly, or the webhook is not marked Active in WooCommerce.

What your team and your assistant know about a customer​

When a person is matched to your shop, ConnectWiz keeps what the shop says about them: how long they have been a customer, how many orders they have placed, and what they have spent — as your shop counts it, over their whole history, not just the recent orders shown on the card.

That distinction matters, and the card now names it. If your shop publishes lifetime figures, the total is labelled all time. If it does not, the total covers recent orders only — which for a long-standing customer is a much smaller number than what they have actually spent with you.

The assistant is told the same thing, with the date the shop last reported it, and is instructed not to present it as today's figure if a customer disagrees.

These numbers refresh when your shop tells us the customer changed — see Letting your shop tell us above. Without that, they are as of the day the person was first matched.

Proving who a customer is​

Your team always sees the match on the contact card. What the customer hears is stricter: their orders, balance and account details are shared in a chat only when the conversation has proven who is writing — a WhatsApp number, the email address a reply goes back to, a chat account that confirmed its email, or your shop's own sign-in. An email or phone typed into a chat proves nothing, because anyone can type anyone's address.

Three switches decide how a customer proves it. Find them in Settings → Security → Customer identity.

SwitchDefaultWhat it does
Store sign-in only joins a confirmed accountOnA customer arriving through your shop's sign-in is joined to an existing chat account only if that account confirmed the same email, or was created by the shop sign-in. Otherwise they get a new account, and an unconfirmed account holding their address loses it.
Widget accounts must confirm their emailOnNew chat accounts get a code by email and count as unconfirmed until they enter it. The widget shows a confirm screen with Resend code. The same switch is in Settings → Widget.
Confirm identity in the chat with a one-time codeOffOn the web widget, Messenger, Instagram and Telegram, the assistant can send a six-digit code and treat the conversation as confirmed once the customer types it back.
Turning off the store sign-in protection

Anyone can register a chat account with one of your customers' email addresses and wait. With the protection off, when that customer later signs in through your shop they are joined to that account — and whoever chose its password sees their orders and conversations. The panel asks before turning it off and keeps the warning on screen while it stays off.

How the one-time code works​

  • The code goes only to an email or phone already on the customer's record with your shop or your CRM — never to an address typed in the chat. Someone who typed a stranger's email can, at most, make a code land in that stranger's inbox.
  • The assistant never sees the code. It asks for one, tells the customer where it went in masked form (for example a***@g***.com), and the system reads the code from the customer's own reply.
  • A code is valid for 10 minutes and works once. Five wrong tries cancel it.
  • You choose how many codes one customer can be sent per hour (3 by default), how long the confirmation lasts (24 hours by default), and whether codes go by email, SMS or both (email by default).
  • An SMS code counts toward your SMS usage and quota on its own line (identity codes in chat under Usage). It is a transactional message: the code and your business name, nothing else.
  • On the web widget, a confirmed code covers the address it went to: only records under that email or phone are shared. On Messenger, Instagram and Telegram, which already prove the sender, the code adds the address so shop records linked by email can be shared too.
  • Turning the switch off ends every confirmation made with it, straight away.

When something did not get through​

If ConnectWiz cannot settle something with your shop by itself, it says so on the integration screen rather than picking an answer. Two things end up there:

  • Your shop did not receive this. We tried several times and could not reach it. The order is fine here; your shop simply does not have it yet. Fix whatever was wrong — the site was down, the key was revoked — and press Try again.
  • Your shop and ConnectWiz disagree. For example your shop says an order was cancelled while ConnectWiz has it as shipped. Nothing is changed on either side. Deciding which is right is a judgement about a real parcel and a real customer, and letting whichever system spoke most recently win is the worst way to make it.

Nothing on that list disappears on its own. It stays until you dismiss it, so a problem cannot resolve itself out of sight while the two systems remain out of step.

If something looks wrong​

The connection test fails. Check the store address is the one people type in a browser, and that the key was created with Read permission.

A customer is not matched. ConnectWiz matches on e-mail and phone. If the person writes from a number your shop does not have, there is nothing to match on — an agent can still add the address to their contact, and the match is attempted again the moment it is saved.

Prices came in blank. ConnectWiz reads your shop's currency from WooCommerce → Settings → General. If the key cannot read that page, products still arrive but without prices, and you can type them in here. A price with no currency is not stored at all, because a number nobody can name a currency for is one somebody would quote wrongly.

An order is missing. Only the customer's most recent orders are read for a conversation. Ask the assistant for a specific order number, or open the shop's own admin for the full history.