# Kurzdokumentation zur Einrichtung einer Kampagne in easy.GO ohne Basket-Tracking - campaign_alias

Um das Tracking in **easy.GO** zu gewährleisten, sind lediglich zwei Einbauschritte notwendig. 

Das System generiert beim Redirect von der Publisher-Seite auf Ihren Shop eine ID, mit der der Sale später erfasst werden kann. Diese ID wird shopseitig von einem Code-Snippet aufgenommen und im **Local Storage** sowie in einem **Cookie** gespeichert. Bei der Conversion-Erfassung wird diese ID über ein anderes Code-Snippet zurück an das Trackingsystem gespielt.

---

## 1. Code-Snippet (einzubauen auf jede Seite)

Dieser Code nimmt die ID auf, die im Redirect erzeugt wird, und schreibt sie in den LocalStorage sowie in einen Cookie (jeweils mit dem Key `emid`).

**Einbauort:** Auf sämtlichen Seiten des Shops (am einfachsten im Footer-Template).

```javascript
(function() {
    // The expiration time of the cookie (normally 60 days)
    // Die Laufzeit des Cookies (im Regelfall 60 Tage)
    var emidCookieExpirationDays = 60;

    // Please do not change below here!
    // Ab hier bitte nicht verändern!
    var getKey = 'emid';
    var getValue = getParameterByName(getKey);
    var storageKey = 'emid';
    var emidCookieKey = 'emid';
    var emidCookieDomain = window.location.hostname;

    if(getValue) {
        window.localStorage.setItem(storageKey, getValue);
        setEmidCookie(emidCookieKey, getValue, emidCookieExpirationDays,  emidCookieDomain);
    }

    function setEmidCookie(cname, cvalue, exdays, cdomain) {
      var d = new Date();
      d.setTime(d.getTime() + (exdays * 24*60*60*1000));
      var expires = "Expires="+ d.toUTCString();
      document.cookie = cname + "=" + cvalue + ";" + expires + ";Path=/;SameSite=none;Domain=" + cdomain + ";Secure";
    }
    
    function getParameterByName(e,n){n||(n=window.location.href),e=e.replace(/[[]]/g,"\$&");var r=new RegExp("[?&]"+e+"(=([^&#]*)|&|#|$)").exec(n);return r?r[2]?decodeURIComponent(r[2].replace(/\+/g," ")):"":null}
})();
```

---

## 2. Conversion-Code (einzubauen auf die Checkout-Successful-Seite)

Dieser Code erfasst die Bestellung (=Conversion) und übergibt sie an das Trackingsystem.

**Einbauort:** Ausschließlich auf der Bestellbestätigungsseite.

```javascript
(function() { 
    // please insert the campaign alias here - you received it by your account manager
    var campaign_alias = 'CAMPAIGN_ALIAS';
    
    // please insert the unique ordernumber of the purchase here
    var token = 'ORDERTOKEN'; 
    
    // please insert the purchased net turnover of the purchase here
    var turnover = 'TURNOVER';
    
    // change the currency if it is not EUR to the ISO 4217 currency code
    var currency = 'EUR';
    
    // Please do not change below here!
    var storageKey = 'emid';
    var trackingDomain = 'go.easy-m.de';
    var trigger_id = '1';    
    
    // Note: ensure variables like 'descr', 'attribution' are defined or removed if not used
    var trackingUrl = 'https://'+trackingDomain+'/trck/etrack/?campaign_alias='+campaign_alias+'&trigger_id='+trigger_id+'&token='+token+'&currency='+currency+'&turnover='+turnover+'&t=js';
    emid = window.localStorage[storageKey];

    if(emid) {
      trackingUrl += '&emid='+emid;
    }
        
    var req = new XMLHttpRequest;req.withCredentials = true;req.open("GET", trackingUrl),req.send(),req.onreadystatechange = function () { (req.readyState === 4) ? eval(req.response) : null };
})();
```

### Wichtige Hinweise zum Conversion-Code:

* **Platzhalter ersetzen:** Ersetzen Sie unbedingt `CAMPAIGN_ALIAS`, `ORDERTOKEN` sowie `TURNOVER` durch die entsprechenden Werte.
* **Netto-Umsatz:** Der Wert für `TURNOVER` muss der **Netto-Bestellwert** (ohne Steuern und Versandkosten) sein.
* **Domain:** In dieser Konfiguration wird die Tracking-Domain `go.easy-m.de` verwendet.

### Erläuterung der Platzhalter:

| Platzhalter | Beschreibung |
| :--- | :--- |
| **CAMPAIGN_ALIAS** | Der Alias, den Sie von Ihrem Account-Manager erhalten haben (fester Wert). |
| **ORDERTOKEN** | Die dynamische Bestellnummer aus Ihrem Shop. |
| **TURNOVER** | Der Netto-Umsatz der Bestellung (dynamisch pro Bestellung). |