ENPL Log in Start free
// Integrations / Shoper

Visitant on Shoper

Shoper has two kinds of shop templates, and the code goes in a different place in each. This guide covers both, plus order value on the confirmation page. No cookies and no consent banner on either.

Time: 10 minCode: 1 lineCookies: 0

What you need

  • Access to your Shoper admin panel with permission to change integrations and the template.
  • A free Visitant account with your shop domain added (Free: 5,000 events a month, 2 sites).
  • Your shop domain, for example yoursite.com - without https:// and without www.
  • For a Storefront template: the Shoper Premium plan (custom modules) or a Google Tag Manager account.

Setup in 5 steps

  1. 01 Check which template your shop uses

    Shoper has the newer Storefront templates (edited in Shoper Visual Editor) and the older RWD templates. It matters, because Shoper states that Storefront templates ignore the code entered in Integracje własne (own integrations), which is where the old templates take extra code from. If you edit the look of your shop in Shoper Visual Editor, you are on Storefront: skip step 2 and go to step 3. Otherwise do step 2 and skip step 3.

    We checked these menu names against Shoper's help pages in September 2026 but have not tested them in a live Shoper shop. Shoper renames menus from time to time, so yours may differ slightly.

  2. 02 RWD template: paste the line into the page header

    In the admin panel go to Aplikacje i integracje - Własne integracje (in older panels: Dodatki i integracje - Integracje własne). In the Nagłówek strony (page header) field paste the line below under any code that is already there - do not delete other entries, they belong to your other integrations. Replace yoursite.com with your domain and click ZAPISZ (save).

    <script defer data-domain="yoursite.com" src="https://annuora.com/v.js"></script>

    Code in this field appears on every page of the shop, whichever RWD template is active.

  3. 03 Storefront template: a custom module or Google Tag Manager

    Storefront takes extra code only from modules. On Shoper Premium go to Wygląd i treści - Wygląd sklepu - Edycja szablonu graficznego, click Edytuj układ i styl szablonu, then Dodaj - + Dodaj moduł własny. Set Typ modułu to Moduł integracji and availability to Dowolna strona (every page), paste the line from step 2 into the Twig field and click ZAPISZ. Then switch the module on in Shoper Visual Editor, on the Integracje tab.

    Not on Premium? Shoper says custom modules need that plan. Storefront has a built-in Google Tag Manager module on the same Integracje tab (you only enter the container ID), and Visitant goes into GTM as one custom HTML tag - see the Google Tag Manager guide.

  4. 04 Record order value (RWD templates)

    In the same Własne integracje screen there is a field called Potwierdzenie złożenia zamówienia (order confirmation). Code in it runs only on the page the customer sees after placing an order, and Shoper fills in variables there: {order_id} is the order number and {float_sum} the order value (Shoper also documents {float_sum_noship}, the value without shipping). Paste the code below and change PLN if your shop sells in another currency. Then in the Visitant dashboard add a goal of type Event named Purchase in Settings - Goals.

    <script>
    window.visitant = window.visitant || function () { (window.visitant.q = window.visitant.q || []).push(arguments); };
    visitant("Purchase", { revenue: { amount: {float_sum}, currency: "PLN" }, props: { order: "{order_id}" } });
    </script>

    We built this from the variables in Shoper's own help pages; we could not find an equivalent order confirmation field for Storefront. There, add the address of your thank-you page as a Page goal instead - you get the number of orders, not their value.

  5. 05 Save, leave consent alone and check

    Shoper's cookie tool asks you to wrap scripts in its consent functions (such as window.customerPrivacy.onAnalyticsConsentGranted) so that their cookies land in the right category. Do not wrap the Visitant line: it sets no cookies and stores nothing in the browser, so there is nothing to categorise - and wrapped, it would miss every visitor who declines cookies. Open your shop in a private window and check the dashboard.

Is it working? Check in 60 seconds

Keep the Visitant dashboard in one tab and your shop in a private window in another.

  • Open a product page: the current visitors counter at the top of the dashboard shows 1 within a few seconds.
  • View the page source (Ctrl+U) and search for v.js: the line appears exactly once, with your domain in data-domain.
  • RWD with the order code: after a test order, Goals and events shows Purchase with the order value in the Revenue column.
  • Open your shop from a ChatGPT or Perplexity answer that links to it: the visit shows up under AI with the assistant's name.

Common problems

Nothing shows up on a Storefront shopThe line was probably pasted into Własne integracje, which Storefront ignores. Use a custom integration module or Google Tag Manager (step 3).
The line was saved but disappears from the pageShoper can strip HTML it considers unsafe. For code in modules on the old templates its help pages point to the Wyłącz czyszczenie kodu HTML option in Ustawienia - Zaawansowane - Bezpieczeństwo; switch it on only if you know what else it affects.
An order was counted twiceShoper's own help warns that the order confirmation page can be reloaded, which is why its Google Ads code uses the order number. If a customer reloads that page, Visitant may record the purchase again; the order number in the event lets you spot it.
The AI crawlers panel stays emptyExpected on Shoper: AI robots never run JavaScript, and Shoper hosts your shop, so there is no place for our server snippet. See the questions below.

Questions

Can Visitant count AI robots like GPTBot on Shoper?

No, and that is a Shoper limitation, not a setting you missed: counting robots needs a small piece of code on the server or in Cloudflare in front of the shop, and Shoper gives no access to either. What does work is the other half: visits from 21 AI assistants, including ChatGPT, Perplexity and Gemini, are recognised by the page script and shown by assistant.

Do I need to add Visitant to the cookie banner?

No. Visitant sets no cookies, stores nothing in the browser and never stores IP addresses, and data is hosted in the EU. That is also why it should not be wrapped in Shoper's consent functions (step 5).

Will it slow my shop down?

The script is under 2 KB gzipped and loads with defer, so it never blocks the page. In our opinion that is not measurable next to a typical shop theme.

Create a free account - the dashboard shows these steps with your own domain and key filled in.

Start free →