Conversion tracking setup

To enable conversion tracking without third-party cookies, we use the solute-Click-ID ("soluteclid"). This allows clickouts to be assigned to sales.

The solute-Click-ID must therefore be sent to our tracking server when a conversion takes place. To simplify this process, we offer two small javascript snippets that do the sending of the solute-Click-ID – the Javascript must be integrated for the offer page/entry page as well as on the order confirmation page.

The use of the two Javascript snippets is of course not mandatory. It is also very easy to create your own solution (more on this below).

Integrate tracking: Javascript

The javascript provided will recognize users coming from the solute network. For these users, the URL of the entry page (landing page) is stored in the LocalStorage of the browser in order to be able to assign successful sales to the entry page later.

Offer page/entry page

The Landing page Javascript is implemented on the offer pages. It checks whether a parameter "soluteclid" is contained in the parameters of the landing page URL. If this is the case, the landing page URL is stored in the browser's LocalStorage and is also sent to solute. For more information on landing page tracking, see our FAQ below.

<script>
(function
soluteLandingTracking(){
if (
location.href.indexOf("soluteclid") < 0) return;
localStorage.setItem("soluteclid", (new Date()).getTime()+" "+location.href);
var
url = "https://cmodul.solutenetwork.com/landing";
url += "?url=" + encodeURIComponent(location.href);
var
req = new XMLHttpRequest();
req.open("GET", url);
req.send();
})();
</
script>

Order confirmation page

The Conversion page Javascript is implemented on the order confirmation page - the page that is displayed after a purchase has been made.

A conversion should always be assigned a monetary (net) value (shopping cart amount excluding VAT and shipping costs), as well as a unique ID to the order process (Order-ID), so that you have a reference to your own conversion records. We recommend a hash your order ID. An optional attribution factor can also be specified. Through the (attribution) factor, you can specify the share of solute in the purchase. If you don't want to use the factor, just submit the value 1 as factor. Pay attention to the use of a tracking switch! A tracking switch ensures the correct allocation of sales and conversions within the customer journey. The tracking switch manages code snippets from different providers and controls them according to rules defined by the shop.

<script>
soluteConversionTracking({
VALUE: "123.98",
ORDER_ID: "abc-987",
FACTOR: "1",
});
function
soluteConversionTracking(data) {
var
ttl = 1000*60*60*24*30;
var
a = localStorage.getItem("soluteclid");
if (!
a) return;
var
b = a.split(" ", 2);
if (
parseInt(b[0])+ttl > (new Date()).getTime()) {
var
url = "https://cmodul.solutenetwork.com/conversion";
url += "?val=" + encodeURIComponent(data.VALUE);
url += "&oid=" + encodeURIComponent(data.ORDER_ID);
url += "&factor=" + encodeURIComponent(data.FACTOR);
url += "&url=" + encodeURIComponent(b[1]);
var
req = new XMLHttpRequest();
req.open("GET", url);
req.send();
} else {
localStorage.removeItem("soluteclid");
}
}
</
script>

That was already all to activate the new conversion tracking without third-party cookies.

Integrate tracking: HTTP interface

Alternatively, landing and conversion calls can also be transmitted directly via an HTTP GET request. For example, from the backend of the shop software. Here, only the URL of the entry page (with parameter "soluteclid") must be transferred.

Offer page/entry page

To track the call of the entry page (landing page), the URL of the entry page is passed as parameter.

URL: https://cmodul.solutenetwork.com/landing
Request: GET
Parameter:
- url: url of entry page (landing page).
Response: 204 No Content

Example:

GET https://cmodul.solutenetwork.com/landing?url=ESCAPED_URL

Order confirmation page

To track the call of the order confirmation page, the same URL of the initial page is passed again as parameter. The total value of the shopping cart and the order-ID (e.g., hash of order ID) are also transferred.

URL: https://cmodul.solutenetwork.com/conversion
Request: GET
Parameter:
- url: url of entry page (landing page)
- val: total shopping cart amount excluding VAT and shipping costs
- oid: unique ID to the order process (e.g., hash of the order ID)
- factor: Optional. Share of solute in the purchase.
Response: 204 No Content

Example:

GET 
https://cmodul.solutenetwork.com/conversion?url=ESCAPED_URL&val=ESCAPED_VALUE&oid=ESCAPED_ORDER_ID

FAQ

Why is the complete URL of the starting page passed to the tracker and not just the solute-Click-ID ("soluteclid")?

Besides the well-known tracking by redirects, some providers (e.g. Google) also use parallel tracking. The user hereby is directed directly to the shop page. In these cases, tracking is not done directly via "soluteclid", but additionally via the tracking parameter generated by the respective provider (for example, the "gclid" at Google).

To keep the handling for shops simple and flexible, "solute-Clicks" always contain a parameter "soluteclid", so that this parameter can be used to detect solute-Clicks. In addition, the URL may contain other click-IDs for parallel tracking. Our tracking backend processes this automatically for you. Therefore, it needs the complete URL to be able to flexibly use alternative tracking IDs in the future.

The URL itself is not used for any further purposes.

Why is the call to the entry page tracked?

The tracking of the entry page returns the information about a successful call of the offer detail page and serves to be able to recognize possible problems, such as the non-accessibility of your website, at an early stage. In addition, the landing page request information can facilitate error analyses and be considered in the solute click validation process. For this purpose, the accessed URL of the landing page including the solute-click-ID is transmitted to a solute server.

Can I use conversion tracking with Google Tag Manager?

Yes. You have to implement both JavaScript snippets in the GTM, one on the route of landing pages and the other on the route of order confirmation page.

On the order confirmation page, the values for VALUE: "" and ORDER_ID: "" have to be set with the corresponding GTM values, e.g.:

soluteConversionTracking({
VALUE: "{value}",
ORDER_ID: "{order-id}",
{{ FACTOR: "1",}}

{
{ }

);}}

Got any questions? Please contact us!

Our Technical Shop Support will be happy to help you.

Tel: +49 721-98993-60
(For direct dialling, select "1" in the voice menu and then "2".)

E-Mail