- Shopifyssa palvelinpuolen seuranta lähettää jokaisen oston maksetusta tilauksesta, jonka Shopify ilmoittaa webhookilla, joten se ei riipu siitä, latautuuko kiitossivu.
- Kävijätunnus ja mainosklikkausten tunnukset tallennetaan ostoskorin attribuutteina, joten Shopify kopioi ne tilaukseen ja tilaus voidaan yhdistää klikkaukseen.
- Selain- ja palvelintapahtumat jakavat yhden tilauksen ID:stä muodostetun tapahtuma-ID:n, joten Meta, TikTok, Snapchat, Pinterest ja Reddit laskevat jokaisen oston kerran.
- Kun Respect visitor consent on päällä, kävijä, joka kieltäytyy markkinointievästeistä, ei saa kävijätunnusta, eikä hänen selaintapahtumiaan lähetetä mainosalustoille, mutta maksettu tilaus lähetetään silti tilauksen hashatun asiakasdatan kanssa.
- ROASaurusin käyttöönotossa on neljä päävaihetta: asenna sovellus, kytke teeman app embed päälle, lisää kassapikseli ja yhdistä mainosalustasi.
Palvelinpuolen seuranta Shopifyssa tarkoittaa, että jokainen osto tavoittaa Metan, TikTokin ja muut mainosalustat kauppasi tilausdatasta palvelimen lähettämänä, eikä vain ostajan selaimessa olevasta pikselistä. Shopify ilmoittaa jokaisen maksetun tilauksen seurantasovellukselle webhookilla, ja sovellus lähettää sen kunkin alustan Conversions API:in yhdistettynä mainosklikkaukseen, joka toi ostajan sivustolle.
Tämä opas käsittelee kyseisen kulun Shopify-osat: teeman app embedin ja app proxyn, kassan pikselit, orders/paid-webhookin, tilausten yhdistämisen, deduplikoinnin, suostumuksen ja käyttöönoton ROASaurusissa. Yleiseen ajatukseen tutustut ensin artikkelissa mitä palvelinpuolen seuranta on.
Näin palvelinpuolen seuranta toimii Shopifyssa
Klikkaus ja osto tapahtuvat eri hetkinä ja eri paikoissa. Klikkaus näkyy vain selaimessa, laskeutumissivulla. Maksettu tilaus on varma vasta Shopifyn puolella, kun maksu on veloitettu. Palvelinpuolen seuranta tallentaa ensimmäisen, odottaa toista ja yhdistää ne.
Shopify-osat: app embed, app proxy, pikselit ja webhookit
Shopify-kauppa antaa seurantasovellukselle neljä paikkaa, joissa se voi toimia. Jokaisella on eri tehtävä, ja täydellinen käyttöönotto käyttää kaikkia neljää.
| Osa | Missä se toimii | Mitä se tekee |
|---|---|---|
| Teeman app embed | Jokainen kauppasivuston sivu | Lataa seurantaskriptin, lukee mainosklikkausten tunnukset ja tallentaa kävijätunnuksen ostoskoriin |
| App proxy | Polku omalla kauppasi domainilla | Vastaanottaa kauppasivuston tapahtumat first-party-pyyntöinä |
| Customer events (pikselit) | Kassa ja kiitossivu | Raportoi kassavaiheet ja valmistuneen kassan sandbox-ympäristöstä |
| Tilausten webhookit | Shopifyn palvelimet | Lähettävät tilauksen sovellukselle, kun se luodaan ja kun se maksetaan |
Teeman app embed ja app proxy
Teeman app embed on lohko, jonka sovellus lisää teemaasi. Kytket sen päälle teemaeditorissa, joten koodia ei tarvitse liittää. ROASaurus-embed lataa skriptin jokaiselle sivulle. Laskeutumissivulla se lukee klikkaus-ID:t, kuten fbclid, ttclid ja gclid, sekä UTM-parametrit ja tallentaa ne first-party-kävijätunnuksen kanssa.
Skripti lähettää tapahtumansa Shopifyn app proxyn kautta. App proxy välittää pyynnöt oman domainisi polusta, kuten yourstore.com/apps/roasaurus, sovelluksen palvelimelle. Selaimen kannalta tämä on pyyntö omalle sivustollesi, mikä voi auttaa mainosesto-ohjelmia vastaan, jotka estävät tunnettuja seurantadomaineja. Shopify poistaa app proxy -pyynnöistä Cookie-otsakkeen ja vastauksista Set-Cookie-otsakkeen, joten kävijätunnus kulkee itse tapahtuman sisällä, ei evästeessä.
Customer events ja pikselit kassalla
Shopifyn kassalla seurantaskriptit toimivat pikseleinä sandbox-ympäristössä, eivät itse sivulla. Hallitset niitä kohdassa Settings › Customer events. Tyyppejä on kaksi. App-pikselit tulevat sovelluksen mukana ja toimivat tiukassa sandbox-ympäristössä. Custom-pikselit lisää kauppias, ja ne toimivat vähemmän tiukassa sandbox-ympäristössä, joka voi ladata kolmannen osapuolen skriptejä, kuten Meta-pikselin.
ROASaurus käyttää molempia. Sen app-pikseli kytkeytyy päälle, kun asennat sovelluksen. Se raportoi ROASaurukselle kassan aloituksen, yhteystietovaiheen ja valmistuneen kassan. Valinnainen custom-pikseli lisää kassalle Metan, TikTokin, Snapchatin, Pinterestin ja Redditin selainpikselit, ja se lähettää Google Ads -konversiot.
Tilausten webhookit
Webhook on viesti, jonka Shopify lähettää sovellukselle, kun kaupassa tapahtuu jotain. ROASaurus tilaa muun muassa orders/paid- ja orders/create-webhookit. Webhookin tilaus sisältää tilauksen ID:n, arvon, tilausrivit, asiakastiedot, ostoskorin ja kassan tokenit, ostoskorin attribuutit sekä IP-osoitteen ja selaimen, joista tilaus tehtiin. Se tulee Shopifyn palvelimilta, joten mainosesto tai suljettu välilehti ei voi pysäyttää sitä.
Miten tilaukset yhdistetään mainosklikkauksiin
Webhook kertoo ROASaurukselle, että tilaus on maksettu. Hyödyllisen konversion lähettämiseksi ROASaurus tarvitsee myös tiedon siitä, mikä kävijä teki tilauksen, koska kävijätietue sisältää klikkaus-ID:t. Se kokeilee näitä yhteyksiä järjestyksessä, suorimmasta heikoimpaan:
| Menetelmä | Näin se toimii | Milloin sitä käytetään |
|---|---|---|
| Ostoskorin attribuutti | Skripti kirjoittaa kävijätunnuksen sekä fbc-, fbp-, ttp-, gclid- ja ttclid-arvot ostoskorin attribuutteina. Shopify kopioi ne tilaukseen. | Ensisijainen valinta |
| Ostoskorin ja kassan tokenit | Skripti yhdistää ostoskorin tokenin kävijään, ja kassapikseli yhdistää kassan tokenin. Webhook sisältää molemmat tokenit. | Kun ostoskorin attribuutti puuttuu |
| Kassatapahtuma | Kassapikseli raportoi valmistuneen kassan tilauksen ID:n ja kävijätunnuksen kanssa. | Kun mikään token ei täsmää |
| Sähköpostiosoite | Kävijän hashattu sähköposti, jonka hän on antanut aiemmin, esimerkiksi kassan yhteystietovaiheessa. | Kun kassatapahtumaa ei ole |
| IP-osoite ja selain | Kävijä, joka nähtiin samalla IP-osoitteella ja selaimella vähän ennen tilausta. | Vain kun täsmälleen yksi kävijä sopii |
Ostoskorin attribuutit ovat syy siihen, miksi yhdistäminen on Shopifyssa suoraa. Ne ovat ostoskoriin tallennettuja avain-arvo-pareja, ja Shopify kopioi ne tilaukseen. Tuotesivulla kirjoitettu arvo on yhä olemassa, kun webhook saapuu, vaikka ostaja olisi sulkenut kiitossivun liian aikaisin.
Yksi poikkeus: nopeutetun kassan painikkeet, kuten Buy it now, ohittavat ostoskorin. ROASaurus neuvoo poistamaan ne käytöstä, jotta Add to cart seurataan aina. Niiden kautta tehdyt tilaukset voivat silti yhdistyä kassan tokenin avulla.
Yksi tilaus alusta loppuun
Näin yksi Meta-mainoksesta tullut tilaus etenee, kun custom-pikseli on asennettu:
page_view ?fbclid=IwAR2x…Ostaja saapuu Meta-mainoksesta. Klikkaus-ID tallennetaan kävijälle 3f2a.cart _tl=3f2a _tl_fbc=fb.1.…Kävijätunnus ja Metan klikkausarvo tallennetaan ostoskorin attribuutteina.checkout_started ic-c1a9…Kassan token yhdistetään samaan kävijään.checkout_completed order-6123456789012Kassapikseli raportoi tilauksen, ja Meta-pikseli lähettää Purchase-tapahtuman tällä tapahtuma-ID:llä.orders/paid #1042 id 6123456789012 $86.00Shopify lähettää maksetun tilauksen webhookilla.Meta CAPI Purchase order-6123456789012Lyhyen odotuksen jälkeen palvelintapahtuma lähtee klikkaus-ID:iden, IP-osoitteen ja user agentin kanssa.Milloin osto lähetetään: orders/paid vai orders/create
Se, mikä webhook laukaisee oston, riippuu siitä, miten asiakkaasi maksavat. Valitset sen kassatyypiksi kohdassa Store settings.
| Kassatyyppi | Webhook | Milloin osto lähetetään |
|---|---|---|
| Shopify checkout | orders/paid | Kun tilaus on maksettu. Tilauksia, joita ei koskaan makseta, ei lähetetä. |
| External / COD checkout | orders/create | Kun tilaus luodaan. Postiennakolle sekä kassoille, kuten Checkify ja CheckoutChamp, jotka luovat Shopify-tilauksia. |
ROASaurus pitää jokaista ostoa hetken aikaa odotuksessa sen jälkeen, kun webhook on saapunut. Sinä aikana selaimen valmistuneen kassan tapahtuma yleensä saapuu myös. Sen sivun URL, IP-osoite ja user agent lisätään sitten palvelintapahtumaan kävijätietueen klikkaus-ID:iden viereen. Tilaukset, jotka Shopify merkitsee testitilauksiksi, tallennetaan mutta niitä ei lähetetä mainosalustoille.
Miten deduplikointi toimii selainpikseleiden kanssa
Kun selainpikselit toimivat palvelintapahtumien rinnalla, alusta saa jokaisen oston kahdesti ja sen on säilytettävä vain yksi. Se tekee sen tapahtuma-ID:n avulla. ROASaurus antaa oston molemmille kopioille saman ID:n, joka muodostetaan Shopify-tilauksen ID:stä: order-6123456789012 tilaukselle, jonka ID on 6123456789012. Se on pitkä numero tilauksen admin-URL-osoitteessa, ei tilauksen nimi, kuten #1042. Kassapikseli käyttää sitä selaimen Purchase-tapahtumassa, ja palvelin käyttää sitä Conversions API -tapahtumassa. Esimerkiksi Meta säilyttää yhden kopion, kun tapahtuman nimi ja tapahtuma-ID täsmäävät ja molemmat saapuvat 48 tunnin sisällä.
| Alusta | ROASaurusin selainpikseli | Deduplikoidaan palvelintapahtuman kanssa |
|---|---|---|
| Meta, TikTok, Snapchat, Pinterest, Reddit | Kauppasivusto ja kassa | Kyllä |
| X, Microsoft Advertising, Taboola | Ei mitään, vain palvelintapahtumat | Ei mitään yhdistettävää |
| Google Ads | Vain kassa, custom-pikselin kautta | Lähetetään kerran, kassalta |
Tapahtuma-ID toimii vain tapahtumien välillä, jotka sen sisältävät. Jos toinen sovellus lähettää saman pikselin, sen tapahtumilla on omat ID:t, ja alusta laskee tilauksen uudelleen. Shopifyssa tavallisia syitä ovat samaan pikseliin yhdistetty Facebook & Instagram -kanava, TikTok-sovellus ja theme.liquid-tiedostoon liitetty pikselikoodi. Päällekkäisistä ostotapahtumista kertova oppaamme näyttää, miten ne löytää, ja Kaksoislaskennan estäminen listaa korjaukset.
Suostumus Shopifyn Customer Privacy API:n kautta
Shopifyn Customer Privacy API tallentaa jokaisen kävijän evästevalinnan. Evästebanneri täyttää sen, olipa kyseessä Shopifyn oma banneri tai API:in yhdistetty suostumussovellus. Skriptit ja pikselit voivat sitten kysyä siltä, onko markkinointi sallittu tälle kävijälle.
Kun Respect visitor consent on päällä, mikä on oletus kohdassa Store settings, ROASaurusin kauppasivuston skripti ja kassapikselit kysyvät API:lta ennen seurantaa.
- Kävijätunnus, klikkaus-ID:t ja selaustapahtumat tallennetaan
- Selainpikselit latautuvat ja lähettävät tapahtumia
- Maksettu tilaus lähetetään palvelinpuolelta ja yhdistetään mainosklikkaukseen
- Kävijätunnusta ei aseteta, joten hänen käyntejään ja mainosklikkauksiaan ei yhdistetä häneen
- Selaintapahtumat säilytetään ilman kävijätunnusta, IP-osoitetta tai selaimen tietoja, eikä niitä lähetetä mainosalustoille
- Maksettu tilaus lähetetään silti palvelinpuolelta tilauksen hashatun asiakasdatan sekä tilauksen IP-osoitteen ja user agentin kanssa
- Mainosalustalle päätyvässä tapahtumassa ei ole klikkaus-ID:tä
Sähköpostit, puhelinnumerot, nimet ja osoitteet hashataan SHA-256:lla ennen kuin ne lähetetään mainosalustalle. Kolme muuta yksityiskohtaa on tärkeää:
- Bannerisi päättää. ROASaurus noudattaa sitä, mitä API ilmoittaa. Jos API ei ole saatavilla sivulla, ROASaurus pitää kävijää suostuvana, joten tarkista, että bannerisi on yhdistetty siihen.
- Laskeutumissivu pysyy tilauksessa. Shopify tallentaa laskeutumissivun osoitteen jokaiseen tilaukseen, ja se voi sisältää kampanjatunnisteita ja klikkaus-ID:itä. ROASaurus käyttää sitä omissa attribuutioraporteissaan, myös kieltäytyneiden kävijöiden osalta, eikä lähetä sitä mainosalustoille.
- Tilauksen lähettäminen on oikeudellinen päätös. Se, saako kieltäytyneen kävijän maksetun tilauksen lähettää lainkaan, on kauppasi oikeudellinen kysymys.
Consent Mode v2 ja GDPR -oppaamme selittää säännöt yleisellä tasolla, ja Suostumus ja tietosuoja sisältää yksityiskohdat.
Näin otat palvelinpuolen seurannan käyttöön Shopifyssa ROASaurusissa
Tee käyttöönottovaiheet tässä järjestyksessä:
- Asenna sovellus
Siirry kohtaan Add a store, valitse Shopify, syötä
.myshopify.com-domainisi ja klikkaa Install app. Hyväksy sovellus Shopifyssa. ROASaurus rekisteröi tilausten webhookit ja kytkee app-pikselinsä päälle. - Kytke teeman app embed päälle
Klikkaa Tracking & platforms -sivulla Open theme editor, kytke ROASaurus app embed päälle ja tallenna.
- Lisää kassapikseli
Siirry Shopify adminissa kohtaan Settings › Customer events ja lisää custom-pikseli nimeltä ROASaurus. Aseta sen käyttöoikeudeksi Not required, koska ROASaurus-skripti tarkistaa kävijän markkinointivalinnan itse. Liitä koodinpätkä sivulta Tracking & platforms. Tarvitset tätä pikseliä kassan selainpikseleihin ja Google Adsia varten.
- Yhdistä mainosalustasi
Klikkaa kohdassa Tracking & platforms jokaisen alustan kohdalla Add pixel tai Metalle Connect with Facebook. Pidä valinta, joka lataa myös selainpikselin, päällä, jos haluat deduplikoidut selaintapahtumat.
- Tarkista kaupan asetukset
Valitse kohdassa Store settings kassatyyppisi ja pidä Respect visitor consent päällä, jos myyt alueilla, joilla suostumus vaaditaan.
- Poista muut lähettäjät
Poista Facebook & Instagram -kanavassa tämä pikseli datanjakoasetuksista. Datanjaon tason alentaminen ei riitä, koska jokainen taso, myös Standard, lähettää Meta-pikselin selaimesta. Jos TikTok-sovellus lähettää saman pikselin, pysäytä se myös siellä ja poista pikselikoodi teemastasi.
Custom-pikselin koodinpätkä näyttää tältä. Kopioi se sivulta Tracking & platforms, jossa kauppa-avaimesi on jo täytetty. Shopify-käyttöönotto-opas sisältää samat vaiheet.
self.tl = this; document.head.appendChild(document.createElement('script')).src = 'https://app.roasaurus.com/c.js?k=YOUR_STORE_KEY';Miten tarkistat, että se toimii
Testaa yhdellä oikealla tilauksella, ennen kuin luotat lukuihin:
- Avaa kauppasi niin, että URL-osoitteen lopussa on
?roasaurus=connected. Ilmoitus vahvistaa, että skripti on käytössä. - Liitä Metalle Events Manager › Test events -kohdan koodi pikselin Test event code -kenttään.
- Tee oikea, edullinen tilaus ja hyvitä se jälkeenpäin. Shopifyn testitilauksia ei lähetetä.
- Event log -osiossa tilauksen palvelinlähetys näkyy tilalla sent jokaisen alustan kohdalla alustan vastauksen kanssa.
- Tarkista alustan testinäkymästä, että selaimen ja palvelimen Purchase jakavat tapahtuma-ID:n, joka on
order-ja Shopify-tilauksen ID. - Poista testitapahtumakoodi jälkeenpäin.
Mitä palvelinpuolen seuranta Shopifyssa ei korjaa
- Kieltäytyminen suostumuksesta. Tilaukset kävijöiltä, jotka kieltäytyivät markkinointievästeistä, lähetetään, mutta ilman klikkaus-ID:tä, joten mainosalustat yhdistävät ne huonommin.
- Safarin evästerajoitukset. Ostaja, joka palaa yli 7 päivän jälkeen, voi näyttää uudelta kävijältä. First-party-seurantasubdomain pitää keruun domainissasi, mutta Safari voi silti rajoittaa nämä evästeet 7 päivään.
- Attribuutioerot. Jokainen mainosalusta lukee myynnit edelleen ansioksi omilla ikkunoillaan ja malleillaan. Jos haluat vertailla kanavia yhdellä sääntöjoukolla, käytä omaa attribuutiotasi.
- Muut sovellukset samalla pikselillä. Tapahtuma-ID:t yhdistävät vain tapahtumat, jotka jakavat ne.
Se, minkä se korjaa, on osto, joka tapahtui mutta ei koskaan päässyt mainosalustalle, koska selaintapahtuma katosi. Siitä, mitä ROASaurus lähettää kullekin alustalle, kerrotaan sivuilla palvelinpuolen seuranta ja Shopify-integraatio.
Lähteet
- Shopify: Customer Privacy API
- Shopify: Authenticate app proxies
- Shopify Help Center: Manage your custom pixels
- Shopify Help Center: Facebook data sharing
- Meta: Handling Duplicate Pixel and Conversions API Events
ROASaurusissa
- Ohje: ROASaurus-palvelun käyttöönotto Shopifyssa
- Shopify-integraatio
- Palvelinpuolen seuranta ROASaurus-palvelussa
- Ohje: suostumus ja yksityisyys