# Sledování a souhlas

> Předejte parametry kampaně a atribuce až do pokladny a určete, zda se má kupujícím při první návštěvě zobrazit oznámení o podmínkách.

## Parametry sledování

`tprm` je objekt parametrů předávaných do pokladny, kde se zaznamenají k výsledné objednávce. Použijte jej k přiřazení prodejů ke kampani, stránce nebo prodejnímu kanálu.

```js
const entase = new Entase({
  pk: 'YOUR_PUBLISHABLE_KEY',
  tprm: { utm_source: 'newsletter', utm_campaign: 'spring-season' }
});
```

Můžete je kdykoli změnit – použijí se hodnoty nastavené v okamžiku volání `book()`:

```js
entase.setTracking({ utm_source: 'facebook', sgm: 'SEGMENT_CODE' });
entase.getTracking();  // { utm_source: 'facebook', sgm: 'SEGMENT_CODE' }
```

`setTracking()` **nahradí** celý objekt, místo aby do něj hodnoty sloučil. Chcete-li přidat jeden parametr, rozbalte aktuální sadu:

```js
entase.setTracking({ ...entase.getTracking(), utm_content: 'sidebar' });
```

### Předávání parametrů z vlastní adresy URL

Klient nečte řetězec dotazu vaší stránky. Pokud návštěvník přijde na `yoursite.com/concert?utm_source=facebook` a chcete, aby se toto přiřazení zaznamenalo u objednávky, předejte ho sami:

```js
const params = new URLSearchParams(window.location.search);
const forward = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content', 'sgm'];

const tprm = {};
forward.forEach(key => { if (params.has(key)) tprm[key] = params.get(key); });

const entase = new Entase({ pk: 'YOUR_PUBLISHABLE_KEY', tprm });
```

Vložený widget to provádí automaticky pro pevně stanovený seznam parametrů. Viz [Pokročilé možnosti vložení](/developers/js-client/embed-advanced-options.md).

### Segmenty

`sgm` přenáší kód segmentu, který ve vašich statistikách seskupuje prodeje podle kanálu nebo kampaně. Segmenty se vytvářejí ve vašem účtu Entase, nikoli zde – viz [Přehled segmentů](/organizers/segments/segments-overview.md) a [Vytváření a správa segmentů](/organizers/segments/creating-and-managing-segments.md).

## Souhlas

Pokladna požádá kupující při první návštěvě o přijetí oznámení o podmínkách Entase. Po přijetí se odpověď uloží do souboru cookie a při dalších návštěvách se tento krok přeskočí, včetně návštěv jiných webů používajících Entase.

Můžete jej sledovat:

```js
entase.on('checkout.consent', payload => {
  if (payload.data.consent) console.log('accepted');
});
```

### Přeskočení kroku

`collectConsent: false` potlačí oznámení:

```js
const entase = new Entase({ pk: 'YOUR_PUBLISHABLE_KEY', collectConsent: false });
```

Nebo pro jednu rezervaci:

```js
entase.book('EVENT_ID', { collectConsent: false });
```

Udělejte to pouze tehdy, pokud váš vlastní proces pokladny již shromažďuje rovnocenný souhlas – požadavek nezaniká jen proto, že je oznámení skryté. Ve výchozím nastavení ho ponechte zapnuté.

Uložené přijetí se znovu kontroluje podle data poslední změny podmínek, takže návštěvník, který přijal starší verzi, je znovu požádán. Potlačením oznámení potlačíte i toto.
