- A WooCommerce szerveroldali követés minden kifizetett rendelést a webáruház saját rendelési adataiból küld el a Metának, a TikToknak és más hirdetési platformoknak, így a vásárlás akkor is számít, ha a böngészőpixel sosem sül el.
- A ROASaurus akkor számít kifizetettnek egy WooCommerce-rendelést, ha az állapota processing vagy completed, ami magában foglalja az utánvétes rendeléseket és a banki átutalásokat is, amint megerősíted őket.
- A ROASaurus plugin a pénztárnál minden rendeléshez elmenti a látogatóazonosítót és a hirdetési kattintás sütijeit, így a rendelés pontosan a hirdetési kattintásához kapcsolódik.
- A plugin nélkül a webhookok továbbra is minden kifizetett rendelést kézbesítenek, de nincs köszönőoldalas párosítás: a rendeléseket csak egy korábban az oldalon megadott e-mail-cím vagy egy egyedi IP-cím és böngésző alapján lehet összekötni.
- WooCommerce-on a ROASaurus script követi a WP Consent API-t használó hozzájárulás-kezelő pluginokat, például a Complianzt és a CookieYes-t, valamint a Cookiebot, a OneTrust és az IAB TCF bannereket.
A WooCommerce szerveroldali követés minden kifizetett rendelést a webáruházad rendelési adataiból küld el a Metának, a TikToknak és más hirdetési platformoknak, ahelyett, hogy csak a vásárló böngészőjében futó pixelre támaszkodna. A vásárlásról akkor is értesül a platform, ha egy reklámblokkoló megállítja a pixelt, vagy a vásárló sosem jut el a köszönőoldalra.
Ez az útmutató azt tárgyalja, miért veszítenek konverziókat a WooCommerce webáruházak, milyen rendelési adatot ad a WooCommerce, és a ROASaurus csatlakoztatásának két módját: a WordPress plugint vagy a webhookokat. Ezután jön a párosítás, a hozzájárulás, a beállítás és a tesztelés. Az alapötlethez olvasd el ezt: mi a szerveroldali követés.
Miért veszítenek konverziókat a WooCommerce webáruházak?
A böngészőpixel csak akkor jelent vásárlást, ha a pixel scriptje betöltődik, a vásárló eljut a köszönőoldalra, és a böngésző elküldi az eseményt. Mindegyik lépés elbukhat. Maga a rendelés ettől még ott van az adatbázisodban, mert a WooCommerce a szerveren menti el.
| Mi történik | Böngészős pixel | Rendelési adatok a WooCommerce-ban |
|---|---|---|
| A vásárló átirányítással fizet (például PayPallal vagy banki alkalmazással), és bezárja a lapot | Nincs köszönőoldal, nincs vásárlási esemény | Kifizetett rendelés, processing állapot |
| Egy reklámblokkoló vagy adatvédelmi beállítás blokkolja a pixel scriptjét | Nincs vásárlási esemény | Kifizetett rendelés |
| A látogató elutasítja a marketingsütiket | A pixel nem töltődhet be | Kifizetett rendelés |
| Egy banki átutalást három nappal később erősítenek meg | Abban a pillanatban nincs megnyitva böngésző | Az állapot on hold helyett processing lesz |
| Egy gyorsítótárazó vagy scriptoptimalizáló plugin késlelteti a pixelt | Az esemény késhet, vagy elmaradhat | Kifizetett rendelés |
A hiányzó vásárlások kétféle kárt okoznak. A hirdetési platform kevesebb konverzióra optimalizál, a riportjaid pedig alacsonyabb megtérülést mutatnak, mint amennyit valójában kapsz. Íme a második hatás számokban, egy példa webáruházra, amelynek megtérülési ROAS-a 2.2:
| Példa webáruház, egy hónap | Csak pixel | Minden kifizetett rendelés |
|---|---|---|
| Meta hirdetési költés | $8,000 | $8,000 |
| Vásárlások a Meta-kattintásokból | 260 | 320 |
| Bevétel $60 rendelési érték mellett | $15,600 | $19,200 |
| ROAS | 15,600 ÷ 8,000 = 1.95 | 19,200 ÷ 8,000 = 2.40 |
| A megtérülési ROAS-hoz (2.2) képest | Veszteségnek tűnik | Nyereséges |
Mit ad a WooCommerce: rendelések, webhookok és a REST API
Mely rendelési állapotok számítanak kifizetettnek?
A WooCommerce a processing állapotot úgy írja le, mint a befizetett összeg beérkezését, amikor a rendelés teljesítésre vár. A ROASaurus a processing vagy completed állapotú rendeléseket küldi el, a pending payment, on hold, failed, cancelled és refunded rendeléseket pedig kihagyja. Két fizetési módra érdemes odafigyelni:
- Utánvét. A WooCommerce ezeket a rendeléseket processing állapotra állítja, amíg az összeget be nem szedik, ezért a ROASaurus a leadásukkor elküldi őket. Kivételt képeznek a letölthető termékes rendelések: ezek on hold állapotba kerülnek. Hogy ez mit jelent a visszaküldésekre és az átvétel megtagadására, azt az utánvétes rendelések követéséről szóló cikk mutatja meg.
- Banki átutalás. A WooCommerce ezeket a rendeléseket on hold állapotba teszi, amíg te ellenőrzöd a fizetést. A ROASaurus akkor küldi el őket, amikor processing állapotba helyezed őket.
Webhookok
A webhook egy üzenet, amelyet a WooCommerce egy másik rendszernek küld, ha valami megváltozik. A WooCommerce › Settings › Advanced › Webhooks alatt hozhatod létre. Rendelés típusú témánál a payload ugyanaz a rendelésobjektum, amelyet a REST API visszaad. Minden kézbesítés tartalmaz egy X-WC-Webhook-Signature fejlécet: a payload base64-kódolt HMAC-SHA256 hashét, amelyet az általad választott titkos kulccsal készítenek. A ROASaurus ellenőrzi ezt az aláírást, mielőtt elfogad egy rendelést.
Két részlet számít a gyakorlatban. A WooCommerce a webhookokat a háttérben kézbesíti, alapértelmezés szerint a WP-Cronnal, ezért egy kézbesítés késhet, ha ez a sor lemarad. A WooCommerce pedig kikapcsol egy webhookot, ha egymás után több mint öt kézbesítés sikertelen.
REST API
A REST API lehetővé teszi, hogy a ROASaurus maga kérje le a rendeléseket. Csak olvasási jogú API-kulccsal a ROASaurus 5 percenként lekéri az utolsó ellenőrzése óta módosult processing és completed állapotú rendeléseket, 30 perc átfedéssel. Az általa már ismert rendeléseket figyelmen kívül hagyja. Így elkapja azt a rendelést, amelyet egy webhook elszalasztott.
| Rendelésmező | Mit kezd vele a ROASaurus |
|---|---|
id | Az order-1042 eseményazonosító lesz, amelyen a szerveroldali és a böngészős esemény osztozik |
total | A vásárlási érték: a végösszeg, az adóval és a szállítással együtt |
| Számlázási e-mail, telefonszám, név, város, állam, irányítószám, ország | SHA-256-tal hashelve, ügyféladatként küldve |
customer_ip_address, customer_user_agent | Az eseménnyel együtt elküldve, és a rendelés látogatóhoz párosítására használva |
line_items | Termékazonosítók (variáció esetén a variációazonosító), mennyiségek és árak |
date_paid_gmt | Az esemény időpontja a webhookról vagy a REST API-ról érkező rendeléseknél (ha nincs fizetési dátum, a létrehozás dátuma) |
meta_data | A pluginnal: a látogatóazonosító, valamint a Meta és a TikTok sütik |
Plugin vagy webhookok: két mód a csatlakozásra
Mindkét kapcsolat minden kifizetett rendelést elküld. Abban különböznek, hogy az egyes rendeléseket mennyire jól kötik a vásárlót odavezető hirdetési kattintáshoz.
| ROASaurus plugin | Csak webhookok | |
|---|---|---|
| Mit telepítesz | Egy WordPress plugin (PHP 7.4 és WooCommerce 6.0 vagy újabb) | Semmit: egy webhook a WooCommerce beállításaiban |
| Hogyan érkeznek a rendelések | A plugin minden kifizetett rendelést elküld a ROASaurus rendelés-API-jának | A WooCommerce elküldi az Order updated eseményt; opcionális REST API-ellenőrzés 5 percenként |
| Követőscript | A plugin tölti be minden oldalon | Te adod hozzá, például a WPCode pluginnal vagy a sablonodban |
| Látogatóazonosító és kattintási sütik a rendelésen | Igen, a pénztárnál mentve (klasszikus és blokk alapú pénztár) | Nem |
| Böngészős vásárlás a köszönőoldalon | Igen, ugyanazzal az eseményazonosítóval, mint a szerveroldali esemény | Nem |
| Köszönőoldalas párosítás | Igen | Nem |
Egyszerre mindkettőt használhatod. A plugin a látogatóazonosítót rendelési metaadatként menti el a rendelésen, a webhook payloadja pedig magával viszi. A ROASaurus minden rendelést egyszer tárol, a WooCommerce rendelésazonosítója alapján, így a plugin és a webhook sosem hoz létre két vásárlást. A plugin a WooCommerce High-Performance Order Storage támogatását is bejelenti.
Hogyan párosítható egy WooCommerce-rendelés a hirdetési kattintással?
A hirdetési platform csak akkor tud egy vásárlást egy hirdetésnek jóváírni, ha össze tudja kötni a kettőt. A ROASaurus ezt úgy éri el, hogy a rendelést ahhoz a látogatóhoz köti, aki a hirdetésre kattintott, és ez a látogató viszi magával a landing oldalról a kattintásazonosítókat (például fbclid és ttclid) és az UTM-paramétereket. Ezeket a módszereket sorrendben próbálja ki, és az első működőnél megáll:
- A rendelésen mentett látogatóazonosító. Csak a pluginnal. Ez pontos kapcsolat.
- A köszönőoldalon lévő böngészős vásárlás, amely ugyanazt a rendelésazonosítót hordozza. Csak a pluginnal.
- Egy hashelt e-mail-cím, amelyet a látogató korábban megadott az oldaladon, például egy Klaviyo-, Attentive- vagy Wisepops-felugróablak űrlapján, vagy egy Identify hívással.
- Ugyanaz az IP-cím és böngésző, amelyet a rendelés előtt 3 órától a rendelés után 15 percig láttak, de csak akkor, ha pontosan egy látogató illik rá. Megosztott hálózatokon, például irodákban és mobilszolgáltatóknál, gyakran több látogató osztozik egy IP-címen, és ilyenkor a ROASaurus nem találgat.
A ROASaurus röviden vár, mielőtt elküldi az egyes vásárlásokat, hogy a köszönőoldal eseménye előbb megérkezhessen. Ha a rendelés még mindig nincs párosítva, a küldéskor újra próbálkozik. Az Orders oldal rendelésenként megmutatja az eredményt a Matched by oszlopban. A plugin látogatóazonosítójával összekötött rendeléseknél a cart áll, ugyanez a címke jár a Shopify-rendeléseknek is.
| A Metának elküldve az 1042-es rendeléshez | Párosítva (plugin) | Nincs párosítva (csak webhookok) |
|---|---|---|
Eseményazonosító: order-1042 | Igen | Igen |
| Hashelt e-mail, telefonszám, név és cím | Igen | Igen |
| A rendelés IP-címe és böngészője | Igen | Igen |
Meta kattintásazonosító és böngészőazonosító (fbc, fbp) | Igen | Nem |
Hashelt látogatóazonosító (external_id) | Igen | Nem |
| A hirdetési kattintás a ROASaurus attribúciójában | A kattintás kampánya és hirdetése | Közvetlenként vagy ismeretlenként jelenik meg |
Ezek a kattintásazonosítók növelik a Meta egyezési arányát az eseménynél. Az Event Match Quality elmagyarázza, hogyan pontozza őket a Meta.
Hozzájárulás a WooCommerce-on
A ROASaurus minden webáruházának van egy Respect visitor consent beállítása, amely alapértelmezés szerint be van kapcsolva. WooCommerce-on a ROASaurus script a látogató döntését a WP Consent API-ból olvassa ki, amelyet a hozzájárulás-kezelő pluginok, például a Complianz és a CookieYes töltenek ki. Emellett a Cookiebot, a OneTrust és az IAB TCF bannereket, valamint a Google consent mode-ot is kiolvassa. Amíg a látogató nem fogadja el a marketingsütiket, a script nem állít be látogatóazonosítót, és nem tölt be böngészőpixeleket.
Ha egy látogató elutasítja a hozzájárulást, a script nem állít be látogatóazonosítót, nem őriz meg kattintásazonosítókat, és egyetlen böngészőpixel sem sül el, a plugin pedig nem tárol követési sütiket a rendelésen. A kifizetett rendelést ettől még elküldi a szerver a csatlakoztatott hirdetési platformoknak, a rendelés hashelt ügyféladataival, valamint a rendelés IP-címével és böngészőjével. Ha a jogi tanácsod szerint a vásárlási eseményekhez is előzetes hozzájárulás kell, vedd fel a kapcsolatot a ROASaurusszal, mielőtt bekapcsolod a szerveroldali vásárlásokat. A részleteket a hozzájárulásról szóló súgóoldal tartalmazza, a jogi hátteret pedig a Consent Mode v2 és a GDPR című bejegyzés.
Hogyan állítsd be a szerveroldali követést WooCommerce-on
A plugines megoldás lépései:
- Add hozzá a webáruházat
A ROASaurusban nyisd meg az Add a store oldalt, válaszd a WooCommerce-t, és add meg azt a domaint, amelyet a vásárlóid felkeresnek.
- Hozz létre egy API-kulcsot
Nyisd meg a Store settings oldalt, és az Orders API alatt kattints a Create API key gombra. Másold ki a kulcsot azonnal: csak egyszer jelenik meg, a webáruházkulcsod mellett. Az endpoint az oldalon az
/api/v1/orderselőtt álló cím. - Telepítsd a plugint
Töltsd le a plugint, és töltsd fel a zip-fájlt a WordPressben a Plugins › Add New Plugin › Upload Plugin menüpontban. Utána aktiváld.
- Add meg a kulcsokat
A WooCommerce › ROASaurus alatt add meg az endpointot, a webáruházkulcsot és az API-kulcsot, majd mentsd el.
- Csatlakoztasd a hirdetési platformjaidat
A Tracking & platforms oldalon használd a Connect with Facebook vagy az Add pixel lehetőséget a Metához, a TikTokhoz és a többihez. Jelöld be azt az opciót, amely a böngészőpixelt is betölti, hogy a köszönőoldali vásárlás deduplikálódjon a szerveroldali eseménnyel.
- Állítsd be a hozzájárulást, és tesztelj
Blokkold a scriptet a hozzájárulás-kezelő eszközödben, amíg a látogató el nem fogadja a marketingsütiket, majd adj le egy tesztrendelést.
A plugin nélkül add hozzá a Tracking & platforms oldalon található script taget minden oldalhoz, majd hozd létre a webhookot. A webáruházad Connection fülén látod a webhook URL-jét. Tartsd titokban: bárki, aki ismeri az URL-t, rendeléseket küldhet a webáruházadnak.
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
A tartalék megoldáshoz hozz létre egy kulcsot a WooCommerce › Settings › Advanced › REST API alatt olvasási hozzáféréssel. Illeszd be a consumer key-t és a secretet a Connection fülön, mentsd el, és nyomd meg a Test connection gombot. A Fetch orders now azonnal lekéri a legutóbbi kifizetett rendeléseket. A WooCommerce-integráció oldala egy helyen felsorol minden lehetőséget.
Hogyan teszteled a WooCommerce szerveroldali követést?
Először a böngészős oldalt teszteld, aztán adj le egy rendelést, és kövesd végig a hirdetési platformokig.
- Nyisd meg a webáruházadat úgy, hogy a címben szerepel a
?roasaurus=connected. Egy értesítés megerősíti, hogy a script fut. A?roasaurus=debughatására a script a böngészőkonzolra naplózza, mit küld. - Az Event log Collected events részében az oldalmegtekintéseknél látnod kell egy látogatóazonosítót.
- Adj le egy tesztrendelést. Az utánvét a leggyorsabb, mert a rendelés azonnal processing állapotba kerül.
- A Connection fülön a Last order received a legutóbbi rendelés időpontját mutatja.
- Az Event log Server deliveries részében minden csatlakoztatott platform kap egy sort sent állapottal és a platform válaszával.
PageView visitor 3f9c2a1eA script hozzájárulással betöltődöttPurchase order-1042Köszönőoldal, a böngészőpixelek elsültekorder 1042 processingA pluginból érkezettMeta Purchase sentUgyanaz az event id, deduplikálvaTikTok CompletePayment sentUgyanaz az event id, deduplikálvaHa látni akarod az eseményt a Metában, illeszd be az Events Manager › Test events alatti kódot a Meta pixeled Test event code mezőjébe a ROASaurusban. Ha végeztél, töröld, mert a kód csak tesztelésre való. Ha a plugin nem tud kézbesíteni egy rendelést, a WooCommerce-ban rendelési jegyzetet ad hozzá, amely a „ROASaurus: order not sent” szöveggel kezdődik, utána a hiba következik.
Elkerülendő hibák
- Az Order created téma használata. Az átirányítással fizetett rendelések pending payment állapotban jönnek létre. A ROASaurus figyelmen kívül hagyja a ki nem fizetett rendeléseket, és a fizetés beérkezésekor nem követ második „created” üzenet. Használd az Order updated témát.
- Nem egyező titkos kulcs. A ROASaurus elutasítja azt a kézbesítést, amelynek az aláírása nem egyezik a nála lévő titkos kulccsal. Ha egymás után több mint öt kézbesítés sikertelen, a WooCommerce kikapcsolja a webhookot. Javítsd ki a titkos kulcsot, állítsd vissza a webhookot Active állapotra, és add hozzá a REST API-kulcsot, hogy a kimaradt időszak rendelései is lekérésre kerüljenek.
- Két eszköz küldi ugyanazt a pixelt. Ha egy másik plugin is elküldi a Meta vagy TikTok pixeledet, az a saját eseményazonosítóit használja, és a platform minden eladást kétszer számol. Kapcsold ki ennél a pixelnél. Lásd: a dupla számolás megelőzése és duplikált vásárlási események.
- Kosárba helyezési események elvárása. WooCommerce-on a script az oldalmegtekintéseket magától követi. A termékmegtekintéseket és a kosárba helyezéseket csak Shopifyon ismeri fel automatikusan. Egy fejlesztő egy
tlqtrack hívással elküldheti őket. - Google Ads konverziók elvárása. A ROASaurus a Google Ads vásárlási konverzióit csak a Shopify pénztárából küldi. WooCommerce-ből a Metának, a TikToknak, a Snapchatnek, a Pinterestnek, a Redditnek, az X-nek, a Microsoft Adsnek, a Taboolának, a LinkedInnek és a többi csatlakoztatott hirdetési platformnak küld vásárlásokat.
- Későn jóváhagyott banki átutalások. A Meta a szerveroldali eseményeket az esemény időpontja után legfeljebb 7 napig fogadja el. A plugin a rendelést a létrehozásának dátumával küldi el, ezért a Meta elutasít egy olyan átutalást, amelyet a pénztár után több mint 7 nappal erősítettek meg. A webhookon vagy a REST API-n érkező rendeléseknél ehelyett a fizetés dátuma szerepel. Azt is vedd figyelembe, hogy a köszönőoldal a böngészős vásárlást a pénztárnál sütei el, még az átutalás kifizetése előtt. Ha a fizetést több mint 48 órával később erősítik meg, a Meta és a TikTok nem tudja egyesíteni a böngészős és a szerveroldali példányt, a soha ki nem fizetett átutalás pedig megtartja a böngészős vásárlását.
Amint a rendelések áramlanak, az attribúciós riportok megmutatják, mely kampányokból és hirdetésekből érkeztek.
Források
- 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