BigCommerce
Connect a BigCommerce catalog to ShopAssist and add the widget with one script.
BigCommerce has no ShopAssist app. The integration is backend only. ShopAssist reads your catalog straight from the BigCommerce API, and your storefront runs the same script tag a custom storefront runs.
There are two steps. First you give ShopAssist read access to your catalog. Then you add one script to your theme.
Step 1: Create a read-only API account
- In your BigCommerce control panel, open Settings and then API accounts.
- Click Create API account and pick the V2/V3 API token type.
- Name the account
ShopAssist. - Set these scopes and leave every other scope at None:
| Scope | Level |
|---|---|
| Products | Read-only |
| Orders | Read-only |
| Information & settings | Read-only |
Orders are only needed for order attribution. If you do not want order reporting, leave Orders at None.
Click Save. BigCommerce downloads a text file once and never shows the token again. Keep that file.
The file holds the access token and the API path. The API path looks
like https://api.bigcommerce.com/stores/abc123def/v3/. The part after
/stores/ is your store hash, which is the short id BigCommerce uses for
your store.
Send the store hash, the access token, and your public storefront domain to ShopAssist support. ShopAssist registers the store and imports the catalog. Your store stays inactive until that import finishes.
The access token is a credential. Send it through a channel you trust, and delete the downloaded file afterwards.
Step 2: Add the widget script
- In your control panel, open Storefront and then Script Manager.
- Click Create a script.
- Set Location to
Footerand Pages toAll pages. - Set Script type to
Scriptand paste the block below.
<script>
window.ShopAssistConfig = {
shopDomain: "your-shop.com",
platform: "custom",
apiUrl: "https://api.getshopassist.com",
custom: {
currency: "USD",
language: "en",
country: "US",
productUrlPattern: "/{handle}/",
productPagePattern: "^/([^/?#]+)/$",
cartUrl: "/cart.php",
checkoutUrl: "/checkout",
},
};
</script>
<script src="https://widget.getshopassist.com/shop-assist.js" defer></script>Use the same shopDomain value you sent to ShopAssist. Order matters inside the
block. The widget reads window.ShopAssistConfig as it loads and never looks
again, so the configuration must come first.
platform stays "custom". There is no bigcommerce value, because the
BigCommerce work happens on the ShopAssist backend and the storefront side needs
nothing special.
Product URLs
The patterns above match the BigCommerce default, which is SEO Optimized
(Short). That setting puts every product at the root of the domain, such as
https://your-shop.com/blue-mug/.
Check Settings and then URL Structure in your control panel. If your products use a different structure, change both patterns to match:
| URL structure | productUrlPattern | productPagePattern |
|---|---|---|
/blue-mug/ | /{handle}/ | ^/([^/?#]+)/$ |
/products/blue-mug/ | /products/{handle}/ | ^/products/([^/?#]+)/$ |
/mugs/blue-mug/ | /{handle}/ | ^/[^/]+/([^/?#]+)/$ |
productPagePattern is a regular expression with exactly one capture group,
and that group must capture the product handle.
On the default structure, category pages have the same shape as product pages. The widget then treats a category page as a product page. If your store relies on category pages, set a product URL prefix in URL Structure and use the second row of the table.
Check the install
Load any storefront page. A floating chat button appears in a corner, and the
console shows ShopAssist v… initialized.
If the console is silent, window.ShopAssistConfig was not defined when the
widget script ran. Seeing window.ShopAssist in the console is not enough,
because that only means the bundle loaded.
You can also ask the API directly:
curl -H "X-Shop-Domain: your-shop.com" \
https://api.getshopassist.com/api/widget/settingsThe response includes "pluginEnabled": true when the shop is live. Until
ShopAssist activates your store, the widget loads and then hides itself. That is
the expected result, not a failure.
What you do not get
This integration is deliberately smaller than the Shopify and WooCommerce ones.
- No add to cart from the chat. Product cards link to the product page, and the shopper buys through your normal checkout. You can add it yourself with a cart bridge.
- No question pills on product pages. Those need theme markup, which the Script Manager cannot place.
- No cart attribution. ShopAssist matches orders to conversations from the order feed alone, so per-order attribution is weaker than on Shopify.
Next steps
- Configuration reference for every field.
- Embed the chat in the page instead of a floating button.
Last updated on