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

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 30 days)
    // Die Laufzeit des Cookies (im Regelfall 30 Tage)
    var emidCookieExpirationDays = 30;

    // 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_id = 'CAMPAIGN_ID';
    
    // 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';
    
    // you may add an additional description for the order
    var descr ='DESCRIPTION';
    
    // Please do not change below here!
    var storageKey = 'emid';
    var trackingDomain = 'pvn.guest.club';
    var trigger_id = '1';    
    
    var trackingUrl = 'https://'+trackingDomain+'/trck/etrack/?campaign_id='+campaign_id+'&trigger_id='+trigger_id+'&token='+token+'&descr='+descr+'&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_ID`, `ORDERTOKEN` sowie `TURNOVER` durch die entsprechenden dynamischen Werte aus Ihrem Shop.
* **Netto-Umsatz:** Der Wert für `TURNOVER` versteht sich als **Netto-Warenkorbwert** (ohne Steuern und Versandkosten).
* **Währung:** Sollte Ihr Shop nicht in EUR fakturieren, passen Sie den ISO-Code in der Variable `currency` an.

### Erläuterung der Platzhalter:

| Platzhalter | Beschreibung |
| :--- | :--- |
| **CAMPAIGN_ID** | Fester Wert (Kampagnen-Alias), den Sie von Ihrem Account-Manager erhalten haben. |
| **ORDERTOKEN** | Die dynamische Bestellnummer der jeweiligen Bestellung. |
| **TURNOVER** | Der Netto-Umsatz der Bestellung (ohne Steuern/Versand). |
| **DESCRIPTION** | Optional: Zusätzliche Beschreibung zur Bestellung. |