Shoporama

Sporingskoden i et HTML-felt og salgskoden i temaets thanks.html – med beløbet uden moms og fragt.

Se som Markdown

På Shoporama ligger sporingskoden i et HTML-felt, som kommer på alle sider. Salgskoden skal derimod i temaets thanks.html – kvitteringssiden – fordi det kun er der, Shoporama kender ordren.

Før du starter

  • En bruger med adgang til Webshop → HTML-felter.
  • Adgang til temaets filer til salgskoden. Har I den ikke selv, så send guiden til jeres udvikler med Send til udvikler i Opsætning, eller spørg Shoporamas support (support@shoporama.dk), om de vil sætte koden ind.
  • Jeres butiks-id. Kodestumperne under Program → Opsætning har det sat ind; her står DIN_BUTIK i stedet.

1. Sporingskoden i et HTML-felt

Gå til Webshop → HTML-felter, og opret et nyt felt:

  1. Giv det et navn uden mellemrum, fx affilyflow.
  2. Vælg placeringen i slutningen af <head>.
  3. Sæt koden ind, og gem.
Sporingskode – i et HTML-feltHTML
<script src="https://app.affilyflow.com/track.js" data-store="DIN_BUTIK" async></script>

Shoporama sætter feltet på alle sider – også kurv, kasse og kvittering.

2. Salgskoden i thanks.html

Sæt koden i temaets thanks.html. Den kan stå hvor som helst i filen og rører ikke Shoporamas egen sporing.

Salgskode – kun i temaets thanks.htmlSmarty
<{if $order}>
<script>
  (function () {
    // Laeser beloebet, uanset om det kommer med valuta eller tusindtalsseparator.
    function tal(v) {
      // '499,-' og '1.249,-' er almindelige i Danmark: et afsluttende ',-' fjernes,
      // og et minus taeller kun forrest.
      var t = String(v).replace(/[^0-9.,-]/g, '').replace(/[.,]?-+$/, '').replace(/(?!^)-/g, '').replace(/^[.,]+|[.,]+$/g, '');
      var k = t.lastIndexOf(','), p = t.lastIndexOf('.');
      if (k > -1 && p > -1) t = k > p ? t.split('.').join('').replace(',', '.') : t.split(',').join('');
      else {
        var sep = k > -1 ? ',' : p > -1 ? '.' : '';
        if (sep && (t.split(sep).length > 2 || t.length - t.lastIndexOf(sep) === 4)) t = t.split(sep).join('');
        else if (sep === ',') t = t.replace(',', '.');
      }
      return Number(t) || 0;
    }
    function num(v) {
      var s = String(v).trim();
      var n = Number(s);
      return s && isFinite(n) ? n : tal(s);
    }
    var id = '<{$order->getWebshopOrderId()}>';
    var val = '<{$order->getCurrency()}>';
    var ialt = '<{$order->getTotalPriceExVat()}>';
    var fragt = '<{$order->getShippingPriceExVat()}>';
    // Staar variablerne her endnu, ligger koden i et HTML-felt: send intet.
    if (ialt.indexOf('$order') !== -1) {
      console.error('Affilyflow: salgskoden skal i temaets thanks.html - i et HTML-felt kender Shoporama ikke ordren.');
      return;
    }
    if (id.indexOf('$order') !== -1) id = '';
    if (val.indexOf('$order') !== -1) val = '';
    // Fragt over totalen betyder, at tallene ikke er i samme enhed: send intet (audit 19. okt, M3).
    if (num(fragt) > num(ialt)) {
      console.error('Affilyflow: fragten er stoerre end ordrens total - kontakt info@affilyflow.com.');
      return;
    }
    var total = Math.round((num(ialt) - num(fragt)) * 100) / 100;
    if (!(total > 0)) return;
    var tries = 0;
    (function send() {
      if (!window.affilyflow) { if (tries++ < 50) setTimeout(send, 200); else console.error('Affilyflow: sporingskoden (track.js) mangler paa siden - salget er ikke registreret.'); return; }
      affilyflow.conversion({ order: id, total: total, currency: val });
    })();
  })();
</script>
<{/if}>

Shoporama udfylder selv ordrenummer, valuta og beløb, hvor der står <{…}>. Beløbet er ordrens total uden moms minus fragten uden moms – rabatter er allerede trukket fra. Shoporama dokumenterer ikke, om et eventuelt betalingsgebyr indgår i totalen.

3. Test

Tryk Åbn testlink under testtrinnet i Opsætning, læg en testordre i samme browser, og bliv på siden. Live-testen viser testklikket og købet med ordrenummer og beløb, og spørger om beløbet passer. Et køb uden klik fra et link tælles ikke.

Kommer salget ikke frem, så tjek, at sporingskoden ligger i et HTML-felt og salgskoden i thanks.html – ikke omvendt, og ikke den samme kode to steder.

Typiske fejl

Det ser IÅrsag
Opsætning finder ikke sporingskodenSiden kommer måske fra Shoporamas cache – giv det et øjeblik. Tjek også, at feltet indsættes i slutningen af <head>: et felt, der ikke tilføjes automatisk, kommer ikke på siderne.
Kan ikke se HTML-felter under WebshopBrugeren mangler adgang. Bed butikkens ejer om at give den eller sætte koden ind.
Konsollen skriver "fragten er stoerre end ordrens total"Tallene fra temaet passer ikke sammen. Skriv til info@affilyflow.com.

Cookiebanner

Bruger shoppen Shoporamas eget cookiebanner, kan sporingskoden vente på kundens samtykke til marketing. Se Samtykke og cookies.

Refusioner

Shoporama melder ikke refusioner til os. Et refunderet køb skal I selv afvise inden for godkendelsesperioden – se Godkendelse og refusioner.

Mangler du noget?

Skriv til os – vi svarer hurtigt, og siden bliver rettet.

Kontakt support