Target group Name Version Version info Implementation steps Last modified
merchant Magento Plugin 1.x - 2.x MAGENTO CONVERSION IMPLEMENTATION

In order to get tracking up and running swiftly within your Magento webshop, we gladly point you to the available plugins.
Provided below are plugins for Magento version 1.7.2 - 1.9.X, as well as a plugin for Magento versions 2.3 - 2.X.

Magento version 2

Magento version 1 by third party Magmodules.eu.
For support, please refer to Magmodules in case you might run into configuration issues. Their professional support has short response times.
Shortlink to this article: https://sc.tradetracker.net/implementation/overview?f[id]=70
15-Dec-2021 16:39:24
merchant Weebly Webshop NA Standard implementation WEEBLY WEBSHOP TRADETRACKER CONVERSION IMPLEMENTATION

The code below must use your campaign ID and product ID that you received from us.

The code must be pasted as custom tracking code by navigating to:

STORE >> ADVANCED >> Add custom tracking code and add it to the Receipt page input field and Save it

COPY THIS CODE (if needed replace CAMPAIGN_ID and PRODUCT_ID with your own ID's)

<script type="text/javascript">
var ttConversionOptions = ttConversionOptions || [];
ttConversionOptions.push({
type: 'sales',
campaignID: '[marker]CAMPAIGN_ID[/marker]',
productID: '[marker]PRODUCT_ID[/marker]',
transactionID: '{txid}',
transactionAmount: {total} - {tax} - {shipping},
quantity: '1',
descrMerchant: '',
descrAffiliate: '',
currency: ''
});
</script>
<noscript>
<img src="//ts.tradetracker.net/?cid=[marker]CAMPAIGN_ID[/marker]&amp;pid=[marker]PRODUCT_ID[/marker]&amp;tid={txid}&amp;tam={total}&amp;event=sales" alt="" />
</noscript>
<script type="text/javascript">
(function(ttConversionOptions) {
var campaignID = 'campaignID' in ttConversionOptions ? ttConversionOptions.campaignID : ('length' in ttConversionOptions && ttConversionOptions.length ? ttConversionOptions[0].campaignID : null);
var tt = document.createElement('script'); tt.type = 'text/javascript'; tt.async = true; tt.src = '//tm.tradetracker.net/conversion?s=' + encodeURIComponent(campaignID) + '&t=m';
var s = document.getElementsByTagName('script'); s = s[s.length - 1]; s.parentNode.insertBefore(tt, s);
})(ttConversionOptions);
</script>


STEP-BY-STEP GUIDE
Login to your Weebly account and click edit for the site you want to add our conversion script.

Navigate to STORE >> ADVANCED >> Add custom tracking code:



Paste our conversion code to the Receipt page input field:



Click Update Changes.

The implementation can be tested.
Shortlink to this article: https://sc.tradetracker.net/implementation/overview?f[id]=37
14-Mar-2019 15:51:22
merchant General All Using multiple product group ID's WHEN OR WHEN NOT TO USE MULTIPLE PRODUCT GROUPS

Within the conversion script there is an option "productID". This is an ID that is generated by TradeTracker.
It is possible to specify a commission structure per product group.

It is not a description of your product or a category description or something, which is often assumed.

There is only one situation in which multiple product groups (ID's) should be used.
The only reason to use multiple product group ID's is when you offer 2 or more groups of products for which the difference in profit margin is so large that it is a risk to use 1 general commission model. For this purpose and only this, we would advise the usage of an additional product group ID, but even in this situation it is not 100% necessary. You could also base the affiliate commission you want to pay on the average profit margin of your entire shop. Just keep in mind that only a part of your sales will derive from your affiliate marketing endeavours. At the bottom line the actual commission percentages you spent on affiliates (when using your total profit margin to base this on) will always be on the low side in relation to your total average profit-margin percentage.

It is always possible to use product groups. But every situation is client specific.

There is no 1 general product group implementation solution.

The system you use does not matter, the way the system is configured is more important.


In essence using product groups requires just some basic web programming, in principle it is:

if product x is in category A use product group ID 1
else if product x is in category B use product group ID 2


The amount of time a client will need to set up the usage of product groups for their campaign will depend on the individual situation. We can't say that upfront, because we just can't know, because it is always a custom solution. If someone would need 20 different product groups and they/we would have to create very large regular expressions in order to identify each product to be able to set the correct group for it, it will be somewhat time consuming to set up.On the other hand, if the site already uses correct defined categories that are corresponding with the groups they want to use for example, it would be easier to set up. What you need to take in to consideration is how you are able to identify for each product in which product group the product must be. The usage of categories within a site is for example 1 way to do this. In case you do still need to use multiple product groups, there are some things to take into account.

How will you identify the correct product group for each product within an order?
For each product you must be able to identify the correct product group based on a specific identifier, this can be the SKU or category for example.

An order can consist of products from multiple product groups. This implies that the product group will have to be identified on product level, per individual item.

This can be done by a so called basket loop that runs through each product within the order and checks the order category for example.

In the example below a check is done on orderCategory that is a property of order. In case the orderCategory is "hardware" that product gets productID: 321.

$amountsPerProductGroup = array();
foreach ($orders as $order) {
switch($order['orderCategory']) {
case 'hardware':
$productID = '321';
break;
case 'software':
$productID = '322';
break;
default:
$productID = '323'; // "general" product ID.
break;
}

$amountsPerProductGroup[$productID] += $order['orderAmount'];
}

foreach ($amountsPerProductGroup as $productID => $transactionAmount) {
echo <<<TT
<script type="text/javascript">
var ttConversionOptions = ttConversionOptions || [];
ttConversionOptions.push({
type: 'sales', // 'sales' or 'lead'.
campaignID: '[marker]CAMPAIGN_ID[/marker]',
productID: '$productID',
transactionID: '[marker]ORDER ID[/marker]',
transactionAmount: '$transactionAmount',
quantity: '1',
descrMerchant: '',
descrAffiliate: '',
currency: '',
vc: ''
});
</script>
<noscript>
<img src="//ts.tradetracker.net/?cid=[marker]CAMPAIGN_ID[/marker]&amp;pid=$productID&amp;tid=[marker]ORDER ID[/marker]&amp;tam=$transactionAmount&amp;data=&amp;qty=1&amp;descrMerchant=&amp;descrAffiliate=&amp;event=sales&amp;currency=&amp;vc=" alt="" />
</noscript>
TT;
}

echo <<<TT
<script type="text/javascript">
(function(ttConversionOptions) {
var campaignID = 'campaignID' in ttConversionOptions ? ttConversionOptions.campaignID : ('length' in ttConversionOptions && ttConversionOptions.length ? ttConversionOptions[0].campaignID : null);
var tt = document.createElement('script'); tt.type = 'text/javascript'; tt.async = true; tt.src = '//tm.tradetracker.net/conversion?s=' + encodeURIComponent(campaignID) + '&t=m';
var s = document.getElementsByTagName('script'); s = s[s.length - 1]; s.parentNode.insertBefore(tt, s);
})(ttConversionOptions);
</script>
TT;
// Leave a blank line here.


Shortlink to this article: https://sc.tradetracker.net/implementation/overview?f[id]=23
23-May-2019 15:07:36
merchant General All Conversion GENERAL TRADETRACKER CONVERSION IMPLEMENTATION CONSIDERATIONS.

SETTING UP THE REDIRECT INSTRUCTIONS
PRE-CONFIGURED WEBSHOP CONVERSION IMPLEMENTATION SOLUTIONS
OUR UNIVERSAL CONVERSION SCRIPTS

Do you use a Payment Service Provider to handle your transactions?
Using a Payment Service Provider (PSP) can be a convenient option to handle the transactions that are done via your web shop. Please be aware that using a PSP in most cases requires additional work to set up our conversion registration mechanism correctly. A problem that often occurs is that our implementation instructions are executed correctly, but when testing the campaign no transaction information is passed back to the actual order confirmation page on your website (where our conversion script is located). This results in an unsuccessful test, because the information we need to pass back to our system is not available within the script placed on the checkout success page. The general solution to this is to configure your PSP process in such a way that the PSP passes back the transaction information to the order success page on your website. This can be done from within the PSP administrative interface in most cases.

In case you encounter issues implementing our conversion script when using a PSP, we advise you to provide this document to the PSP and ask them how it would be possible to get our conversion mechanism to work with their system. They should be able to provide a solution for this. A workaround would be to add our conversion script one step before the visitor is redirected to the PSP’s environment in which the actual payment is done. All orders that are registered in our system will always have to be assessed either way, so it might be an option to use this solution. This would save valuable time in setting up your campaign, but would result in a slightly higher conversion rejection rate for your affiliates.

Will your campaign start in one or multiple TradeTracker countries?
In case you are about to start a campaign in multiple TradeTracker countries, it’s important to inform your account manager about this. Starting a campaign in multiple territories will partly determine the implementation strategy to follow. In case you have agreed to run your campaign in multiple countries it is important to know how the checkout process on your site is configured. Seeing as your campaigns are registered on country level by default, every campaign will have an individual campaign ID per country and the correct ID must be used for each transaction. Basically it can be either of the options described below.

Option / example 1
You have separate website instances for each country or a general website with separate checkout pages on which you can place the conversion script per country (preferred solution). If your site uses multiple instances (or checkout pages) that are corresponding to the countries in which the campaign will run, it is possible to add the corresponding scripts (with the correct campaign ID per country) to each separate instance of the order confirmation page.

Option / example 2
You have one general website for all different countries and you use one general checkout process. If you are unable to differentiate between countries on your website, it is possible to use a multi-country script solution. The way this works is that a tracking group is created to combine the campaign ID's of your country specific campaigns. Our system will perform a background system check between all campaigns and tries to identify the originating click in order to match the conversion to the correct campaign. In case we are unable to make a correct match, a fall-back method is used to account the conversion to all country campaigns for which a click is found. In order to account the conversion to the correct campaign manual intervention is needed. General practice is to account the sale to the last originating click. Using a tracking group ID might cause some overhead in assessing conversions making this the lesser preferred way to go. The tracking group solution should only be used in case you are unable to use a variable campaign ID within our conversion script based on the visitor’s country or site entry point.

Sales or lead conversion?
The sales conversion script is intended for registering actual sales transactions. In order to do this, the script needs to contain more information about the transaction in comparison to the information that is needed to register a lead. A sales conversion event contains actual order value information and a connection to your administration, such as an internal order identifier. In case of a lead conversion (an information request or brochure download for example) no order and order value specific information is needed. A lead conversion will have a pre-set fixed commission within our system. The unique lead identifier can for example be the ID of the prospect. Sales and leads are registered separately within our system for easy analysis.

Pre-configured web shop specific implementation instructions
We have created dedicated pages for the specific web shop implementation solutions available. At the bottom of the page about setting up the conversion and general set-up considerations or by navigating through the implementation system when using the "Visit the TradeTracker implementation portal" link, you can select the web shop system you are using and follow the instructions accordingly. In case you encounter or experience issues when implementing our tracking by using our implementation instructions, please report this to your account manager and describe (in detail) the steps you took and provide the codes and/or files you used for your implementation to your account manager. Please keep in mind that although we do our very best to cover a wide variety of different implementations and web shop systems, programming languages and conversion registration methods for different situations, we want to state here that they are all merely examples and are not guaranteed to work for your specific situation or specific conversion or tracking needs.

The implementation descriptions provided are based on default system configurations and do not take system configuration settings, customisations and usage of (conflicting) plug-ins into account. Besides that there are a lot of other factors that can have impact on the correct workings of our tracking and conversion registration system. It is impossible to provide all possible solutions for problems that might even not exist already.

My shop system is not listed in the portal, what to do?
In case your specific shop is not listed in the examples, you may provide this document to the supplier of your web shop system or your webmaster and ask about the possibilities to implement our tracking within the system you are using.
If they provide a solution or implementation instructions to implement our tracking according to our specifications, it would be highly appreciated if the information about your shop, the version you are using and the actual solution or implementation instructions you received would be shared with your account manager. This information would then be assessed carefully in order to determine whether it can be shared on the portal for others to use.

TRADETRACKER GENERAL CONVERSION SCRIPTS

When you have a clear picture of your technical environment and the other factors described above, you have two main options:

Look at the PRE-CONFIGURED WEBSHOP CONVERSION IMPLEMENTATION SOLUTIONS to see if we have a solution for your environment available.
The advantages are that these solutions are already configured to use the correct variable values and tested in a default installation of the web shop system.

Use OUR UNIVERSAL CONVERSION SCRIPTS. This solution requires the variable values that are needed to register in our system to be added manually, but can be used for any situation. It does require some basic programming knowledge of the environment in which the script must be placed in order to do this correctly.

VARIABLES OVERVIEW AND DESCRIPTIONS

Available variablesPossible value(s)ExampleRequiredDescription
typesales or leadsalesYesDefine if the conversion is a sale or a lead.
campaignIDNumeric string1234YesYour campaign ID.The campaign ID as provided by TradeTracker.
productIDNumeric string4321YesYour product ID. The product ID as provided by TradeTracker.
transactionIDTextual stringABC-12345YesYour shop's internal and unique order identifier. The transaction identifier (e.g. orderID) is a variable value that is available on the order confirmation page of your web shop. The variable used is different for each shop or custom solution.
transactionAmountNumeric string123.45Yes, if type is 'sales'.Transaction amount variable. The transaction amount is a variable value that is available on the order confirmation page of your web shop. The variable used is different for each shop or custom solution. In case of a lead campaign this can be left blank or set to '0'.
quantityNumeric string1NoIntended for statistical analysis in future software releases. You are able to specify the quantity of the order here. Currently this does not affect the registration of the order, in the future this will be used to be able to calculate the order amount for example (if this has added value for you) and it will be used for statistical information.
descrMerchantTextual stringSamsung UE55HU7500YesDetailed description of the order. Used for statistical purposes. Visible for the merchant only. You can add variable values here and/or other order information you might want to see in your TradeTracker account. Use this to add product information or order information.
descrAffiliateTextual stringSamsung Ultra HD TVYesDescription of the order. Visible for affiliates only. Used by affiliates for campaign optimisation.
currencyTextual stringUSDNoCurrency of the transaction. ISO 4217 standard, e.g. EUR, USD, GBP, PLN etc. Defaults to company currency if left empty. Also used in combination with our automatic currency conversion option This option is turned off by default. Ask your account manager if you need this option to be activated.
Shortlink to this article: https://sc.tradetracker.net/implementation/overview?f[id]=2
14-Mar-2019 15:56:18
merchant General All General conversion script GENERAL TRADETRACKER CONVERSION SCRIPTS Click here in case you need to use a MULTI COUNTRY SOLUTION with a TRACKING GROUP ID

Here you will find our general conversion scripts that can be used to place on the order confirmation page or thank you page of your site.
To register conversions, the script must be populated with information from your site.

SALES CONVERSION SCRIPT EXAMPLE

<script type="text/javascript">
var ttConversionOptions = ttConversionOptions || [];
ttConversionOptions.push({
type: 'sales',
campaignID: '[marker]CAMPAIGN_ID[/marker]',
productID: '[marker]PRODUCT_ID[/marker]',
transactionID: '[marker]ORDER_ID[/marker]',
transactionAmount: '[marker]ORDER_AMOUNT[/marker]',
quantity: '1',
descrMerchant: '',
descrAffiliate: '',
vc: '',
currency: ''
});
</script>
<noscript>
<img src="//ts.tradetracker.net/?cid=[marker]CAMPAIGN_ID[/marker]&amp;pid=[marker]PRODUCT_ID[/marker]&amp;tid=[marker]ORDER_ID[/marker]&amp;tam=[marker]ORDER_AMOUNT[/marker]&amp;data=&amp;qty=1&amp;descrMerchant=&amp;descrAffiliate=&amp;event=sales&amp;currency=[marker]EUR[/marker]&amp;vc=" alt="" />
</noscript>
<script type="text/javascript">
// No editing needed below this line.
(function(ttConversionOptions) {
var campaignID = 'campaignID' in ttConversionOptions ? ttConversionOptions.campaignID : ('length' in ttConversionOptions && ttConversionOptions.length ? ttConversionOptions[0].campaignID : null);
var tt = document.createElement('script'); tt.type = 'text/javascript'; tt.async = true; tt.src = '//tm.tradetracker.net/conversion?s=' + encodeURIComponent(campaignID) + '&t=m';
var s = document.getElementsByTagName('script'); s = s[s.length - 1]; s.parentNode.insertBefore(tt, s);
})(ttConversionOptions);
</script>


LEAD CONVERSION SCRIPT EXAMPLE

<script type="text/javascript">
var ttConversionOptions = ttConversionOptions || [];
ttConversionOptions.push({
type: 'lead',
campaignID: '[marker]CAMPAIGN_ID[/marker]',
productID: '[marker]PRODUCT_ID[/marker]',
transactionID: '[marker]{transactionID}[/marker]',
descrMerchant: '[marker][/marker]',
descrAffiliate: '[marker][/marker]'
});
</script>
<noscript>
<img src="//tl.tradetracker.net/?cid=[marker]CAMPAIGN_ID[/marker]&amp;pid=[marker]PRODUCT_ID[/marker]&amp;tid=[marker]{transactionID}[/marker]&amp;data=[marker][/marker]&amp;descrMerchant=&amp;descrAffiliate=&amp;event=lead" alt="" />
</noscript>
<script type="text/javascript">
// No editing needed below this line.
(function(ttConversionOptions) {
var campaignID = 'campaignID' in ttConversionOptions ? ttConversionOptions.campaignID : ('length' in ttConversionOptions && ttConversionOptions.length ? ttConversionOptions[0].campaignID : null);
var tt = document.createElement('script'); tt.type = 'text/javascript'; tt.async = true; tt.src = '//tm.tradetracker.net/conversion?s=' + encodeURIComponent(campaignID) + '&t=m';
var s = document.getElementsByTagName('script'); s = s[s.length - 1]; s.parentNode.insertBefore(tt, s);
})(ttConversionOptions);
</script>


VARIABLES OVERVIEW AND DESCRIPTIONS

Available varsValue(s)ExampleRequiredInfo
typesales or leadsalesYesDefine if the conversion is a sale or a lead.
campaignIDNumeric string1234YesYour campaign ID.The campaign ID as provided by TradeTracker.
productIDNumeric string4321YesYour product ID. The product ID as provided by TradeTracker.
transactionIDTextual stringABC-12345YesYour shop's internal and unique order identifier. The transaction identifier (e.g. orderID) is a variable value that is available on the order confirmation page of your web shop. The variable used is different for each shop or custom solution.
transactionAmount Numeric string123.45Yes, if type is 'sales'.Transaction amount variable. The transaction amount is a variable value that is available on the order confirmation page of your web shop. The variable used is different for each shop or custom solution. In case of a lead campaign this can be left blank or set to '0'.
quantityNumeric string1NoIntended for statistical analysis in future software releases. You are able to specify the quantity of the order here. Currently this does not affect the registration of the order, in the future this will be used to be able to calculate the order amount for example (if this has added value for you) and it will be used for statistical information.
descrMerchantTextual stringSamsung UE55HU7500YesDetailed description of the order. Used for statistical purposes. Visible for the merchant only. You can add variable values here and/or other order information you might want to see in your TradeTracker account. Use this to add product information or order information.
descrAffiliateTextual stringSamsung Ultra HD TVYesDescription of the order. Visible for affiliates only. Used by affiliates for campaign optimisation.
currencyTextual stringUSDNoCurrency of the transaction. ISO 4217 standard, e.g. EUR, USD, GBP, PLN etc. Defaults to company currency if left empty. Also used in combination with our automatic currency conversion option This option is turned off by default. Ask your account manager if you need this option to be activated.
vcTextual stringDISCOUNT50NoVoucher code variable. The voucher code is a variable value that is used on checkout page of your web shop.

SETTING UP THE REDIRECT INSTRUCTIONS
IMPLEMENTATION CONSIDERATIONS
PRE-CONFIGURED WEBSHOP CONVERSION IMPLEMENTATION SOLUTIONS
Shortlink to this article: https://sc.tradetracker.net/implementation/overview?f[id]=27
07-Jun-2019 15:28:45
merchant General All Redirect IMPLEMENTING TRADETRACKER REDIRECT AND CONVERSION INSTRUCTIONS AND CONSIDERATIONS
The articles on these pages are created to help you implement our tracking and conversion registration method.

If you arrived at this portal by using a link that was sent to you, we would like to inform you about the accompanying document to these pages.
This document contains more or less similar information as to be found on this site, but is structured chronological and contains links to the relevant pages on this site, making it somewhat easier to read, depending on what you prefer.
The document is part of the start mail you received or available in your account.

Implementing our click registration and conversion tracking should take about 30 minutes up to 2 hours for general situations.
Although it can be done in 15 minutes in case you are already familiar with setting it up using an available pre-configured implementation method and if there are no unexpected surprises. It can however be longer in more complex set-ups with more stakeholders or when encountering other problems.

We highly recommend you to read the information in the document or on this site.
These articles contain important information about how, why and what you should do in order to set up your campaign successfully.

Setting up the TradeTracker tracking consists of 2 parts:
1) Registering a click from the affiliate’s website to your site.
2) Registering resulting conversions to be able to match the click to the sale.

In order to be able to implement our tracking system, you must be able to:
1) Create a redirect location on your (sub) domain.
2) Make modifications to the checkout success / order confirmation page of your web shop system.

The first thing that needs to be done is getting the click registration mechanism to work.
The redirect is based on creating a location on your domain which will handle all incoming clicks from your affiliates. This can be done by either creating a separate rewrite path or physical directory and making one of our redirect example code files available to handle the incoming clicks. Optionally, you may also create a subdomain (e.g. offers.merchant.com) and making the desired redirect available within the root of your subdomain. This is the preferable method in case you want to keep this implementation separate from your regular developments on your main domain.

The available languages we offer are ASP (.asp) | Coldfusion (.cfm) | CSHARP (.aspx) | JSP (.jsp) | PERL (.pl) | PHP (.php) | Python (.py) | Visual Basic ASPX (.aspx).

DOWNLOAD THE AVAILABLE REDIRECT REDIRECT SCRIPT EXAMPLES HERE and extract the zip-file to your computer.

The zipped file contains directorys that represent the programming language of the redirect script example. You should choose an redirect script example in a language (extension) that is supported by your server.

ADD YOUR DOMAIN NAME TO THE INDEX REDIRECT FILE
The redirect script example to use depends on the type of server and the programming language that is supported by your server.
To make sure our tracking is working as intended, the domain of your website (without www. ) must be added to the redirect file. Check the file for the "domainName" variable and change to your main domain accordingly.
If your shop is running on www.merchant.com or shop.merchant.com for example, the domainName value to enter would be "merchant.com".

By default the redirect script example we provide should work in most situations. They are created, tested and verified to work for the majority of our clients. We do not encourage further modification of the provided redirect script example, unless you have a very good reason to do so and know exactly what you are doing.

MAKING THE REDIRECT AVAILABLE
Within the introduction e-mail that you received from your account manager a suggestion for the location of the redirect location is made. If you decide to use an other location, please communicate this to your account manager because the correct location is needed to get your campaign to work as intended.

CHOOSING A LOCATION FOR THE REDIRECT
The redirect location name should be a phrase that best represents your shop or topic of your site. If you have a website that sells fashion items or clothing, the name of the redirect directory should represent this. For instance in this case it might be www.yourwebsite.com/fashion/ or www.yourwebsite.com/clothing/.

Please refrain from using a name that resembles any connection or relation to TradeTracker like www.yourwebsite.com/tt/ www.yourwebsite.com/tracking/ www.yourwebsite.com/tradetracker/ or www.yourwebsite.com/redirect/ for example.

You should verify that the suggested directory is not already part of your website’s link structure. This can be the case if URL rewriting is used for the suggested directory and content is already attached to the suggested location. If that is the case, please think of an alternative location/directory to place the redirect file.

Turn URL rewriting off in case you use an actual "physical" directory
In case your site is using URL rewriting to create pretty links on your website, URL rewriting must be turned off for the redirect directory in order for it to work correctly. This is done in different ways for different server environments. On an Apache web server, the URL rewrite engine can be turned off for a specific directory by placing an .htaccess file within the redirect directory containing the line:

RewriteEngine Off
For more information about URL rewriting and links to different server settings we refer you to Wikipedia - URL Rewrite Engine.

In case your server supports .htaccess files you can download a zipped .htaccess file to use here.

SUMMARY TO SET UP THE REDIRECT LOCATION

1. Determine the server environment and choose the programming language format accordingly (or create one based on one of the example codes)
2. Create the redirect location (either a rewrite, physical directory or subdomain)
3. Set the domainName variable with your main domain (without www.) in the redirect script example
4. Make the redirect script publicly available at the chosen location and if using an actual physical directory, turn off the URL rewrite engine according to your server configuration options
5. Use the tracking test URL that corresponds to the redirect location to test the redirect

When these steps are done, you are ready to test the redirect to your site by using the tracking test link.

If you did not receive the tracking test link or used a different then suggested redirect location, please contact your account manager.

SETTING UP THE TRADETRACKER CONVERSION SCRIPT AND IMPLEMENTATION CONSIDERATIONS
Before you start copying and pasting the codes that can be found by clicking the links below to your site and come to the conclusion that it's not working as you had planned, please hold on to your horses. Implementing our conversion script requires some thought and consideration. The reason for this is that there are a lot of options and configuration situations to take into account.

Do you have a custom built website? If so, what program language is used? Do you use a Payment Service Provider? An existing web shop system? Are for example things that influence the technical implementation strategy to follow.

We have described a couple of things for you to consider or determine before continuing the implementation.

When you have a clear picture of your technical environment and the other factors described above, you have to main options:

PRE-CONFIGURED WEBSHOP CONVERSION IMPLEMENTATION SOLUTIONS
click the link above to see if we have a solution for your environment available.
The advantages are that these solutions are already configured to use the correct variable values and tested in a default installation of the web shop system.

OUR UNIVERSAL CONVERSION SCRIPTS.
Our universal script is the script that we use to create the web shop specific solutions.
The script requires the variable values that are needed to register conversions within our system to be added manually, but it can be used for any situation.
It does require some basic programming knowledge of the environment in which the script must be placed or use the supported variable placeholders of your shop or environment.
Shortlink to this article: https://sc.tradetracker.net/implementation/overview?f[id]=1
30-Jul-2020 14:01:11
merchant General All Multi country campaign conversion script MULTI COUNTRY CAMPAIGN CONVERSION SCRIPTS
TradeTracker campaigns get a unique campaign ID per country in which the campaign will be active. The Tracking Group ID is used to be able to use just 1 general conversion script on your confirmation page, instead of a script for each country in which the campaign is active. The way that this works is that our system will check for each campaign within the tracking group where the originating click came from and assigns any resulting conversions to the correct campaign in the correct country.

The multi-country conversion script should only be used after receiving a Tracking Group ID from your account manager.

Please note that the script you choose below must contain 1 of your campaign ID's (in general just the main campaign ID) in order for the conversion scripts to work.

The campaign ID that is added is only used to check if the main campaign is active, the tracking group number is used to assign the conversion to the correct campaign in our system.

MULTI COUNTRY CAMPAIGN SALES CONVERSION SCRIPT
<script type="text/javascript">
var ttConversionOptions = ttConversionOptions || [];
ttConversionOptions.push({
type: 'sales',
campaignID: '[marker]CAMPAIGN_ID[/marker]',
productID: '[marker]PRODUCT_ID[/marker]',
transactionID: '[marker]ORDER_ID[/marker]',
transactionAmount: '[marker]ORDER_AMOUNT[/marker]',
quantity: '1',
descrMerchant: '',
descrAffiliate: '',
currency: '',
vc:'',
trackingGroupID: '[marker][/marker]'
});
</script>
<noscript>
<img src="//ts.tradetracker.net/?tgi=[marker][/marker]&amp;pid=[marker]PRODUCT_ID[/marker]&amp;tid=[marker]ORDER_ID[/marker]&amp;tam=[marker]ORDER_AMOUNT[/marker]&amp;data=&amp;qty=1&amp;descrMerchant=&amp;descrAffiliate=&amp;event=sales&amp;currency=[marker]EUR[/marker]&amp;vc=" alt="" />
</noscript>
<script type="text/javascript">
// No editing needed below this line.
(function(ttConversionOptions) {
var campaignID = 'campaignID' in ttConversionOptions ? ttConversionOptions.campaignID : ('length' in ttConversionOptions && ttConversionOptions.length ? ttConversionOptions[0].campaignID : null);
var tt = document.createElement('script'); tt.type = 'text/javascript'; tt.async = true; tt.src = '//tm.tradetracker.net/conversion?s=' + encodeURIComponent(campaignID) + '&t=m';
var s = document.getElementsByTagName('script'); s = s[s.length - 1]; s.parentNode.insertBefore(tt, s);
})(ttConversionOptions);
</script>


MULTI COUNTRY CAMPAIGN LEADS CONVERSION SCRIPT
<script type="text/javascript">
var ttConversionOptions = ttConversionOptions || [];
ttConversionOptions.push({
type: 'lead',
campaignID: '[marker]CAMPAIGN_ID[/marker]',
productID: '[marker]PRODUCT_ID[/marker]',
transactionID: '[marker]ORDER_ID[/marker]',
descrMerchant: '',
descrAffiliate: '',
trackingGroupID: '[marker][/marker]'
});
</script>
<noscript>
<img src="//tl.tradetracker.net/?tgi=[marker][/marker]&amp;pid=[marker]PRODUCT_ID[/marker]&amp;tid=[marker]ORDER_ID[/marker]&amp;data=&amp;descrMerchant=&amp;descrAffiliate=&amp;event=lead" alt="" />
</noscript>
<script type="text/javascript">
// No editing needed below this line.
(function(ttConversionOptions) {
var campaignID = 'campaignID' in ttConversionOptions ? ttConversionOptions.campaignID : ('length' in ttConversionOptions && ttConversionOptions.length ? ttConversionOptions[0].campaignID : null);
var tt = document.createElement('script'); tt.type = 'text/javascript'; tt.async = true; tt.src = '//tm.tradetracker.net/conversion?s=' + encodeURIComponent(campaignID) + '&t=m';
var s = document.getElementsByTagName('script'); s = s[s.length - 1]; s.parentNode.insertBefore(tt, s);
})(ttConversionOptions);
</script>

OUR UNIVERSAL CONVERSION SCRIPTS
PRE-CONFIGURED WEB SHOP CONVERSION IMPLEMENTATION SOLUTIONS
SETTING UP THE REDIRECT INSTRUCTIONS
IMPLEMENTATION CONSIDERATIONS

VARIABLES OVERVIEW AND DESCRIPTIONS

Available variablesPossible value(s)ExampleRequiredDescription
typesales or leadsalesYesDefine if the conversion is a sale or a lead.
campaignIDNumeric string1234YesYour campaign ID.The campaign ID as provided by TradeTracker.
productIDNumeric string4321YesYour product ID. The product ID as provided by TradeTracker.
transactionIDTextual stringABC-12345YesYour shop's internal and unique order identifier. The transaction identifier (e.g. orderID) is a variable value that is available on the order confirmation page of your web shop. The variable used is different for each shop or custom solution.
transactionAmountNumeric string123.45Yes, if type is 'sales'.Transaction amount variable. The transaction amount is a variable value that is available on the order confirmation page of your web shop. The variable used is different for each shop or custom solution. In case of a lead campaign this can be left blank or set to '0'.
quantityNumeric string1NoIntended for statistical analysis in future software releases. You are able to specify the quantity of the order here. Currently this does not affect the registration of the order, in the future this will be used to be able to calculate the order amount for example (if this has added value for you) and it will be used for statistical information.
descrMerchantTextual stringSamsung UE55HU7500YesDetailed description of the order. Used for statistical purposes. Visible for the merchant only. You can add variable values here and/or other order information you might want to see in your TradeTracker account. Use this to add product information or order information.
descrAffiliateTextual stringSamsung Ultra HD TVYesDescription of the order. Visible for affiliates only. Used by affiliates for campaign optimisation.
currencyTextual stringUSDNoCurrency of the transaction. ISO 4217 standard, e.g. EUR, USD, GBP, PLN etc. Defaults to company currency if left empty. Also used in combination with our automatic currency conversion option This option is turned off by default. Ask your account manager if you need this option to be activated.
trackingGroupIDNumeric string11Leave blank by default unless instructed to do otherwise by TradeTracker Used to group campaigns for multiple countries.
vcTextual stringWelcome-123No The (main) discount code used for the order in question. Used in case you would like to work with unique voucher codes for certain publishers
Shortlink to this article: https://sc.tradetracker.net/implementation/overview?f[id]=29
08-Dec-2020 10:50:12
merchant Shopify All Split basket items Login to the Shopify administration backend.

Go to Settings --> Checkout --> Order processing --> Additional content & scripts

Paste the script below to the Additional content & scripts input field. Be sure to substitute the CAMPAIGN_ID and PRODUCT_ID values with the values received from TradeTracker.

{% for line_item in line_items %}
<script type="text/javascript">
var ttConversionOptions = ttConversionOptions || [];
ttConversionOptions.push({
type: 'sales',
campaignID: 'CAMPAIGN_ID',
productID: 'PRODUCT_ID',
transactionID: '{{ order.order_number }}',
transactionAmount: parseFloat({{ line_item.price - line_item.line_level_total_discount | divided_by: 100 }}) || 0,
quantity: '{{ line_item.quantity }}',
descrMerchant: encodeURIComponent('SKU: {{ line_item.sku }}'),
descrAffiliate: '',
currency: '{{ checkout.currency }}',
vc: '{{ line_item.discount_allocations[0].discount_application.title | escape }}',
trackingGroupID: ''
});
</script>
<noscript>
<img src="//ts.tradetracker.net/?cid=CAMPAIGN_ID&amp;tgi=&amp;pid=PRODUCT_ID&amp;tid={{ order.order_number }}&amp;tam={{ line_item.price - line_item.line_level_total_discount | divided_by: 100 }}&amp;data=&amp;qty={{ line_item.quantity }}&amp;descrMerchant={{ line_item.sku }}&amp;descrAffiliate=&amp;event=sales&amp;currency={{ checkout.currency }}&amp;vc={{ line_item.discount_allocations[0].discount_application.title | escape }}" alt="" />
</noscript>
{% endfor %}
<script type="text/javascript">
(function(ttConversionOptions) {
var campaignID = 'campaignID' in ttConversionOptions ? ttConversionOptions.campaignID : ('length' in ttConversionOptions && ttConversionOptions.length ? ttConversionOptions[0].campaignID : null);
var tt = document.createElement('script'); tt.type = 'text/javascript'; tt.async = true; tt.src = '//tm.tradetracker.net/conversion?s=' + encodeURIComponent(campaignID) + '&t=m';
var s = document.getElementsByTagName('script'); s = s[s.length - 1]; s.parentNode.insertBefore(tt, s);
})(ttConversionOptions);
</script>


Hit the Save button to save the configuration.
Shortlink to this article: https://sc.tradetracker.net/implementation/overview?f[id]=42
18-Nov-2020 15:09:13
merchant General All Exclusive voucher codes EXCLUSIVE VOUCHER CODES

Exclusive voucher code tracking makes it possible for advertisers to make voucher codes in the TradeTracker interface exclusive for one affiliate. Although advertisers often hand out vouchers exclusively to one publisher, this feature offers full exclusivity. This implies that when the voucher is used by a consumer, the last touchpoint will always go to the exclusive affiliate. This means that even when another affiliate or website is communicating this voucher code and generates traffic using this voucher code, the last touchpoint will go to the publisher granted with the exclusivity.

If you are a new Advertiser, please proceed to our general conversion script page and implement the pixel.

If you are a existing Advertiser, please amend your conversion script with following (place in script that requires additions is marked):
- Add vc:'EXCLUSIVE_CODE', to conversion script
- Add &vc= parameter to image pixel

Note: EXCLUSIVE_CODE should be variable passed to the script from your system. It is case-sensitive and it should be passed from your voucher code field on checkout page.

Note 2: If you are using any form of deduplication, please make sure that our complete tracking script is always triggered if this exclusive voucher code is used by a consumer. Otherwise offline tracking will not be possible and the voucher will not be full-exclusive for the publisher.



<script type="text/javascript">
var ttConversionOptions = ttConversionOptions || [];
ttConversionOptions.push({
type: 'sales',
campaignID: 'CAMPAIGN_ID',
productID: 'PRODUCT_ID',
transactionID: 'ORDER_ID',
transactionAmount: 'ORDER_AMOUNT',
quantity: '1',
descrMerchant: '',
descrAffiliate: '',
[marker]vc:[/marker]'[marker]EXCLUSIVE_CODE[/marker]',
currency: ''
});
</script>
<noscript>
<img src="//ts.tradetracker.net/?cid=CAMPAIGN_ID&amp;pid=PRODUCT_ID&amp;tid=ORDER_ID&amp;tam=ORDER_AMOUNT&amp;data=&amp;qty=1&amp;descrMerchant=&amp;descrAffiliate=&amp;event=sales&amp;currency=EUR[marker]&amp;vc=[/marker]" alt="" />
</noscript>
<script type="text/javascript">
// No editing needed below this line.
(function(ttConversionOptions) {
var campaignID = 'campaignID' in ttConversionOptions ? ttConversionOptions.campaignID : ('length' in ttConversionOptions && ttConversionOptions.length ? ttConversionOptions[0].campaignID : null);
var tt = document.createElement('script'); tt.type = 'text/javascript'; tt.async = true; tt.src = '//tm.tradetracker.net/conversion?s=' + encodeURIComponent(campaignID) + '&t=m';
var s = document.getElementsByTagName('script'); s = s[s.length - 1]; s.parentNode.insertBefore(tt, s);
})(ttConversionOptions);
</script>
Shortlink to this article: https://sc.tradetracker.net/implementation/overview?f[id]=69
07-Jun-2019 18:24:35
merchant General All Server to Server (S2S) tracking Setting up Server to Server (S2S) tracking
Server to server tracking is used in situations where regular conversion registration is not possible by means of placing our tracking code within the publicly available pages on your website (known as "client-side tracking"). The S2S method relies on a unique click identifier to be stored on your server and passed back at the time of the conversion.

We are able to pass our unique click identifier to each page on your website and you are free to choose exactly what the name of this parameter should be, e.g. "someparameter".

The tracking data value is a unique reference to identify clicks within our system and is unique for each incoming click on your website.

As a result, a link to one of your landing pages will look something like:

http://yourwebsite.com/landing/page?someparameter=[marker]0%3A%3A12345%3A%3Areference%3A%3A%3A%3A1405418672[/marker]
Please note we always send this parameter url-encoded. Also, it's important this value is stored somewhere within a storage of choice, e.g. a memory database and/or a relational database, depending on the usage. When using a database, it can for example be stored within a column ttClickID or any other column name you prefer.

How to pass back the click identifier
Whenever a conversion is triggered for which an affiliate should receive a reward, this click identifier should be passed back to TradeTracker.
One of the tasks that lies ahead for your development team, is to store this unique click identifier, together with the information that is used to trigger this conversion.

Example
Let's assume you run an online gaming website and you reward affiliates for bringing in new players. It's important that our unique click identifier is stored together with the new player information so that it can be accessed at the time of conversion trigger.

Within a database it would look something like:

idnameuseremlregdatettClickID
111J. Smithjsmith00jsmith@eml.net2014-09-01[marker]0::12345::abc::::1405418672[/marker]
112J. Doeplayer123doe.j@email.org2014-09-0212::54321::def::::1405419867

LEAD CONVERSION CALLBACK
In case an event is triggered that resembles a lead conversion (e.g. user registration), the following callback format is used:

https://tl.tradetracker.net/?s2s=1&cid=[marker]CAMPAIGN_ID[/marker]&pid=[marker]PRODUCT_ID[/marker]&tgi=&tid={transactionID}&descrMerchant={descrMerchant}&descrAffiliate={descrAffiliate}&data=[marker]{ttClickID}[/marker]&vc={voucherCode}

SALES CONVERSION CALLBACK
If an event is triggered that resembles a sales conversion (purchase, booking), the following callback format is used:

https://ts.tradetracker.net/?s2s=1&cid=[marker]CAMPAIGN_ID[/marker]&pid=[marker]PRODUCT_ID[/marker]&tgi=&tid={transactionID}&tam={transactionAmount}&descrMerchant={descrMerchant}&descrAffiliate={descrAffiliate}&currency={currency}&data=[marker]{ttClickID}[/marker]&vc={voucherCode}
In the above callbacks the {ttClickID} is tied to a fixed "data" parameter and its value must be replaced by the value saved during the initial click (and eventually stored within a database, like the table above).

Note: Please make sure all values are URL-encoded.

Example formatted callback

https://tl.tradetracker.net/?s2s=1&cid=[marker]CAMPAIGN_ID[/marker]&pid=[marker]PRODUCT_ID[/marker]&tgi=&tid=123456&descrMerchant=new%20player&descrAffiliate=new%20player&data=[marker]0%3A%3A12345%3A%3Areference%3A%3A%3A%3A1405418672[/marker]
Shortlink to this article: https://sc.tradetracker.net/implementation/overview?f[id]=31
30-Nov-2021 17:07:39