Skip to content
ShopAssist Docs
Install

Install on PrestaShop

Upload the ShopAssist module ZIP, connect one shop, and provide stock per store through the location-stock hook or a feed.

Applies to: PrestaShopView as Markdown

Requirements

  • PrestaShop 1.7.8: >=1.7.8.0 <1.8 (PHP 7.1-7.4)
  • PrestaShop 8: >=8.0 <9 (PHP 7.2-8.1)
  • PrestaShop 9: >=9.0 <10 (PHP 8.1-8.5)
  • Latest plugin version: 1.0.0
  • SSL enabled and Enable SSL on all pages switched on (PS_SSL_ENABLED and PS_SSL_ENABLED_EVERYWHERE).
  • Friendly URLs recommended (the module warns when they are off).
  • A back-office employee allowed to install modules.

Install

Typical setup: About 10 minutes

  1. 1.Download the module

    Download the module ZIP from your ShopAssist dashboard. The download is behind sign-in so its version matches your account.

  2. 2.Upload and install it

    In the PrestaShop back office open Modules → Module Manager → Upload a module, choose the ZIP and install it. There is no Composer step.

  3. 3.Connect your shop

    Open the module configuration and click Connect, or paste a pairing code from the dashboard. With multistore, select a single shop context first, never "All shops".

Connect

In the module configuration, click Connect. You are sent to shopassist.coec.dk/connect/prestashop to sign in, confirm the shop address and choose or create the store, and then back to your shop through a relay page on the storefront (the back office may run on another host). The module finishes the connection with a one-time code and a proof key.

You can also paste a pairing code from the dashboard (Add store → PrestaShop → Generate pairing code).

Multistore: connect one shop at a time

Select a single shop in the shop context selector before connecting. The module refuses to connect in "All shops" or group context, because each PrestaShop shop is its own ShopAssist store.

Verify

  • The module page shows "Connected" and the sync progress.
  • The launcher appears on your storefront, but never on the order and order-confirmation pages or the maintenance page.
Send a test message

Signed-in customers

Signed-in customers are recognised automatically through the module's identity front controller, using PrestaShop's static token. Orders are only shown for the connected shop, even when a shop group shares customers or orders. See PrestaShop identity.

Stock per location

PrestaShop stores (Shop Parameters → Contact → Stores) become ShopAssist locations with their addresses and opening hours. Stock per store needs one of two sources, because PrestaShop keeps one stock quantity per product:

1. The actionShopAssistLocationStock hook. A module that knows stock per store (for example your POS or warehouse integration) appends entries for each product combination:

public function hookActionShopAssistLocationStock(array $params): void
{
    // $params: id_product, id_product_attribute, id_shop, and 'stock' (by reference)
    foreach ($this->stockPerStore((int) $params['id_product'], (int) $params['id_product_attribute']) as $idStore => $qty) {
        $params['stock'][] = [
            'location_id' => (int) $idStore,  // the id_store of an active store of this shop
            'quantity' => $qty,               // int, or null when unknown
            // optional: 'status' => 'in_stock'|'low_stock'|'out_of_stock'|'backorder'|'unknown',
            // optional: 'as_of' => gmdate('Y-m-d\TH:i:s\Z'),
        ];
    }
}

Entries whose location_id is not an active store of the connected shop are ignored. Register the hook in your module's install() with $this->registerHook('actionShopAssistLocationStock').

2. A location stock feed. If your stock per store lives elsewhere, send it with the Catalog Push API (locations:batch and inventory:batch) or a local inventory feed. Use your PrestaShop id_store values as location_external_id (location_ref), so the feed's locations match the stores the module already sent.

Updating

Upload the new ZIP in Module Manager (the module keeps its connection), or use the update notification in the back office. The dashboard tells you when the module is more than two minor versions behind.

Uninstall and data removal

  • Disable pauses the store: the widget disappears and data is kept until you enable the module again.
  • Uninstall disconnects every connected shop, removes the module's configuration and tables, and keeps Customer Service threads and order messages it created. ShopAssist deletes the store's data 30 days later unless you reconnect.

Troubleshooting

Last updated on

On this page