Shopware 6 Integration
The official Shopware 6 plugin connects your storefront to usertrax: tracker, ecommerce funnel, optional feedback widget, and identity on the order confirmation page — without cookies and without a consent banner for usertrax itself.
Compatible with Shopware 6.7.
Requirements
Section titled “Requirements”- Shopware 6.7 (
shopware/core,shopware/storefront) - A domain + API key from the usertrax dashboard (quick start)
- Feedback widget: Pro plan or higher, and Feedback enabled for the domain (feedback)
Installation
Section titled “Installation”Install the plugin (Composer recommended)
Terminal-Fenster composer require splintnet/usertrax-shopwarebin/console plugin:refreshbin/console plugin:install Usertrax --activatebin/build-storefront.shbin/console cache:clearAlternatively: copy the repository into
custom/plugins/Usertraxand run the same console commands.Set your API key
Open Admin → Extensions → usertrax → Configuration and enter the domain API key from the dashboard.
Verify the storefront
Open a product page and check the browser console / Network tab that
cvs.jsloads and events are sent.
Configuration
Section titled “Configuration”Namespace: Usertrax.config.*
| Key | Description | Default |
|---|---|---|
active | Load tracker and fire ecommerce events | true |
apiKey | Domain data-key from the dashboard | — |
feedbackWidget | Load feedback.js | true |
debugMode | Sets usertraxConfig.debugMode (console logging) | false |
Tracking and feedback can be toggled independently; both share the same API key.
Ecommerce events
Section titled “Ecommerce events”Events use the GA4 ecommerce shape documented in Conversion Tracking. The plugin also sends compatibility fields (total, id) expected by the current tracker contract.
| Event | When it fires |
|---|---|
view_item | Product detail page |
add_to_cart | Add-to-cart form submit |
remove_from_cart | Line-item remove |
view_cart | Cart page + offcanvas cart |
begin_checkout | Checkout CTA (cart / offcanvas) |
add_shipping_info | Confirm page (shipping methods present) |
add_payment_info | Confirm page |
purchase | Order finish / thank-you page |
item_id prefers the product number (SKU) so Meta/Google catalog matching works. See Meta Ads export and Conversion Tracking.
On the finish page the plugin also calls usertrax.identify() and sends user_data so later conversions and the feedback widget share the same person context.
Example purchase
Section titled “Example purchase”usertrax.push({ event: "purchase", event_id: "purchase_10001", id: "purchase_10001", currency: "EUR", value: 99.99, total: 99.99, transaction_id: "10001", tax: 15.96, shipping: 5.9, items: [ { item_id: "SKU-123", item_name: "Product name", item_brand: "Brand", item_category: "Category", price: 47.05, quantity: 2, index: 0, }, ], user_data: { email: "customer@example.com", customer_id: "…", first_name: "…", last_name: "…", },});How scripts are loaded
Section titled “How scripts are loaded”When enabled, the plugin extends Shopware’s analytics head template and injects:
https://usertrax.io/cvs.js— conversion tracker (quick start)https://usertrax.io/feedback.js— feedback widget (feedback)
Both use the same data-key. Page views and attribution are handled by the tracker; this plugin focuses on ecommerce conversions.
For first-party / proxy setups, see the proxy guides.
Conversion export & ads
Section titled “Conversion export & ads”With usertraxConfig.ga4 / tagManager / facebook, the tracker can forward events to GA4, GTM, and Meta. Offline import into ad platforms:
Troubleshooting
Section titled “Troubleshooting”- No events: Confirm the plugin is active and the API key is correct; rebuild the storefront after plugin updates (
bin/build-storefront.sh). - Feedback missing: Enable Pro (or higher) and Feedback for the domain in the dashboard; check
feedbackWidgetin the plugin config. - Wrong SKUs / catalog matching: Check the product number in Shopware — the plugin uses it as
item_id.
Source and releases: splintnet/usertrax-shopware.