Before you start
Complete the steps in Prerequisites before proceeding.Install the plugin
Install the Voyado extension
Navigate to Extensions > Store, search for “Voyado”, select the extension, and click Add extension, then Install extension.
Create the hasAccount contact attribute
ThehasAccount attribute in Engage determines whether a contact is a registered customer or a guest in Shopware. Create it before you begin syncing contacts.
Map sales channels to Engage stores
Mapping Shopware sales channels to Engage stores lets you track where customers register and ship orders. This data is available as a filter for automations and segmentation.Learn more about Engage stores
Select a sales channel
Under Store and Country Mapping, select the sales channel you want to configure.
Set a fallback Engage store
Choose the Engage store to use as a fallback. Any country without a specific mapping will default to this store.
Configure cookie consent for web activity tracking
When the plugin is installed, it automatically adds a Voyado Analytics cookie entry under the Marketing consent group in Shopware’s default cookie banner.Triggering consent manually from a third-party CMP
Available in app version 2.1.0 and higher.
voyadoConsentGranted browser event after the visitor accepts marketing or analytics cookies.
When this event fires, voyado.js sets the voyado-analytics=1 cookie and initialises tracking without requiring a page reload.
Trigger via JavaScript
Trigger via JavaScript
Call this after the visitor has accepted the relevant consent category:
Trigger via Google Tag Manager
Trigger via Google Tag Manager
- Create a new Custom HTML tag in GTM.
- Add the following code:
- Set the trigger to fire when the visitor grants the relevant consent. If you use a data layer event, push it from your CMP:
voyado_consent_granted as the GTM trigger condition for the Custom HTML tag.Verify the setup
With the plugin installed and the Voyado team confirmation received, run through the following checks in a test environment.Confirm the plugin is active
In the Shopware admin panel, navigate to Extensions > My Extensions and confirm the Voyado plugin status is Active.
Verify global tracking data
Open any storefront page and inspect the page source. Locate the hidden element with the ID
voyado-tracking-data. Confirm it carries the correct data-shop-id, data-sales-channel-id, and data-language attribute values for your store.If it is missing, the plugin template overrides are not loading correctly.Verify consent event wiring
Using browser developer tools, confirm that accepting cookies dispatches a
voyadoConsentGranted event and sets the voyado-analytics cookie to 1. Confirm that revoking consent dispatches voyadoConsentRevoked and removes the cookie.If you are using a third-party CMP, this wiring must be configured in the CMP — not in the Voyado plugin.Verify contact identification
Log in to the storefront with a test customer account and navigate to the account page. Confirm that a
voyado-cid value is written to the browser’s local storage.Verify soft identification (optional)
If your Engage email campaigns use personalised links with the
eclub parameter, open a test link in a browser where no customer is logged in. Confirm that voyado-cid is written to local storage after the page loads.Test product tracking
With consent active and a test contact identified, navigate to a product detail page. In the browser’s network panel, confirm a POST request is sent to
/api/v2/shopware/product-tracking. The request should include the product ID, product number, and session ID.Test cart tracking
Add a product to the cart. Confirm a POST request is sent to
/api/v2/shopware/cart-tracking approximately 2 seconds after the button click. View the cart page and the checkout confirm page — a tracking call should fire on each. Complete a test order and confirm a final cart-tracking call with an empty product array is sent on the order confirmation page.Troubleshooting cart tracking
If cart tracking is not working, the Voyado Twig blocks may not be present in your theme. This can happen when using a custom theme or after modifying theme files. Option 1 — Reinstall the app. This reapplies the template customisations automatically. Option 2 — Add the Twig block manually. Add the following block to your theme’scart-widget.html.twig: