ข้ามไปยังเนื้อหา

การผสานรวม Sojern Pixel

หากคุณกำลังดำเนินแคมเปญโฆษณาผ่าน Sojern คุณสามารถเชื่อมต่อบัญชี Sojern ของคุณกับ Wink ได้โดยการป้อน Sojern GTM Container ID ของคุณในพอร์ทัล Wink เมื่อเชื่อมต่อแล้ว พิกเซลติดตามของ Sojern จะทำงานโดยอัตโนมัติสำหรับที่พักของคุณ — ครอบคลุมเส้นทางของแขกตั้งแต่การค้นหาจนถึงการจองที่เสร็จสมบูรณ์


  1. รับ GTM Container ID จาก Sojern

    ติดต่อผู้จัดการบัญชี Sojern ของคุณและขอ GTM Container ID ซึ่งจะมีรูปแบบ GTM-XXXXXXX ซึ่งแตกต่างจาก Sojern Pixel ID — โปรดตรวจสอบให้แน่ใจว่าคุณขอเฉพาะ GTM Container ID เท่านั้น

  2. ป้อนในพอร์ทัล Wink

    เข้าสู่ระบบที่ my.wink.travel เลือกบัญชีของคุณ และไปที่แท็บ Customizations วาง Sojern GTM Container ID ของคุณในช่อง Sojern แล้วบันทึก การผสานรวมของคุณจะเริ่มทำงานทันที

  3. ยืนยันกับผู้จัดการบัญชี Sojern ของคุณ

    แจ้งให้ผู้จัดการบัญชี Sojern ของคุณทราบว่าการผสานรวมเปิดใช้งานแล้ว พวกเขาสามารถตรวจสอบจากฝั่งของพวกเขาว่าพิกเซลทำงานถูกต้องบน wink.travel สำหรับที่พักของคุณและข้อมูลไหลเข้าสู่บัญชี Sojern ของคุณ


เพื่อความโปร่งใส นี่คือสิ่งที่ Wink กำหนดค่าเพื่อให้การผสานรวมนี้ทำงานได้:

  • มีช่องกรอก Sojern GTM Container ID ในแท็บ Customizations ของพอร์ทัล Wink ของคุณ เมื่อคุณป้อน Container ID Wink จะตรวจสอบรูปแบบและเก็บข้อมูลอย่างปลอดภัยสำหรับที่พักของคุณ
  • ในทุกหน้าที่ที่ที่พักของคุณเปิดใช้งาน บน Wink จะมีการแสดง Sojern GTM Container ID ลงในหน้า และระบบจัดการแท็กของ Wink จะโหลดคอนเทนเนอร์ Sojern ของคุณแบบไดนามิกพร้อมกับของตัวเอง ซึ่งเกิดขึ้นโดยอัตโนมัติ — ไม่มีขั้นตอนด้วยมือจากทีม Wink ต่อที่พัก
  • คอนเทนเนอร์ Sojern ของคุณจะโหลดแบบอะซิงโครนัส หมายความว่าจะไม่ส่งผลกระทบต่อประสิทธิภาพการโหลดหน้าสำหรับแขกของคุณ
  • การติดตามของ Wink และพิกเซล Sojern ของคุณทำงานพร้อมกัน โดยอ่านจากข้อมูลเหตุการณ์ที่ใช้ร่วมกันเดียวกัน เหตุการณ์การจองทุกครั้งที่ Wink ติดตามจะพร้อมใช้งานสำหรับคอนเทนเนอร์ Sojern ของคุณในเวลาเดียวกัน
  • เมื่อที่พักของคุณไม่ได้ถูกดู — เช่น เมื่อแขกกำลังเรียกดูโรงแรมอื่นบน Wink — คอนเทนเนอร์ Sojern จะไม่ถูกโหลด เพื่อให้แน่ใจว่า Sojern จะได้รับข้อมูลที่เกี่ยวข้องกับที่พักของคุณเท่านั้น

Wink ดันเหตุการณ์ที่เข้ากันได้กับ GA4 ไปยัง dataLayer ตลอดเส้นทางของแขก คอนเทนเนอร์ GTM ของคุณจะอ่านจาก dataLayer ร่วมกันนี้ ดังนั้นทริกเกอร์หรือค่าตัวแปรใด ๆ ที่คุณกำหนดจะเข้าถึงคุณสมบัติทั้งหมดที่อธิบายไว้ด้านล่าง

แต่ละเหตุการณ์จะเป็นไปตามโครงสร้าง GA4 Enhanced Ecommerce มาตรฐาน: สตริง event ระดับบนสุดและอ็อบเจ็กต์ ecommerce ก่อนการดันแต่ละครั้ง Wink จะล้างข้อมูล ecommerce ก่อนหน้าเพื่อป้องกันข้อมูลเก่ารั่วไหลไปยังทริกเกอร์ใหม่


เหตุการณ์เหล่านี้จะทำงานโดยอัตโนมัติเมื่อแขกเคลื่อนผ่านช่องทางการจอง กำหนดทริกเกอร์ GTM ของคุณเป็นทริกเกอร์ Custom Event ที่ตรงกับชื่อเหตุการณ์ด้านล่าง

ขั้นตอนเหตุการณ์เมื่อทำงาน
1view_item_listโหลดกริดหรือรายการสินค้าของโรงแรม
2view_itemแขกดูหน้าที่พักเฉพาะ
3add_to_cartแขกเพิ่มห้องพักลงในรถเข็น
4begin_checkoutโหลดหน้าชำระเงิน/เช็คเอาต์
5add_payment_infoแขกเลือกวิธีการชำระเงิน
6loginแขกเข้าสู่ระบบผ่าน SSO
7purchaseยืนยันการจอง
8refundยกเลิกการจอง

ทำงานเมื่อกริดหรือรายการสินค้าของโรงแรมถูกแสดง

{
"event": "view_item_list",
"ecommerce": {
"item_list_id": "featured_hotels",
"item_list_name": "Featured Hotels",
"items": [ ]
}
}

ทำงานเมื่อแขกดูที่พักเฉพาะ

{
"event": "view_item",
"ecommerce": {
"currency": "USD",
"value": 299.00,
"items": [ ]
}
}

ทำงานเมื่อแขกเพิ่มห้องพักลงในรถเข็น

{
"event": "add_to_cart",
"ecommerce": {
"currency": "USD",
"value": 299.00,
"items": [ ]
}
}

ทำงานเมื่อโหลดหน้าชำระเงิน/เช็คเอาต์

{
"event": "begin_checkout",
"ecommerce": {
"currency": "USD",
"value": 299.00,
"coupon": "SUMMER10",
"items": [ ]
}
}

coupon จะมีเฉพาะเมื่อมีการใช้รหัสส่วนลด


ทำงานเมื่อแขกเลือกหรือยืนยันวิธีการชำระเงิน

{
"event": "add_payment_info",
"ecommerce": {
"currency": "USD",
"value": 299.00,
"coupon": "SUMMER10",
"payment_type": "STRIPE",
"items": [ ]
}
}

payment_type จะถูกเติมจากประเภทผู้รับชำระเงิน coupon จะมีเฉพาะเมื่อมีการใช้รหัสส่วนลด


ทำงานเมื่อแขกเข้าสู่ระบบผ่าน single sign-on

{
"event": "login",
"ecommerce": {
"method": "IAM"
}
}

ทำงานเมื่อยืนยันการจอง

{
"event": "purchase",
"ecommerce": {
"currency": "USD",
"transaction_id": "bc-a1b2c3d4",
"value": 299.00,
"coupon": "SUMMER10",
"shipping": 0.00,
"tax": 0.00,
"items": [
{
"item_id": "rr-xyz789",
"item_name": "Deluxe Ocean Suite",
"item_brand": "Grand Resort",
"item_category": "GUEST_ROOM",
"price": 299.00,
"quantity": 1,
"property_id": "prop-abc123",
"property_name": "Grand Resort Maldives",
"property_brand": "Grand Collection",
"property_chain": "Luxury Hotels International",
"city_name": "Malé",
"country_code": "MV",
"start_date": "2026-06-01",
"end_date": "2026-06-05",
"num_adults": 2,
"num_children": 0,
"cancellation_policy": "Refundable",
"rate_plan_id": "rp-summer2026",
"room_rate_id": "rr-xyz789",
"room_rate_name": "Summer Escape — Bed & Breakfast",
"num_perks": 2,
"room_location": "Overwater",
"room_view": "Ocean",
"room_classification": "Suite"
}
]
}
}

transaction_id คือรหัสสัญญาการจองที่ไม่ซ้ำกัน coupon, shipping และ tax จะมีเฉพาะเมื่อใช้ได้


ทำงานเมื่อยกเลิกการจอง

{
"event": "refund",
"ecommerce": {
"currency": "USD",
"transaction_id": "bc-a1b2c3d4",
"value": 299.00,
"coupon": "SUMMER10",
"shipping": 0.00,
"tax": 0.00,
"items": [ ]
}
}

transaction_id จะตรงกับเหตุการณ์ purchase สำหรับการจองเดียวกัน coupon, shipping และ tax จะมีเฉพาะเมื่อใช้ได้


เหตุการณ์ทั้งหมดที่มีอาร์เรย์ items ใช้สคีมารายการเดียวกัน ทุกคุณสมบัติเป็นทางเลือกเว้นแต่จะระบุว่าจำเป็น

ฟิลด์เหล่านี้ GA4 เข้าใจโดยตรงและปรากฏในรายงาน ecommerce มาตรฐานโดยไม่ต้องตั้งค่าเพิ่มเติม

คุณสมบัติประเภทจำเป็นคำอธิบาย
item_idstringใช่ตัวระบุเฉพาะสำหรับห้องหรือสินค้า
item_namestringชื่อห้องหรือสินค้า
affiliationstringชื่อพันธมิตรหรือผู้ขาย
couponstringรหัสคูปองที่ใช้กับรายการ
currencystringรหัสสกุลเงิน ISO 4217 (เช่น USD)
creative_namestringชื่อครีเอทีฟที่ใช้ในโปรโมชั่น
creative_slotstringตำแหน่งช่องของครีเอทีฟโปรโมชั่น
discountnumberจำนวนส่วนลดที่ใช้
indexnumberตำแหน่งในรายการ (เริ่มที่ 1)
item_brandstringชื่อโรงแรมหรือแบรนด์
item_categorystringประเภทสินค้า เช่น GUEST_ROOM, ACTIVITY, ATTRACTION, MEETING_ROOM, RESTAURANT, SPA
item_list_idstringตัวระบุของรายการที่รายการนี้อยู่
item_list_namestringชื่อแสดงของรายการ
location_idstringพิกัดทางภูมิศาสตร์ของที่พัก
pricenumberราคาต่อหน่วย
promotion_idstringตัวระบุโปรโมชั่น
promotion_namestringชื่อแสดงโปรโมชั่น
quantitynumberจำนวน (ค่าเริ่มต้นเป็น 1)

พารามิเตอร์เหล่านี้บรรจุบริบทการจองเฉพาะของ Wink GA4 จะไม่แสดงโดยอัตโนมัติในรายงาน — คุณต้องลงทะเบียนแต่ละพารามิเตอร์เป็น มิติแบบกำหนดเองที่มีขอบเขตรายการ ในทรัพย์สิน GA4 ของคุณก่อนจึงจะปรากฏในรายงานหรือการสำรวจ ดูหัวข้อ มิติแบบกำหนดเองใน GA4 ด้านล่างสำหรับคำแนะนำการตั้งค่า

คุณสมบัติประเภทคำอธิบาย
property_idstringตัวระบุที่พักของ Wink
property_namestringชื่อแสดงที่พัก
property_brandstringแบรนด์ที่ที่พักเป็นสมาชิก
property_chainstringเครือโรงแรมที่ที่พักเป็นสมาชิก
property_url_namestringชื่อสลัก URL ที่เป็นมิตรสำหรับที่พัก
city_namestringเมืองที่ที่พักตั้งอยู่
country_codestringรหัสประเทศ ISO 3166-1 alpha-2
start_datestringวันที่เช็คอินในรูปแบบ YYYY-MM-DD
end_datestringวันที่เช็คเอาต์ในรูปแบบ YYYY-MM-DD
num_adultsnumberจำนวนผู้ใหญ่ในการจอง
num_childrennumberจำนวนเด็กในการจอง
cancellation_policystringหนึ่งใน: Refundable, Non-Refundable, Refundable-With-Restrictions, Non-Refundable-With-Restrictions
rate_plan_idstringตัวระบุแผนราคา
room_rate_idstringตัวระบุราคาห้องเฉพาะ
room_rate_namestringชื่อแสดงราคาห้อง
num_perksnumberจำนวนสิทธิพิเศษที่รวมกับราคา
room_locationstringคำอธิบายตำแหน่งห้อง (เช่น Overwater, Garden)
room_viewstringคำอธิบายวิวของห้อง (เช่น Ocean, City)
room_classificationstringการจัดประเภทห้องหรือตำแหน่งชั้น (เช่น Suite, Standard)
bed_typestringการจัดเตียงสำหรับห้อง (เช่น King, Twin)

GA4 จะไม่สนใจพารามิเตอร์รายการแบบกำหนดเองในรายงานจนกว่าคุณจะลงทะเบียนเป็นมิติแบบกำหนดเองที่มีขอบเขตรายการ คุณต้องลงทะเบียนเฉพาะพารามิเตอร์ที่ต้องการใช้ในรายงาน — ไม่จำเป็นต้องลงทะเบียนทั้งหมด 20 รายการ

  1. เปิด Custom Definitions

    ใน GA4 ไปที่ Admin (ไอคอนเฟืองมุมล่างซ้าย) → เลือกทรัพย์สินของคุณ → Data displayCustom definitions

  2. สร้างมิติแบบกำหนดเองใหม่

    คลิก Create custom dimensions

  3. กรอกรายละเอียดมิติ

    • Dimension name — ป้ายชื่อที่อ่านได้สำหรับมนุษย์ที่ปรากฏในรายงาน GA4 (ดูตารางด้านล่าง)
    • Scope — เลือก Item
    • Event parameter — ชื่อพารามิเตอร์ที่ตรงกับใน dataLayer (ดูตารางด้านล่าง)
    • Description — ตัวเลือกแต่แนะนำให้ใส่
  4. บันทึกและทำซ้ำ

    คลิก Save แล้วทำซ้ำสำหรับแต่ละพารามิเตอร์ที่ต้องการติดตาม

ใช้ตารางต่อไปนี้เป็นข้อมูลอ้างอิงเมื่อสร้างมิติแบบกำหนดเอง ค่า Event parameter ต้องตรงกันอย่างแม่นยำ — GA4 แยกแยะตัวพิมพ์ใหญ่/เล็ก

ชื่อมิติEvent parameterประเภท
Property IDproperty_idข้อความ
Property nameproperty_nameข้อความ
Property brandproperty_brandข้อความ
Property chainproperty_chainข้อความ
Property URL nameproperty_url_nameข้อความ
City namecity_nameข้อความ
Country codecountry_codeข้อความ
Check-in datestart_dateข้อความ
Check-out dateend_dateข้อความ
Number of adultsnum_adultsตัวเลข
Number of childrennum_childrenตัวเลข
Cancellation policycancellation_policyข้อความ
Rate plan IDrate_plan_idข้อความ
Room rate IDroom_rate_idข้อความ
Room rate nameroom_rate_nameข้อความ
Number of perksnum_perksตัวเลข
Room locationroom_locationข้อความ
Room viewroom_viewข้อความ
Room classificationroom_classificationข้อความ
Bed typebed_typeข้อความ

เหตุการณ์ต่อไปนี้มีอยู่ใน dataLayer ของ Wink แต่ไม่ใช่ส่วนหนึ่งของช่องทางการจองมาตรฐาน อาจถูกเรียกใช้โดยปฏิสัมพันธ์อื่นบนแพลตฟอร์ม

{
"event": "add_to_wishlist",
"ecommerce": {
"currency": "USD",
"value": 299.00,
"items": [ ]
}
}
{
"event": "remove_from_cart",
"ecommerce": {
"currency": "USD",
"value": 299.00,
"items": [ ]
}
}
{
"event": "select_item",
"ecommerce": {
"item_list_id": "featured_hotels",
"item_list_name": "Featured Hotels",
"items": [ ]
}
}
{
"event": "view_cart"
}

เหตุการณ์นี้ไม่มีข้อมูล ecommerce แนบมา

{
"event": "view_promotion",
"ecommerce": {
"creative_name": "Summer Banner",
"creative_slot": "hero",
"promotion_id": "promo_001",
"promotion_name": "Summer Sale",
"items": [ ]
}
}
{
"event": "select_promotion",
"ecommerce": {
"creative_name": "Summer Banner",
"creative_slot": "hero",
"promotion_id": "promo_001",
"promotion_name": "Summer Sale",
"items": [ ]
}
}
{
"event": "search",
"ecommerce": {
"search_term": "beachfront resort"
}
}
{
"event": "select_content",
"ecommerce": {
"content_type": "hotel",
"content_id": "prop_12345"
}
}
{
"event": "share",
"ecommerce": {
"method": "copy_link",
"content_type": "hotel",
"item_id": "prop_12345"
}
}
{
"event": "sign_up",
"ecommerce": {
"method": "email"
}
}
{
"event": "generate_lead",
"ecommerce": {
"currency": "USD",
"value": 0.00
}
}
{
"event": "join_group",
"ecommerce": {
"group_id": "group_abc"
}
}
{
"event": "earn_virtual_currency",
"ecommerce": {
"virtual_currency_name": "WinkPoints",
"value": 100
}
}
{
"event": "spend_virtual_currency",
"ecommerce": {
"virtual_currency_name": "WinkPoints",
"value": 50,
"item_name": "Room Upgrade"
}
}
{
"event": "level_start",
"ecommerce": {
"level_name": "Gold"
}
}
{
"event": "level_end",
"ecommerce": {
"level_name": "Gold",
"success": true
}
}
{
"event": "level_up",
"ecommerce": {
"level": 2,
"character": "traveler"
}
}
{
"event": "post_score",
"ecommerce": {
"score": 980,
"level": 2,
"character": "traveler"
}
}
{
"event": "unlock_achievement",
"ecommerce": {
"achievement_id": "first_booking"
}
}
{
"event": "tutorial_begin",
"ecommerce": {}
}
{
"event": "tutorial_complete",
"ecommerce": {}
}

นี่คือเหตุการณ์เฉพาะของ Wink — ไม่ใช่ส่วนหนึ่งของชุดเหตุการณ์ GA4 มาตรฐาน ถูกดันทุกครั้งที่มีการเปลี่ยนหน้าและบรรจุบริบทของอุปกรณ์และเซสชัน ไม่มีอ็อบเจ็กต์ ecommerce แนบมา

{
"event": "virtualPageView",
"device": "Desktop",
"deviceAgent": "Mozilla/5.0 ...",
"os": "MacOS",
"path": "/hotels/grand-resort",
"title": "Grand Resort — Wink",
"userId": "user_abc123",
"startDate": "2026-06-01",
"endDate": "2026-06-05",
"guests": "2",
"rooms": "1"
}
คุณสมบัติคำอธิบาย
deviceประเภทอุปกรณ์ที่ตรวจจับได้ — Desktop, Android, iPhone, iPad หรืออื่น ๆ
deviceAgentสตริง user agent ดิบ
osระบบปฏิบัติการที่ตรวจจับได้ — Windows, MacOS, Linux, UNIX
pathเส้นทางหน้าปัจจุบัน
titleชื่อหน้าปัจจุบัน
userIdตัวระบุผู้ใช้ที่เข้าสู่ระบบ (ไม่แสดงเมื่อไม่ได้ล็อกอิน)
startDateวันที่เช็คอินจากเซสชันการค้นหาปัจจุบัน
endDateวันที่เช็คเอาต์จากเซสชันการค้นหาปัจจุบัน
guestsจำนวนแขกจากเซสชันการค้นหาปัจจุบัน
roomsจำนวนห้องจากเซสชันการค้นหาปัจจุบัน