Pixel y Analytics

El Pixel de Wafle es un script first-party que captura comportamiento de los visitantes de tu storefront. Está auto-inyectado en cualquier tienda Wafle managed — no tenés que pegar nada. Si tu storefront es custom (fuera de Wafle), mirá Pixel para storefronts custom.

First-party, no third-party
El Pixel sirve desde wafle.click (o tu propio dominio), no desde un dominio ad-tech. Por eso sobrevive a Safari ITP, ad-blockers livianos y al consent mode v2 sin perder eventos esenciales.

Eventos capturados

Por default capturamos los eventos del e-commerce funnel + algunos de UX:

  • page_view — cada navegación, con URL, referrer, viewport.
  • view_item — visita a página de producto, con product_id, sku, price.
  • view_collection — visita a categoría / colección.
  • search — el visitante usó el search box, con query y count de results.
  • add_to_cart — incluye qty, sku, price.
  • remove_from_cart.
  • begin_checkout — entró al checkout.
  • add_payment_info, add_shipping_info.
  • purchase — orden cerrada con total, items, currency, order_id.
  • refund — refund procesado (server-side, no del cliente).

Eventos custom

Desde el storefront podés disparar eventos propios con la API JS:

jsjavascript
window.wafle.track('lead_magnet_download', {
  magnet_id: 'guia-cuidado-ropa',
  source: 'landing',
});

// Identificar al visitante (hashea email automáticamente)
window.wafle.identify({ email: '[email protected]', phone: '+5491155...' });

Identifiers

El Pixel persiste tres niveles de identificación:

  • Anonymous ID — UUID en localStorage + cookie first-party. Único por device.
  • User ID — cuando llamás wafle.identify() con email/phone, hashea SHA-256 y queda asociado al anonymous ID.
  • Customer ID — al pasar el checkout, se promueve al customer real del core.

El merge entre niveles es automático: cuando hace login o checkout, todos los eventos anonymous quedan reconciliados al customer.

Consultar la data

Vía REST API

bashbash
# Eventos crudos de los últimos 7 días
curl "https://wafle.click/wp-json/waffle/v1/pixel/events?\
since=7d&\
event=purchase&\
per_page=100" \
  -H "Authorization: Bearer wpk_••••"

# KPIs agregados
curl "https://wafle.click/wp-json/waffle/v1/pixel/kpi?\
range=last_30d&\
breakdown=day" \
  -H "Authorization: Bearer wpk_••••"

Vía MCP

Tools analytics.kpi, analytics.funnel, analytics.cohort. Resources wafle://kpi/dashboard y wafle://pixel/today ya inyectan los KPIs al contexto del modelo.

Vía ClickHouse (Pro+)

Para analytics serios damos read-only credentials a tu propia instancia ClickHouse del cluster Wafle. Andá a /admin/stores/<slug>/integrations → ClickHouse y pedí acceso. Tarda ~1 día en provisionar.

sqlsql
-- Top 10 productos vistos pero no comprados últimos 30 días
SELECT
  product_id,
  product_name,
  countDistinct(anonymous_id) AS unique_viewers,
  sumIf(1, event = 'purchase') AS purchases
FROM events
WHERE tenant = 'gamerland'
  AND timestamp > now() - INTERVAL 30 DAY
  AND event IN ('view_item', 'purchase')
GROUP BY product_id, product_name
HAVING unique_viewers > 50
ORDER BY purchases / unique_viewers ASC
LIMIT 10;

Dashboards built-in

En /admin/stores/<slug>/marketing/360 tenés:

  • Funnel (page_view → add_to_cart → checkout → purchase)
  • Top productos vistos vs comprados (oportunidades de optimización)
  • Cohortes de retention
  • Sources (organic, paid, email, direct, social)
  • Real-time: visitantes activos ahora

Server-side events

Para eventos que no pasan por el browser (refund procesado en backoffice, suscripción renovada por cron, etc.), usá el endpoint server-side:

bashbash
curl -X POST https://wafle.click/wp-json/waffle/v1/pixel/track \
  -H "Authorization: Bearer wpk_••••" \
  -H "Content-Type: application/json" \
  -d '{
    "event": "subscription_renewed",
    "user_email": "[email protected]",
    "properties": {
      "plan_id": "pro_yearly",
      "amount": 12000
    }
  }'

Export a Meta CAPI / Google Conversions API

Wafle puede mirror automático de eventos clave a Meta y Google con server-side deduplication. Andá a /admin/stores/<slug>/integrations → Meta Ads y → Google Ads, conectá con OAuth, y elegí qué eventos espejar. Eso te da atribución mucho mejor que solo el browser pixel.

Siguientes