Ir al contenido

Integración del Pixel de Sojern

Si estás ejecutando campañas publicitarias a través de Sojern, puedes conectar tu cuenta de Sojern con Wink ingresando tu ID de Contenedor GTM de Sojern en el portal de Wink. Una vez conectado, el pixel de seguimiento de Sojern se activa automáticamente para tu propiedad, cubriendo todo el recorrido del huésped desde la búsqueda hasta la reserva completada.


  1. Obtén tu ID de Contenedor GTM de Sojern

    Contacta a tu gerente de cuenta de Sojern y solicita tu ID de Contenedor GTM. Tiene el formato GTM-XXXXXXX. Esto es diferente de tu ID de Pixel de Sojern — asegúrate de pedir específicamente el ID de Contenedor GTM.

  2. Ingresa el ID en el Portal de Wink

    Inicia sesión en my.wink.travel, selecciona tu cuenta y ve a la pestaña Personalizaciones. Pega tu ID de Contenedor GTM de Sojern en el campo de Sojern y guarda. Tu integración ya está activa.

  3. Confirma con tu Gerente de Cuenta de Sojern

    Informa a tu gerente de cuenta de Sojern que la integración está activa. Ellos pueden verificar desde su lado que el pixel se está activando correctamente en wink.travel para tu propiedad y que los datos están fluyendo hacia tu cuenta de Sojern.


Para mayor transparencia, esto es lo que Wink configura para que esta integración funcione:

  • Un campo para el ID de Contenedor GTM de Sojern está disponible en la pestaña Personalizaciones de tu portal Wink. Cuando ingresas tu ID de Contenedor, Wink valida el formato y lo almacena de forma segura asociado a tu propiedad.
  • En cada página donde tu propiedad está activa en Wink, tu ID de Contenedor GTM de Sojern se inserta en la página y el sistema de gestión de etiquetas de Wink carga dinámicamente tu contenedor de Sojern junto con el propio. Esto sucede automáticamente — no se requieren pasos manuales del equipo de Wink por propiedad.
  • Tu contenedor de Sojern se carga de forma asíncrona, lo que significa que no afecta el rendimiento de carga de página para tus huéspedes.
  • El seguimiento propio de Wink y tu pixel de Sojern funcionan en paralelo, leyendo desde los mismos datos de eventos compartidos. Cada evento de reserva que Wink rastrea está disponible simultáneamente para tu contenedor de Sojern.
  • Cuando tu propiedad no está siendo vista — por ejemplo, cuando un huésped está navegando otro hotel en Wink — tu contenedor de Sojern no se carga. Esto asegura que Sojern solo reciba datos relevantes para tu propiedad.

Wink envía eventos compatibles con GA4 al dataLayer durante todo el recorrido del huésped. Tu contenedor GTM lee desde este mismo dataLayer compartido, por lo que cualquier disparador o variable que configures tiene acceso a todas las propiedades descritas a continuación.

Cada evento sigue la estructura estándar de GA4 Enhanced Ecommerce: una cadena event de nivel superior y un objeto ecommerce. Antes de cada push, Wink limpia la carga útil ecommerce previa para evitar que datos antiguos afecten nuevos disparadores.


Estos eventos se activan automáticamente a medida que un huésped avanza por el embudo de reserva. Configura tus disparadores GTM como disparadores de Evento Personalizado que coincidan con los nombres de evento a continuación.

PasoEventoCuándo se Activa
1view_item_listSe carga la cuadrícula o lista de inventario hotelero
2view_itemEl huésped ve la página de una propiedad específica
3add_to_cartEl huésped agrega una habitación al carrito
4begin_checkoutSe carga la página de pago / checkout
5add_payment_infoEl huésped selecciona un método de pago
6loginEl huésped se autentica vía SSO
7purchaseSe confirma la reserva
8refundSe cancela la reserva

Se activa cuando se muestra una cuadrícula o lista de inventario hotelero.

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

Se activa cuando un huésped ve una propiedad específica.

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

Se activa cuando un huésped agrega una habitación a su carrito.

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

Se activa cuando se carga la página de pago / checkout.

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

coupon solo está presente cuando se aplicó un código de descuento.


Se activa cuando el huésped selecciona o confirma un método de pago.

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

payment_type se llena con el tipo de adquirente de pago. coupon solo está presente cuando se aplicó un código de descuento.


Se activa cuando un huésped se autentica vía inicio de sesión único.

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

Se activa cuando se confirma una reserva.

{
"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 es el identificador único del contrato de reserva. coupon, shipping y tax solo están presentes cuando aplican.


Se activa cuando se cancela una reserva.

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

transaction_id coincide con el evento purchase para la misma reserva. coupon, shipping y tax solo están presentes cuando aplican.


Todos los eventos que incluyen un arreglo items comparten el mismo esquema de ítem. Cada propiedad es opcional a menos que se indique como requerida.

Estos campos son entendidos nativamente por GA4 y aparecen en reportes estándar de ecommerce sin configuración adicional.

PropiedadTipoRequeridoDescripción
item_idstringIdentificador único para la habitación o producto
item_namestringNombre de la habitación o producto
affiliationstringNombre del afiliado o vendedor
couponstringCódigo de cupón aplicado al ítem
currencystringCódigo de moneda ISO 4217 (ej. USD)
creative_namestringNombre creativo usado en una promoción
creative_slotstringPosición del slot de la creatividad promocional
discountnumberMonto de descuento aplicado
indexnumberPosición en la lista (base 1)
item_brandstringNombre del hotel o marca
item_categorystringTipo de producto — ej. GUEST_ROOM, ACTIVITY, ATTRACTION, MEETING_ROOM, RESTAURANT, SPA
item_list_idstringIdentificador de la lista a la que pertenece el ítem
item_list_namestringNombre visible de la lista
location_idstringCoordenadas geográficas de la propiedad
pricenumberPrecio unitario
promotion_idstringIdentificador de la promoción
promotion_namestringNombre visible de la promoción
quantitynumberCantidad (por defecto 1)

Estos parámetros llevan contexto específico de reserva de Wink. GA4 no los muestra automáticamente en reportes — debes registrar cada uno como una dimensión personalizada a nivel ítem en tu propiedad GA4 antes de que aparezcan en exploraciones o reportes estándar. Consulta Dimensiones Personalizadas en GA4 más abajo para instrucciones.

PropiedadTipoDescripción
property_idstringIdentificador de propiedad en Wink
property_namestringNombre visible de la propiedad
property_brandstringMarca a la que pertenece la propiedad
property_chainstringCadena a la que pertenece la propiedad
property_url_namestringSlug amigable para URL de la propiedad
city_namestringCiudad donde está ubicada la propiedad
country_codestringCódigo de país ISO 3166-1 alfa-2
start_datestringFecha de check-in en formato YYYY-MM-DD
end_datestringFecha de check-out en formato YYYY-MM-DD
num_adultsnumberCantidad de adultos en la reserva
num_childrennumberCantidad de niños en la reserva
cancellation_policystringUno de: Refundable, Non-Refundable, Refundable-With-Restrictions, Non-Refundable-With-Restrictions
rate_plan_idstringIdentificador del plan tarifario
room_rate_idstringIdentificador de la tarifa específica de la habitación
room_rate_namestringNombre visible de la tarifa de la habitación
num_perksnumberCantidad de beneficios incluidos con la tarifa
room_locationstringDescripción de la ubicación de la habitación (ej. Overwater, Garden)
room_viewstringDescripción de la vista de la habitación (ej. Ocean, City)
room_classificationstringClasificación o categoría de la habitación (ej. Suite, Standard)
bed_typestringConfiguración de camas de la habitación (ej. King, Twin)

GA4 ignora los parámetros personalizados a nivel ítem en reportes hasta que los registras explícitamente como dimensiones personalizadas a nivel ítem. Solo necesitas registrar los parámetros que planeas usar en reportes — no es necesario registrar los 20.

  1. Abre Definiciones Personalizadas

    En GA4, ve a Administrador (icono de engranaje abajo a la izquierda) → selecciona tu propiedad → Visualización de datosDefiniciones personalizadas.

  2. Crea una nueva dimensión personalizada

    Haz clic en Crear dimensiones personalizadas.

  3. Completa los detalles de la dimensión

    • Nombre de la dimensión — la etiqueta legible que aparece en los reportes GA4 (ver tabla abajo)
    • Ámbito — selecciona Ítem
    • Parámetro del evento — el nombre exacto del parámetro tal como aparece en el dataLayer (ver tabla abajo)
    • Descripción — opcional pero recomendado
  4. Guarda y repite

    Haz clic en Guardar, luego repite para cada parámetro que quieras rastrear.

Usa la siguiente tabla como referencia al crear dimensiones personalizadas. El valor de Parámetro del evento debe coincidir exactamente — GA4 distingue mayúsculas y minúsculas.

Nombre de la dimensiónParámetro del eventoTipo
ID de propiedadproperty_idTexto
Nombre de propiedadproperty_nameTexto
Marca de propiedadproperty_brandTexto
Cadena de propiedadproperty_chainTexto
Nombre URL de propiedadproperty_url_nameTexto
Nombre de ciudadcity_nameTexto
Código de paíscountry_codeTexto
Fecha de check-instart_dateTexto
Fecha de check-outend_dateTexto
Cantidad de adultosnum_adultsNúmero
Cantidad de niñosnum_childrenNúmero
Política de cancelacióncancellation_policyTexto
ID de plan tarifariorate_plan_idTexto
ID de tarifa de habitaciónroom_rate_idTexto
Nombre de tarifa de habitaciónroom_rate_nameTexto
Cantidad de beneficiosnum_perksNúmero
Ubicación de la habitaciónroom_locationTexto
Vista de la habitaciónroom_viewTexto
Clasificación de la habitaciónroom_classificationTexto
Tipo de camabed_typeTexto

Los siguientes eventos están disponibles en el dataLayer de Wink pero no forman parte del embudo estándar de reserva. Pueden activarse por otras interacciones en la plataforma.

{
"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"
}

No se incluye carga útil ecommerce con este evento.

{
"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": {}
}

Este es un evento personalizado de Wink — no forma parte del conjunto estándar de eventos GA4. Se envía en cada navegación de página y lleva contexto de dispositivo y sesión. No incluye un objeto 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"
}
PropiedadDescripción
deviceTipo de dispositivo detectado — Desktop, Android, iPhone, iPad o similar
deviceAgentCadena cruda del agente de usuario
osSistema operativo detectado — Windows, MacOS, Linux, UNIX
pathRuta de la página actual
titleTítulo de la página actual
userIdIdentificador del usuario autenticado (omitido si no está logueado)
startDateFecha de check-in de la sesión de búsqueda actual
endDateFecha de check-out de la sesión de búsqueda actual
guestsCantidad de huéspedes de la sesión de búsqueda actual
roomsCantidad de habitaciones de la sesión de búsqueda actual