ShopAssist
Partners

Onboard a WooCommerce client

The full setup, from an empty portal to a live assistant on your client's storefront.

You run all of it yourself, start to finish. Nothing in this guide waits on ShopAssist.

WhoDoes what
YouAll of it. Add the client, connect the plugin, build and test the assistant, hand the merchant their login, take the shop live.
The merchantNothing, if you hold their WordPress admin. If you do not, send them steps 3 and 4.
ShopAssistNothing in the normal path. Contact us only if something is wrong.

Before your first client

ShopAssist creates your agency and makes one person an owner. You cannot create an agency yourself. That owner signs in with a magic link and lands in the partner portal.

Invite the rest of your team from the Team page. An owner can add clients and start setup runs. A member can review and edit everything else. Invitation links expire after 48 hours.

The portal Team page, with a field to invite a colleague by email, a role selector, and one existing owner listed.

One person belongs to one agency. An address that already sits in another agency must be released there first.

1. Make sure that the store qualifies

  • WordPress 6.0 or newer, PHP 7.4 or newer.
  • WooCommerce installed and active.
  • The store is public over HTTPS.
  • No security plugin blocks /wp-json/wc/v3/products.

That last one matters more than it looks. ShopAssist reads exactly that URL to validate the store credentials. If it is blocked, step 4 fails with a 422 error and nothing after it works.

2. Add the client in the portal

Owners only.

  1. Open Clients and select Add client.
  2. Enter the shop domain, for example store.com.
  3. Enter a name, or leave it empty to use the domain.
  4. Set the platform to WooCommerce and select Add client.

The Add client form in the partner portal, with fields for shop domain, an optional name, and a platform selector set to WooCommerce.

Add as many clients as you need. The one refusal is a domain another agency already implements. The name becomes the shop's internal slug, so pick it once and keep it.

3. Install the plugin

Do this in the client's WordPress admin.

  1. Download shopassist.zip from the link ShopAssist gave you.
  2. Open Plugins → Add New → Upload Plugin.
  3. Choose the zip, select Install Now, then Activate.
  4. Open WooCommerce → ShopAssist.

Later plugin updates arrive on their own, on the Plugins screen, so you never upload the zip twice.

4. Connect the store

The panel at the top reads Connect your store. Use the first button. The plugin creates a read-only WooCommerce REST key by itself and sends it to ShopAssist. Nobody copies a key by hand.

The ShopAssist settings panel in WordPress reading Connect your store, showing the detected store domain and two buttons: Connect to ShopAssist, and Verify manual connection.

  1. Select Connect to ShopAssist.
  2. Sign in with your own agency address when the page asks.
  3. Land back on WooCommerce → ShopAssist.

The ShopAssist dashboard sign-in card headed Connect your store, naming the store being linked, with an email field and a Continue with email button.

Signing in with an agency address claims the store for your agency. It creates no merchant login and gives you no merchant session. You reach the client through the portal, the same as every other client.

Ignore the second button, Verify manual connection. It pushes no key and only polls for a store ShopAssist has already set up by hand. If the sign-in page says the store belongs to another agency, stop: only ShopAssist can move a store.

5. Confirm the connection

The plugin panel now reads Pending activation. That is correct here, and it is not something to fix.

The WordPress panel reading Pending activation, waiting for ShopAssist to enable the store, with Check again and Cancel buttons.

The panel re-checks itself every time the settings page loads, so it flips on its own once the shop is activated.

Back in the portal, the client badge moves from created to Connected.

The portal client card showing the Connected badge, the store domain, conversation counts and a Dashboard access link.

If the badge stays on created, the credentials never arrived. Repeat step 4 and read the error on the plugin panel. Connected means the credentials arrived. It does not mean the widget is serving.

6. Generate the assistant

Owners only.

  1. Open the client card and select Assistant setup.
  2. Select Generate assistant.
  3. Watch the Progress tab until the run finishes.

The Assistant setup page with a not live yet badge, Generate assistant and Regenerate prompt buttons, and three tabs: Progress, Knowledge and Prompt.

Do this after step 5, never before. The run reads the product catalog using the store credentials, so a run started earlier produces a thin, half-empty result.

A run takes a few minutes and the progress is stored, so you can close the tab and come back. One run at a time per shop, and ten runs per day across your agency.

7. Correct what the assistant knows

  1. Open the Knowledge tab.
  2. Read the shipping, returns and sizing sections against the merchant's real policy.
  3. Correct anything wrong and select Save.
  4. Select Regenerate prompt at the top of the page.

Saving alone changes nothing. The badge reads prompt out of date until you regenerate. Regenerating reuses the stored text and does not read the shop again, so it is quick.

Most wrong answers start here rather than in the prompt. Fix the fact first, and only then reach for step 8.

8. Adjust how the assistant behaves

  1. Open the Prompt tab.
  2. Edit the text, or ask the side-panel assistant to make the change.
  3. Save.

Every save is a draft, and the badge unpublished draft confirms it landed. Drafts change nothing for shoppers until you publish in step 12, so edit freely.

9. Set the widget

Open dashboard is greyed out while the shop is pending, because a pending shop has no merchant dashboard yet. Select Enable test mode on the client card to unlock it. Test mode serves test traffic only, so shoppers still see nothing.

  1. Select Open dashboard on the client card.
  2. Open the Testing Tool page.
  3. Set the color, button position, greeting and tooltip.
  4. Write three suggested questions, taken from the merchant's real inbox.
  5. Set the language, and limit the pages if the widget belongs on only some.
  6. Save.

Your dashboard session lasts one hour. Open it again when it runs out. Back in WordPress, make sure that Enable Widget is on.

10. Give the merchant their dashboard login

  1. Open Clients and select Dashboard access on the client card.
  2. Enter the merchant's email address and select Add.

The Dashboard access panel on a client card, listing two authorized email addresses with remove buttons, and a field to add another.

Connecting the store does not create a merchant login, so this is a deliberate step. They sign in with a link sent to that address, once the shop is active. Add as many addresses as the merchant needs, and remove one at any time.

11. Test the assistant

  1. Open the Testing Tool page and turn on test mode.
  2. Ask the ten questions this merchant's customers ask most.
  3. Make sure that it answers in the shop's language.
  4. Make sure that the products it shows are real and in stock.
  5. Make sure that shipping and returns answers match the real policy.
  6. Ask one question the shop cannot answer, and make sure that it refuses.

Test mode records nothing as real traffic and changes no analytics. Fix a wrong fact in Knowledge and regenerate. Fix tone or behavior in Prompt.

12. Publish and go live

Owners only. These are the two actions that reach real shoppers.

  1. On the Prompt tab, select Publish. The draft becomes what customers get.
  2. On the client card, select Go live and confirm.

Go live starts the widget answering real shoppers on the storefront. Publish the prompt first, or the shop goes live on whatever was published before.

13. Confirm the result

The portal Clients page with summary tiles and a client card showing the green Live badge and an enabled Open dashboard button.

The WordPress panel reading Connected with a green check, showing the store domain and account number, and a note that deactivating the plugin disconnects it.

Open the storefront in a private window and make sure that the floating chat button appears. Open a product page and make sure that the question pills appear.

Reading the plugin panel

The heading on that panel always follows the shop's real status on our side. Read it before you debug anything else.

Panel headingStatusWhat it means
Connect your storeno shop yetStep 4 has not run.
Pending activationpendingWaiting for ShopAssist to activate.
Test modetestingAnswers test traffic only. Shoppers see nothing.
ConnectedactiveLive for shoppers.
SuspendedsuspendedShopAssist switched the shop off. Contact us.
ArchivedarchivedAsk ShopAssist to reopen the shop.
DisconnecteduninstalledThe plugin was deactivated. Activate it again.

Deactivating the plugin is the disconnect. There is no separate disconnect button on a connected store.

When something goes wrong

What you seeWhyWhat to do
"ShopAssist requires WooCommerce"WooCommerce is not activeActivate WooCommerce first.
"ShopAssist rejected the connection", or a 422We cannot read /wp-json/wc/v3/productsMake the store public over HTTPS and unblock the WooCommerce REST API.
"Could not reach ShopAssist. Try again."WordPress cannot reach our APIAsk the host to allow outbound HTTPS, then retry.
"Connection could not be verified. Try again."The one-time link expired after 15 minutesStart step 4 again from WordPress.
"This store is already set up by another agency"Another agency holds the shopContact ShopAssist. You cannot move it yourself.
Badge stuck on createdThe credentials never arrivedRepeat step 4 and read the plugin panel error.
Panel stuck on Pending activationThe shop is not live yetSelect Go live on the client card.
Connected, but no widget on the storefrontEnable Widget is off, or the dashboard disabled itTurn it on in the plugin, then in the dashboard.

Screenshots on this page come from a live demo store. Your client's screens carry their own name and domain.

Last updated on

On this page