- WooCommercen palvelinpuolen seuranta lähettää jokaisen maksetun tilauksen kaupan omasta tilausdatasta Metalle, TikTokille ja muille mainosalustoille, joten osto lasketaan, vaikka selainpikseli ei koskaan laukeaisi.
- ROASaurus katsoo WooCommerce-tilauksen maksetuksi, kun sen tila on processing tai completed, mikä kattaa postiennakkotilaukset ja tilisiirrot sen jälkeen, kun vahvistat ne.
- ROASaurus-lisäosa tallentaa kävijätunnuksen ja mainosklikkauksen evästeet jokaiseen tilaukseen kassalla, joten tilaus yhdistetään mainosklikkaukseensa tarkasti.
- Ilman lisäosaa webhookit toimittavat silti jokaisen maksetun tilauksen, mutta kiitossivun perusteella ei yhdistetä: tilaukset yhdistetään vain aiemmin sivustolla annetun sähköpostin tai yksilöllisen IP-osoitteen ja selaimen perusteella.
- WooCommercessa ROASaurus-skripti seuraa suostumuslisäosia, jotka käyttävät WP Consent API:a, kuten Complianz ja CookieYes, sekä Cookiebot-, OneTrust- ja IAB TCF -bannereita.
WooCommercen palvelinpuolen seuranta lähettää jokaisen maksetun tilauksen kauppasi tilausdatasta Metalle, TikTokille ja muille mainosalustoille sen sijaan, että luottaisi vain ostajan selaimessa olevaan pikseliin. Osto raportoidaan, vaikka mainosesto pysäyttäisi pikselin tai ostaja ei koskaan pääsisi kiitossivulle.
Tämä opas käsittelee, miksi WooCommerce-kaupat menettävät konversioita, mitä tilausdataa WooCommerce antaa ja kahta tapaa yhdistää ROASaurus: WordPress-lisäosa tai webhookit. Sen jälkeen käsitellään yhdistäminen, suostumus, käyttöönotto ja testaus. Yleisen ajatuksen saat artikkelista mitä palvelinpuolen seuranta on.
Miksi WooCommerce-kaupat menettävät konversioita?
Selainpikseli raportoi oston vain, kun pikseliskripti latautuu, ostaja pääsee kiitossivulle ja selain lähettää tapahtuman. Jokainen vaihe voi epäonnistua. Itse tilaus on silti tietokannassasi, koska WooCommerce tallentaa sen palvelimelle.
| Mitä tapahtuu | Selainpikseli | Tilausdata WooCommercessa |
|---|---|---|
| Ostaja maksaa uudelleenohjauksella (esimerkiksi PayPalilla tai pankkisovelluksella) ja sulkee välilehden | Ei kiitossivua, ei ostotapahtumaa | Maksettu tilaus, tila processing |
| Mainosesto tai yksityisyysasetus estää pikseliskriptin | Ei ostotapahtumaa | Maksettu tilaus |
| Kävijä kieltäytyy markkinointievästeistä | Pikselin ei saa latautua | Maksettu tilaus |
| Tilisiirto vahvistetaan kolmen päivän kuluttua | Yhtään selainta ei ole auki tuolloin | Tila vaihtuu tilasta on hold tilaan processing |
| Välimuisti- tai skriptioptimointilisäosa viivästyttää pikseliä | Tapahtuma voi myöhästyä tai puuttua | Maksettu tilaus |
Puuttuvat ostot aiheuttavat kahdenlaista vahinkoa. Mainosalusta optimoi harvemman konversion perusteella, ja raporttisi näyttävät todellista pienempää tuottoa. Tässä toinen vaikutus luvuin esimerkkikaupalle, jonka kannattavuusrajan ROAS on 2.2:
| Esimerkkikauppa, yksi kuukausi | Vain pikseli | Kaikki maksetut tilaukset |
|---|---|---|
| Metan mainoskulut | $8,000 | $8,000 |
| Ostot Meta-klikkauksista | 260 | 320 |
| Liikevaihto, $60 per tilaus | $15,600 | $19,200 |
| ROAS | 15,600 ÷ 8,000 = 1.95 | 19,200 ÷ 8,000 = 2.40 |
| Kannattavuusrajaan verrattuna (2.2) | Näyttää tappiolta | Kannattava |
Mitä WooCommerce antaa: tilaukset, webhookit ja REST API
Mitkä tilaustilat lasketaan maksetuiksi?
WooCommerce kuvaa tilan processing maksun vastaanotetuksi niin, että tilaus odottaa toimitusta. ROASaurus lähettää tilaukset, joiden tila on processing tai completed, ja ohittaa tilat pending payment, on hold, failed, cancelled ja refunded. Kaksi maksutapaa vaatii huomiota:
- Postiennakko. WooCommerce asettaa nämä tilaukset tilaan processing, kunnes maksu on kerätty, joten ROASaurus lähettää ne, kun ne tehdään. Poikkeus ovat tilaukset, joissa on ladattava tuote: ne menevät tilaan on hold. Katso postiennakkotilausten seuranta, jos haluat tietää, mitä se tarkoittaa palautuksille ja vastaanotosta kieltäytymisille.
- Tilisiirto. WooCommerce asettaa nämä tilaukset tilaan on hold, kun varmistat maksun. ROASaurus lähettää ne, kun siirrät ne tilaan processing.
Webhookit
Webhook on viesti, jonka WooCommerce lähettää toiseen järjestelmään, kun jokin muuttuu. Luot sen kohdassa WooCommerce › Settings › Advanced › Webhooks. Tilausaiheen sisältö on sama tilausobjekti, jonka REST API palauttaa. Jokaisessa toimituksessa on X-WC-Webhook-Signature-otsake: sisällön base64-muotoinen HMAC-SHA256-hash, joka on tehty valitsemallasi salaisella avaimella. ROASaurus tarkistaa kyseisen allekirjoituksen ennen kuin hyväksyy tilauksen.
Käytännössä kaksi yksityiskohtaa on tärkeää. WooCommerce toimittaa webhookit taustalla, oletuksena WP-Cronilla, joten toimitus voi viivästyä, kun jono ruuhkautuu. Lisäksi WooCommerce poistaa webhookin käytöstä, kun yli viisi toimitusta peräkkäin epäonnistuu.
REST API
REST API:n avulla ROASaurus voi pyytää tilaukset itse. Vain luku -oikeuksilla olevalla API-avaimella ROASaurus kysyy 5 minuutin välein tilauksia, joiden tila on processing tai completed ja jotka ovat muuttuneet edellisen tarkistuksen jälkeen, 30 minuutin päällekkäisyydellä. Tilaukset, jotka sillä jo on, ohitetaan. Näin saadaan kiinni tilaukset, jotka webhook ohitti.
| Tilauksen kenttä | Mitä ROASaurus sillä tekee |
|---|---|
id | Muuttuu tapahtuma-ID:ksi order-1042, jonka palvelin- ja selaintapahtumat jakavat |
total | Oston arvo: kokonaissumma, joka sisältää verot ja toimituskulut |
| Laskutussähköposti, puhelinnumero, nimi, kaupunki, osavaltio, postinumero, maa | Hashataan SHA-256:lla ja lähetetään asiakasdatana |
customer_ip_address, customer_user_agent | Lähetetään tapahtuman mukana ja käytetään tilauksen yhdistämiseen kävijään |
line_items | Tuotetunnukset (muunnelman tunnus, jos sellainen on), määrät ja hinnat |
date_paid_gmt | Tapahtuman aika webhookista tai REST API:sta tuleville tilauksille (luontipäivä, jos maksupäivää ei ole) |
meta_data | Lisäosan kanssa: kävijätunnus sekä Metan ja TikTokin evästeet |
Lisäosa vai webhookit: kaksi tapaa yhdistää
Molemmat yhteydet lähettävät jokaisen maksetun tilauksen. Ne eroavat siinä, kuinka hyvin kukin tilaus yhdistetään mainosklikkaukseen, joka toi ostajan sivustolle.
| ROASaurus-lisäosa | Vain webhookit | |
|---|---|---|
| Mitä asennat | WordPress-lisäosa (PHP 7.4 ja WooCommerce 6.0 tai uudempi) | Ei mitään: webhook WooCommercen asetuksissa |
| Miten tilaukset saapuvat | Lisäosa lähettää jokaisen maksetun tilauksen ROASaurusin Orders API:in | WooCommerce lähettää Order updated -ilmoituksen; valinnainen REST API -tarkistus 5 minuutin välein |
| Seurantaskripti | Lisäosa lataa sen jokaisella sivulla | Lisäät sen itse, esimerkiksi WPCode-lisäosalla tai teemaasi |
| Kävijätunnus ja klikkausevästeet tilauksella | Kyllä, tallennetaan kassalla (perinteinen kassa ja lohkokassa) | Ei |
| Selaimen osto kiitossivulla | Kyllä, samalla tapahtuma-ID:llä kuin palvelintapahtuma | Ei |
| Yhdistäminen kiitossivun perusteella | Kyllä | Ei |
Voit käyttää molempia samanaikaisesti. Lisäosa tallentaa kävijätunnuksen tilaukseen tilauksen metatietona, ja webhookin sisältö kuljettaa sen mukanaan. ROASaurus tallentaa jokaisen tilauksen kerran WooCommercen tilaustunnuksen perusteella, joten lisäosa ja webhook eivät koskaan luo kahta ostoa. Lisäosa ilmoittaa myös tukevansa WooCommercen High-Performance Order Storagea.
Miten WooCommerce-tilaus yhdistetään mainosklikkaukseen?
Mainosalusta voi lukea oston mainoksen ansioksi vain, kun se pystyy yhdistämään nämä kaksi. ROASaurus tekee tämän yhdistämällä tilauksen kävijään, joka klikkasi mainosta, ja tämä kävijä kantaa mukanaan klikkaus-ID:t (kuten fbclid ja ttclid) ja UTM-parametrit laskeutumisesta. Se kokeilee näitä menetelmiä järjestyksessä ja pysähtyy ensimmäiseen, joka toimii:
- Tilaukseen tallennettu kävijätunnus. Vain lisäosan kanssa. Tämä on tarkka yhteys.
- Selaimen osto kiitossivulla, jossa on sama tilaustunnus. Vain lisäosan kanssa.
- Hashattu sähköposti, jonka kävijä antoi aiemmin sivustollasi, esimerkiksi Klaviyon, Attentiven tai Wisepopsin ponnahduslomakkeessa tai Identify-kutsun kautta.
- Sama IP-osoite ja selain, nähtynä 3 tuntia ennen tilausta ja 15 minuuttia sen jälkeen, mutta vain silloin, kun täsmälleen yksi kävijä sopii. Jaetuissa verkoissa, kuten toimistoissa ja mobiilioperaattoreilla, useat kävijät jakavat usein saman IP-osoitteen, eikä ROASaurus silloin arvaa.
ROASaurus odottaa hetken ennen kunkin oston lähettämistä, jotta kiitossivun tapahtuma ehtii saapua ensin. Jos tilausta ei ole vieläkään yhdistetty, se yrittää uudelleen lähetyshetkellä. Orders-sivu näyttää tuloksen tilauskohtaisesti Matched by-sarakkeessa. Lisäosan kävijätunnuksella yhdistetyissä tilauksissa lukee cart, sama merkintä, jonka Shopify-tilaukset saavat.
| Lähetetty Metalle tilaukselle 1042 | Yhdistetty (lisäosa) | Ei yhdistetty (vain webhookit) |
|---|---|---|
Tapahtuma-ID order-1042 | Kyllä | Kyllä |
| Hashattu sähköposti, puhelinnumero, nimi ja osoite | Kyllä | Kyllä |
| Tilauksen IP-osoite ja selain | Kyllä | Kyllä |
Metan klikkaus-ID ja selaimen tunnus (fbc, fbp) | Kyllä | Ei |
Hashattu kävijätunnus (external_id) | Kyllä | Ei |
| Mainosklikkaus ROASaurus-attribuutiossa | Klikkauksen kampanja ja mainos | Näkyy suorana tai tuntemattomana |
Nämä klikkaustunnisteet nostavat Metan yhdistämisprosenttia tapahtumalle. Event Match Quality selittää, miten Meta pisteyttää ne.
Suostumus WooCommercessa
Jokaisessa ROASaurus-kaupassa on asetus Respect visitor consent, joka on oletuksena päällä. WooCommercessa ROASaurus-skripti lukee kävijän valinnan WP Consent API:sta, jonka suostumuslisäosat, kuten Complianz ja CookieYes, täyttävät. Se lukee myös Cookiebot-, OneTrust- ja IAB TCF -bannerit sekä Google consent moden. Kunnes kävijä hyväksyy markkinointievästeet, skripti ei aseta kävijätunnusta eikä lataa selainpikseleitä.
Kun kävijä kieltäytyy, skripti ei aseta kävijätunnusta, ei säilytä klikkaus-ID:itä eikä laukaise selainpikseleitä, eikä lisäosa tallenna seurantaevästeitä tilaukselle. Maksettu tilaus lähetetään silti palvelimelta yhdistetyille mainosalustoillesi tilauksen hashatun asiakasdatan sekä tilauksen IP-osoitteen ja selaimen kanssa. Jos saamasi oikeudellinen neuvonta toteaa, että myös ostotapahtumat edellyttävät ennakkosuostumusta, ota yhteyttä ROASaurukseen ennen kuin otat palvelinpuolen ostot käyttöön. Suostumusta käsittelevä ohjesivu kertoo yksityiskohdat, ja kirjoitus Consent Mode v2 ja GDPR käsittelee oikeudellista taustaa.
Näin otat WooCommercen palvelinpuolen seurannan käyttöön
Lisäosareitin vaiheet ovat nämä:
- Lisää kauppa
Siirry ROASaurusissa kohtaan Add a store, valitse WooCommerce ja syötä domain, jolla asiakkaasi vierailevat.
- Luo API-avain
Avaa Store settings ja klikkaa kohdassa Orders API Create API key. Kopioi avain heti: se näytetään vain kerran, kauppa-avaimesi vieressä. Päätepiste on kyseisellä sivulla osoite, joka on polun
/api/v1/ordersedessä. - Asenna lisäosa
Lataa lisäosa ja lähetä zip-tiedosto WordPressissä kohdassa Plugins › Add New Plugin › Upload Plugin. Aktivoi se sen jälkeen.
- Syötä avaimet
Syötä kohdassa WooCommerce › ROASaurus päätepiste, kauppa-avain ja API-avain ja tallenna.
- Yhdistä mainosalustasi
Käytä kohdassa Tracking & platforms toimintoa Connect with Facebook tai Add pixel Metalle, TikTokille ja muille. Valitse vaihtoehto, joka lataa myös selainpikselin, jotta kiitossivun osto deduplikoidaan palvelintapahtuman kanssa.
- Määritä suostumus ja testaa
Estä skripti suostumustyökalussasi, kunnes kävijä hyväksyy markkinointievästeet, ja tee sitten testitilaus.
Ilman lisäosaa lisää Tracking & platforms -sivun skriptitunniste jokaiselle sivulle ja luo sitten webhook. Kauppasi Connection-välilehti näyttää webhook-URL-osoitteesi. Pidä se yksityisenä: kuka tahansa, jolla on URL, voi lähettää tilauksia kauppaasi.
WooCommerce › Settings › Advanced › Webhooks › Add webhook Status Active Topic Order updated Delivery URL (your webhook URL from the Connection tab) Secret (a secret of your choice; paste the same one in ROASaurus) API version WP REST API Integration v3
Varmuuskopioksi luo avain kohdassa WooCommerce › Settings › Advanced › REST API lukuoikeudella. Liitä consumer key ja secret Connection-välilehdelle, tallenna ja paina Test connection. Fetch orders now hakee viimeaikaiset maksetut tilaukset heti. WooCommerce-integraatiosivu listaa kaikki vaihtoehdot yhdessä paikassa.
Miten WooCommercen palvelinpuolen seuranta testataan?
Testaa ensin selainpuoli, tee sitten tilaus ja seuraa sitä mainosalustoille.
- Avaa kauppasi niin, että osoitteessa on
?roasaurus=connected. Ilmoitus vahvistaa, että skripti toimii. Kun käytät parametria?roasaurus=debug, skripti kirjaa selaimen konsoliin sen, mitä se lähettää. - Kohdassa Collected events (Event log) sivunäytöillä pitäisi näkyä kävijätunnus.
- Tee testitilaus. Postiennakko on nopein, koska tilaus on heti tilassa processing.
- Connection-välilehdellä Last order received näyttää viimeisimmän tilauksen ajan.
- Kohdassa Server deliveries (Event log) jokaiselle yhdistetylle alustalle tulee rivi, jonka tila on sent, sekä alustan vastaus.
PageView visitor 3f9c2a1eSkripti ladattu suostumuksellaPurchase order-1042Kiitossivu, selainpikselit laukesivatorder 1042 processingVastaanotettu lisäosaltaMeta Purchase sentSama tapahtuma-ID, deduplikoituTikTok CompletePayment sentSama tapahtuma-ID, deduplikoituNähdäksesi tapahtuman Metassa liitä Events Manager › Test events -kohdan koodi ROASaurusissa Meta-pikselisi Test event code -kenttään. Poista se, kun olet valmis, koska koodi on tarkoitettu vain testaukseen. Jos lisäosa ei pysty toimittamaan tilausta, se lisää WooCommerceen tilaushuomautuksen, joka alkaa tekstillä "ROASaurus: order not sent" ja jota seuraa virhe.
Vältettävät virheet
- Aiheen Order created käyttö. Uudelleenohjauksella maksetut tilaukset luodaan tilassa pending payment. ROASaurus ohittaa maksamattomat tilaukset, eikä toista "created"-viestiä tule, kun maksu saapuu. Käytä aihetta Order updated.
- Salainen avain ei täsmää. ROASaurus hylkää toimituksen, jonka allekirjoitus ei täsmää sen tietämän salaisen avaimen kanssa. Yli viiden peräkkäisen epäonnistumisen jälkeen WooCommerce poistaa webhookin käytöstä. Korjaa salainen avain, aseta webhook takaisin tilaan Active ja lisää REST API -avain, jotta välillä jääneet tilaukset haetaan.
- Kaksi työkalua lähettää saman pikselin. Jos toinen lisäosa lähettää myös Meta- tai TikTok-pikselisi, se käyttää omia tapahtuma-ID:itään ja alusta laskee jokaisen myynnin kahdesti. Kytke se pois päältä kyseiseltä pikseliltä. Katso kaksoislaskennan estäminen ja päällekkäiset ostotapahtumat.
- Odotat ostoskoriin lisäys -tapahtumia. WooCommercessa skripti seuraa itsenäisesti vain sivunäyttöjä. Tuotenäytöt ja ostoskoriin lisäykset tunnistetaan automaattisesti vain Shopifyssa. Kehittäjä voi lähettää ne
tlq-track-kutsulla. - Odotat Google Ads -konversioita. ROASaurus lähettää Google Adsin ostokonversiot vain Shopifyn kassalta. WooCommercesta se lähettää ostot Metalle, TikTokille, Snapchatille, Pinterestille, Redditille, X:lle, Microsoft Adsille, Taboolalle, LinkedInille ja muille yhdistämillesi mainosalustoille.
- Myöhästyvät tilisiirrot. Meta hyväksyy palvelintapahtumat enintään 7 päivää tapahtuma-ajan jälkeen. Lisäosa lähettää tilauksen sen luontipäivämäärällä, joten Meta hylkää tilisiirron, joka vahvistetaan yli 7 päivää kassan jälkeen. Webhookilla tai REST API:lla saapuvat tilaukset käyttävät sen sijaan maksupäivää. Huomaa myös, että kiitossivu laukaisee selaimen oston kassalla, ennen kuin siirto on maksettu. Jos maksu vahvistetaan yli 48 tuntia myöhemmin, Meta ja TikTok eivät voi yhdistää selaimen ja palvelimen kopioita, ja tilisiirto, jota ei koskaan makseta, säilyttää selaimen ostonsa.
Kun tilaukset alkavat tulla, attribuutiosta näet, mistä kampanjoista ja mainoksista ne tulivat.
Lähteet
- WooCommerce: Webhooks Documentation
- WooCommerce REST API Documentation - WP REST API v3
- WooCommerce: Order Statuses Documentation
- WooCommerce: Cash on Delivery Documentation
- Meta for Developers: Server Event Parameters