Advertising Platforms & Conversion Tracking
Here’s how to track which ads on Meta, TikTok, Microsoft Advertising, Pinterest, and Criteo lead to orders. You simply enter the platform’s ID in the backend. The store integrates the code itself, reports page views, shopping cart activity, and purchases, and obtains consent from your visitors in the process.
At a Glance
- Location: Meta and TikTok have their own groups under Settings → Interfaces → SEO/SEA. Microsoft Advertising, Pinterest, and Criteo are listed there under “Additional Services.”
- ID Only: Enter the pixel or tag ID—never the platform’s full code.
- Consent: Each platform gets its own category in the cookie banner. Without consent, the store won’t load anything for them and won’t send anything from the server either.
- From the server: Meta (Conversions API) and TikTok (Events API) also receive events from the server, using the same event ID as in the browser. Microsoft, Pinterest, and Criteo run only in the browser.
- Meta Conversions API: In older versions, server events did not reach Meta; only the pixel was active. Your store needs this version for the Conversions API. from 4.9.142
- Testing: Open a private window without an ad blocker, consent in the cookie banner, open another page, then test using the platform’s tool.
In this guide
Not covered in this guide: Google Analytics, Google Ads, and Tag Manager ( Google Analytics, Ads & Tag Manager Guide), the product feed for Google ( Google Merchant Center & Product Feed Guide), and affiliate networks such as Adtraction ( Affiliate Program Guide).
Which platforms the store connects to
The store has dedicated fields for these platforms. As soon as an identifier is entered, the platform appears as its own category in the cookie banner.
| Platform | Setting | Path | Category in the cookie banner |
|---|---|---|---|
| Meta (Facebook, Instagram) | Settings → Interfaces → SEO/SEA → Facebook (Meta) | Browser (Pixel) and Server (Conversions API) | “Facebook” |
| TikTok | Settings → Interfaces → SEO/SEA → TikTok | Server (Events API) and Browser (Pixel) | “TikTok” |
| Microsoft Advertising | Settings → Interfaces → SEO/SEA → Other Services → Bing Ads UET | Browser (UET tag) | “Bing Ads” |
| Settings → Interfaces → SEO/SEA → Additional Services → Pinterest Tracking ID | Browser (Pinterest tag) | “Pinterest” | |
| Criteo | Settings → Interfaces → SEO/SEA → Additional Services → Criteo Account ID | Browser | “Criteo” |
Older stores
The dedicated “Facebook (Meta)” and “TikTok” groups have been available since XONIC 4.8.5. In older versions, all fields are located under Settings → SEO / SEA → Tracking. You can view your version under Tools → xoUpdate in the top-right corner after “Shop:”.
Other platforms
For platforms without their own field, use Google Tag Manager. However, the cookie banner will not prompt for a separate category for this platform: You’ll need to integrate the consent form into the container itself; see the Google Analytics, Ads & Tag Manager guide.
Meta (Facebook, Instagram): Pixel and Conversions API
The store reports events to Meta in two ways: via the pixel in the browser and, with an access key, additionally from the server via the Conversions API. Both reports carry the same identifier for each event. Meta therefore combines them and does not count anything twice.
- In Meta Events Manager, copy the pixel ID for your data set. It consists only of numbers.
- Enter it under Settings → Interfaces → SEO/SEA → Facebook (Meta) → Facebook (Meta) Pixel Tracking ID (incl. Events). From now on, the pixel will load, and the cookie banner will display the “Facebook” category.
- In the Events Manager, generate an access key for the Conversions API in the data set’s settings. Enter it in “Facebook (Meta) Conversion API Access Key.” If the field remains empty, only the pixel will run.
- Review the explanatory text for the “Facebook” category in the cookie banner; see Consent.
- Test it with a test purchase; see “Testing.”
For the pixel and Conversions API, lines 3 and 4 are sufficient; you only need the App ID and App Secret for sharing news articles. Click to enlarge.
Pixel in the Browser
- The store loads the pixel as a small image from
facebook.com/tr: once on every page for the page view (PageView) and, where the page has one, once for its event. - It does not load the meta script
fbevents.js. Therefore, the pixel does not set a meta cookie. - For logged-in customers, it appends customer data as an SHA-256 hash value, thereby pseudonymizing it; see Privacy Policy.
Conversions API from the server
- Every time a page is loaded, the store sends the same events directly to Meta, including the IP address, browser identifier, and—for logged-in customers—hashed customer data.
- If a visitor arrives via a link with a click ID from Meta—such as from an ad—the store passes this ID along on the first page loaded.
- In older versions, no events were sent to Meta via the Conversions API; only the pixel was active there.from 4.9.142
You only need the “Facebook (Meta) App ID” and “Facebook (Meta) App Secret” in the same group to post news articles on your Facebook page; see Sharing. They are not required for the pixel or the Conversions API.
Microsoft Advertising (UET Tag)
For Microsoft Advertising, the store integrates the UET tag. It reports every page view and, on the order confirmation, the purchase along with the revenue.
- Create a UET tag in Microsoft Advertising and copy its tag ID. This is a number; you do not need the code snippet from Microsoft.
- Enter the tag ID under Settings → Interfaces → SEO/SEA → Additional Services → Bing Ads UET. The cookie banner will then display the “Bing Ads” category.
- In Microsoft Advertising, create a conversion goal for the “
purchase” event and use the revenue from that event. The store reports the purchase without any additional code.
The tag ID for Microsoft Advertising belongs in “Bing Ads UET,” not in “Microsoft Clarity: TrackingID.” Click to enlarge.
What the store reports
- A page view on every page.
- On the order confirmation, the “
purchase” event with the net merchandise value (excluding shipping and tax) as revenue, the currency, and the items with their SKUs, quantities, and gross prices.
Microsoft Clarity is a separate service
In the same group is “Microsoft Clarity: TrackingID.” Clarity tracks visitor behavior and has nothing to do with Microsoft Advertising’s conversion tracking. Clarity has its own category, “Microsoft Clarity,” in the cookie banner. Do not confuse the two IDs.
The store does not send consent signals to Microsoft. The UET tag only loads once the visitor has consented to the “Bing Ads” category. Microsoft therefore only sees the tag for visitors who have given their consent.
TikTok: Pixel and Events API
TikTok receives events from the server via the Events API and in the browser via the TikTok pixel. Both use the same login credentials and the same identifier per event; TikTok aggregates the reports.
The settings are located under Settings → Interfaces → SEO/SEA → TikTok:
| Setting | Entry |
|---|---|
| “Enable TikTok Events API” | Toggle switch; default setting is “ false.” Content only loads when set to “ true.” |
| “TikTok Pixel ID (Events API)” | The pixel ID of the data source for web events from the TikTok Events Manager; letters and numbers only |
| “TikTok Access Token (Events API)” | The access token for the same data source. The store uses it only on the server and displays it in a masked form in the backend. |
| “Operating Mode” | live (Default) sends real events. sandbox sends server events as test events to the “Test Events” section of the Events Manager; there, they are not included in the analysis. |
| “Test Event Code” | only for sandbox: the code from “Test Events” |
Only when the switch is set to true, along with the Pixel ID and access token, does the store load content for TikTok; the token displays the list only as a character count. Click to enlarge.
true and without an access token, the store won’t load anything at all—not even a browser pixel—and the cookie banner won’t display a “TikTok” category.Events API
The store reports product views, shopping cart activity, searches, registrations, checkout, and purchases directly to TikTok. It reports each purchase using a unique identifier per order: If a customer reopens the order confirmation, TikTokdoes not count the purchase twice.from 4.9.29
TikTok Pixel in the Browser
The store loads the pixel from analytics.tiktok.com and reports the same events using the same identifier. The pixel does not have its own toggle; it always runs in conjunction with the Events API.from 4.9.35
Click ID
If a visitor arrives via a TikTok ad, the store records the click ID for the visit. With consent, it stores this ID in a cookie for seven days so that any subsequent purchase is attributed to the ad.
- After the test, reset the “Operating Mode” to “
live.” As long as “sandbox” is selected, even actual purchases will be treated as test events. - “TikTok Account Name” under Settings → Design → Social Media is simply the link to your profile. It has nothing to do with tracking.
Pinterest and Criteo
Both run only in the browser. You enter an ID under Settings → Interfaces → SEO/SEA → Additional Services; the store handles the rest.
Pinterest Tag
- Enter the tag ID from your Pinterest advertising account in “Pinterest Tracking ID.” The “Pinterest” category will appear in the cookie banner.
- The store reports page views, category pages, searches, registrations, “Add to Cart,” and purchases as events
checkout, including the order number, net merchandise value, and items. - For logged-in customers, it passes the email address as a hash value.
- The store does not have a server connection to Pinterest.
Criteo
- Enter your Criteo account ID in the “Criteo Account ID” field. The “Criteo” category appears in the cookie banner.
- The store reports the homepage, category and search results, product page, shopping cart, and the purchase, including the order number and items at their net price.
- For logged-in customers and during a purchase, it transmits the customer’s email address.
Which events the store reports
The events correspond to the page the visitor views. For the item ID, all platforms report the item number, which is the same as in the product feed.
| Page or Action | Meta | TikTok | Microsoft | Criteo | ||
|---|---|---|---|---|---|---|
| Any page | PageView | Page view (pixel only) | Page view Page view– | |||
| Homepage | ––– | pagevisit | viewHome | |||
| Category page | ViewCategory | ViewContent | – | viewcategory | viewList | |
| Product page | ViewContent | ViewContent | –– | viewItem | ||
| Added to Cart | AddToCart | AddToCart | – | AddToCart | – | |
| Shopping | Cart––– | pagevisit | viewBasket | |||
| Search | Search | Search | – | search | viewList | |
| Registration complete | CompleteRegistration | CompleteRegistration | – | signup | – | |
| Checkout: Shipping | InitiateCheckout | InitiateCheckout | – | pagevisit | viewBasket | |
| Checkout: Shipping | AddPaymentInfo | AddPaymentInfo | – | pagevisit | – | |
| Order Confirmation | Purchase | Purchase | purchase | checkout | trackTransaction |
- Meta and Pinterest report “Added to Cart” on the product page. TikTok also reports it for quick purchases from product lists, as does Meta via the Conversions API.from 4.9.145
- Pinterest reports “
pagevisit” on all other pages. On product pages and the sign-in page, it only reports the page view.
The Value of the Purchase
The platforms receive different amounts. Therefore, only compare sales within a single platform.
| Platform | Value of the purchase |
|---|---|
| Meta | Total order amount, including shipping and tax |
| TikTok | Gross merchandise value, excluding shipping |
| Microsoft | Net merchandise value, excluding shipping |
| Net merchandise value, excluding shipping | |
| Criteo | Net price and quantity per item |
The "Google Tracking: Price Basis" setting from the Google Analytics, Ads & Tag Manager guide applies only to Google, not to these platforms.
Consent in the Cookie Banner
Each platform has its own category in the cookie banner. As long as the visitor does not consent, the store does not load anything for that platform and does not send anything from the server either. The only exception is Sovendus with “Sovendus: Behavior Without Consent” at anonymous; see Sovendus.
Configuring the Banner
Under Settings → Privacy → General:
- Leave “Cookie Consent Tool: Mode” set to
modal(default). Withfalse, the store does not display a banner and treats all services as if visitors had given their consent. - Leave “Privacy Consents for Tracking Scripts” set to “
false” (default). In this case, no category is preselected.
When a category appears
- “Facebook,” “Bing Ads,” “Pinterest,” “Criteo,” “Microsoft Clarity”: as soon as the identifier is entered
- “TikTok”: only after toggling the switch on
true, entering the pixel ID, and the access token - “Sovendus”: as soon as the Source Number and Medium Number are entered
Each configured platform appears as its own category in the cookie banner; none is preselected. Click to enlarge.
Why tracking from the server also waits for consent
Meta’s Conversions API and TikTok’s Events API run from the server. They, too, transmit personal data to the provider for advertising purposes: the IP address, the browser identifier, and—for logged-in customers—hashed information such as the email address. The store requires the same consent for this as it does for the pixel in the browser and only sends the data after receiving it. The server-based approach does not replace the need for consent; it simply makes tracking more reliable for visitors who have given their consent. This is an explanation, not legal advice.
New Platform, New Query
If you set up a new platform, the store will display the banner again to visitors who have already made a selection. Until they make a new selection, the new platform will remain hidden from them.
Explanatory Text in the Banner
You can edit the text for the “Facebook” category under CMS → CMS Manager in the “ $tracking_facebook ” module. For TikTok, Microsoft, Pinterest, and Criteo, the banner displays only the name. Describe these services in your privacy policy.
Stores set up before XONIC 4.9.96 still display the old text for “Facebook” that includes the sentence: “The United States is a country that does not provide adequate protection for personal data under EU Regulation 2016/679.” The update replaces this text with the new version, unless you have modified it. If the HealthCheck detects modified text containing this sentence, please adjust it yourself.from 4.10
Check: Is everything working as expected?
After setup, test the store as a customer would see it: by accepting the cookie banner and making a test purchase.
- Open the store in an incognito window without any browser extensions. Ad blockers prevent the tags from loading.
- In the cookie banner, give your consent by selecting “Accept All Cookies” or by configuring “Individual Cookie Settings” for the platform.
- Then open another page. Some services don’t start until the next page load after consent is given.
- Use the platform’s tool (table below) to check whether page views and product views are being tracked.
- Order an item—for example, by prepayment—and verify that the purchase is processed correctly.
| Platform | Check browser | Check server |
|---|---|---|
| Meta | In the browser’s developer tools, under the “Network” tab, filter for facebook.com/tr: one request per page for PageView and, where the page has one, one for its event. | In Meta Events Manager, for your data record: events received via browser and via server |
| TikTok | TikTok Pixel Helper or filter for analytics.tiktok.com in the “Network” tab | TikTok Events Manager; set “Mode” to sandbox and enter the test event code in the “Test Events” section |
| Microsoft | UET Tag Helper browser extension or filter for bat.bing.com in the “Network” tab | – |
Pinterest Tag Helper or filter for pinimg.com in the “Network” tab | – | |
| Criteo | Filter by criteo in the “Network” tab | – |
The verification tool doesn't detect anything
For all platforms
- No consent: Without consent for the platform category, the store won’t load. If you’ve previously declined, clear the store’s cookies or use a new private window.
- Just consented: Load another page.
- Incorrect entry: The field contains the platform’s full code or an ID with spaces and additional characters. Enter only the ID.
- Ad blocker or browser protection feature is active.
- Cookie banner is missing entirely: If “Cookie Consent Tool: Mode” is set to
false, all services will load without a prompt. If something is still missing, it’s not due to consent.
By platform
- TikTok: If “Enable TikTok Events API” is listed on
falseor the access token is missing, no pixel will load. Prior to XONIC 4.9.35, there was no browser pixel at all. The Pixel Helper never displays server events; you can only view them in the Events Manager. - Meta: The store loads the pixel as an image, without the Meta script. Check the “Network” tab and the Events Manager. Server events are only recorded starting with XONIC 4.9.142.
- Microsoft: Microsoft only detects the UET tag for visitors who have consented to “Bing Ads.” Also, make sure the Microsoft Clarity ID isn’t in the field.
- Pinterest and Criteo: Check consent and the ID as described above.
Product Catalogs for Meta, TikTok, and Pinterest
The store does not generate a separate catalog feed for Meta, TikTok, or Pinterest. It provides a product feed in the Google Merchant Center format (XML, RSS 2.0). If the platform accepts this format, enter the same feed address there.
Generate a Feed Address
You can generate the address under Tools → Google Merchant Center in the “Feed URL Generator” using the feed type “Google Merchant Center (XML).” For instructions on how to do this and to see which items the feed generally omits, refer to the Google Merchant Center & Product Feed guide. The feed identifies each item by its item number, just as the events do.
Exclude Items
- Under Products → Categories / Products, open the item and enter a keyword in the “xoport Filter” field on the “Miscellaneous” tab, such as
ohnemeta. - Append
&products_xoport=ohnemeta&blacklist=1to the feed address you enter on the platform. - The feed at this address will now exclude all items with this password. Your feed address for Google remains unchanged.
By entering the password in the “xoport Filter” field, you can exclude the item from the feed for a specific platform. Click to enlarge.
- Without
&blacklist=1, the keyword works the other way around: The feed will then only include items with that keyword. - The store searches for the keyword as part of the field content. Therefore, "
meta" would also match "ohnemeta". Choose keywords that aren’t included in others. - Separate multiple keywords with semicolons, such as
ohnemeta;ohnetiktok. The store removes spaces when saving. - Multichannel marketplaces use the same field with their “Exclusion List (Blacklist): xoPort” setting. Use a separate password for each channel.
Facebook: Share Posts and Link Profiles
Sharing has nothing to do with tracking. The store offers three ways to do this.
Post news articles
- Under Settings → Interfaces → SEO/SEA → Facebook (Meta), enter the “Facebook (Meta) App ID” and “Facebook (Meta) App Secret” for your Facebook app.
- Under Settings → SEO / SEA → Facebook OAuth, connect your Facebook page by clicking “Connect with Facebook.” As long as the App ID and App Secret are missing, the page will display the redirect URI, which you should enter in your Facebook app.
- In the saved news article, click “Post Now” under “Social Media.”
Share button on the product page
Under Settings → Design → Product Detail View → Show Share Button, you can enable or disable the button (enabled by default). It opens the device’s share menu. If that menu isn’t available, it copies the link to the clipboard.
Linking Profiles
Enter your profile URLs under Settings → Design → Social Media, such as “URL to Facebook Business Page/Profile” or “Name of TikTok Account.” The store will then link to the profiles.
For information on how the post appears and when Facebook publishes scheduled articles, see the News Articles guide.
Sovendus and Partner Networks
Sovendus displays coupons from partner stores on the order confirmation. You can set this up under Settings → Interfaces → SEO/SEA → Sovendus.
Settings
- “Sovendus: Traffic Source Number (per language)” and “Sovendus: Traffic Medium Number (per language)”: the Sovendus numbers. Without a Source Number, Sovendus is disabled in that language.
- “Sovendus: Behavior Without Consent”: “
strict” (default) does not load anything without consent. “anonymous” loads Sovendus without customer data. Please check with Sovendus to see if this option is enabled for you. - “Sovendus: Landing Page Script on the Home Page (Switzerland)”: Required by Sovendus for Swiss online stores.
Widget appears twice
The online store embeds Sovendus directly in the order confirmation itself. Check whether the Sovendus code is also present in Tag Manager, in a separate template, or in the text of the order confirmation, and remove this second instance. If the widget still appears twice, please contact us.
The online store only transfers customer data such as name and address to Sovendus with consent for the “Sovendus” category. Partner networks such as Adtraction, AWIN, and ADCELL are described in the Affiliate Program Guide.
Pitfalls
- Double Counting: The platform is registered in the store and also integrated in Tag Manager, in a template, or via a custom script. Use only one method.
- Platform in Tag Manager: The cookie banner only queries categories for services whose identifiers are registered in the store. For tags from other providers in the container, you must manage consent yourself.
- Order Confirmation Reloaded: If a customer reloads the order confirmation, the purchase may be tracked again by Meta, Microsoft, Pinterest, and Criteo. TikTok recognizes the repeat based on the order’s unique ID.
- Full code in the field: The fields only accept the ID. The store generates the code itself.
- Category missing from the banner: The identifier is empty; on TikTok, switches or access tokens are missing.
- Sales figures do not match: Each platform receives a different purchase value; see Events.
- TikTok set to test mode: If “Operating Mode” is set to “
sandbox,” even real purchases will only appear in the test events.
Data Protection
List every platform you use in your privacy policy. The following overview shows what data the store transmits. It is for informational purposes only and does not constitute legal advice.
| Platform | What the store shares |
|---|---|
| Meta | Page visited, event data (item numbers, values), IP address, and browser identifier; for logged-in customers, as a hash value: email address, first and last name, city, ZIP code, customer number, gender (if collected), and additionally the date of birth via the pixel; the click ID from a Meta link, for the entire visit and, with consent, in the cookie from 4.9.145 |
| TikTok | Page URL and referring page, event data, IP address, and browser identifier; for logged-in customers, as a hash value: email address, phone number (with country code; if missing, the code is automatically added based on the country of the billing address— from 4.9.145; previously only in international format, such as +49), and customer number; the click ID of a TikTok ad, stored in a cookie for seven days with consent |
| Microsoft | Page views and purchases, including sales and items |
| Page views and events; for logged-in customers, the email address as a hash value | |
| Criteo | Events with product IDs; the email address of logged-in customers and the order, only as a hash value starting at from 4.9.145 (in plain text in older versions) |
| Sovendus | Order number, order value, currency, and coupon code; with consent, name, address, email address, phone number, and date of birth |
- When the tags are loaded in the browser, the provider also receives the visitor’s IP address and browser data.
- The providers may process data outside the EU. Please consult your legal counsel to determine whether and what contracts you enter into with them and how to address this in your privacy policy.
- You manage your legal texts in the CMS Manager; see the CMS Manager & Emails Guide.
Frequently Asked Questions
Where do I place the Meta pixel in the store?
Do I need the Conversions API in addition to the pixel?
Why does server-side Meta tracking only take effect after cookie consent is granted?
Where do I enter the Microsoft Advertising UET tag?
How do I set up conversion tracking for Microsoft Advertising (Bing)?
purchase ” on the order confirmation, including the net merchandise value as revenue, the currency, and the items. In Microsoft Advertising, create a conversion goal for this event; see Microsoft Advertising.Why doesn’t Microsoft recognize the UET tag in the store?
Where do I configure the TikTok pixel in the backend?
true,” and enter the “TikTok Pixel ID (Events API)” and “TikTok Access Token (Events API)” from the TikTok Events Manager. The “TikTok Account Name” field under Social Media is simply the profile link.Is setting up the TikTok pixel enough for conversion tracking?
true, the pixel ID, and the access token. If any of these are missing, nothing will load—not even the browser pixel. Additionally, the visitor must consent to the “TikTok” category in the cookie banner. The Events API is available starting with XONIC 4.9.29, and the browser pixel starting with XONIC 4.9.35.Why doesn’t the TikTok Pixel Helper recognize the stored pixel?
How do I exclude items from the Facebook feed?
ohnemeta —and append &products_xoport=ohnemeta&blacklist=1 to the feed address that Meta retrieves. Your feed address for Google remains unaffected; see Product Catalogs.How do I set up the Facebook integration for sharing content?
Why does the Sovendus widget appear twice on the order confirmation?
Can I use separate IDs for multiple stores (multi-store setup)?
Is there also a server connection for Pinterest or Microsoft?
Further Guides
We’ll set up your advertising platforms together with you
We help you enter the identifiers, review consent and test purchases with you, and troubleshoot if a platform isn’t recognizing anything.
Contact Support Now