> ## Documentation Index
> Fetch the complete documentation index at: https://docs.appreval.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Analítica con Google Tag Manager

> Conectá tu contenedor de GTM y recibí los eventos del checkout en tu dataLayer, listos para GA4, Meta, TikTok o Google Ads.

Reval publica eventos de e-commerce **estándar de GA4** en el `dataLayer` de tu
contenedor de Google Tag Manager. Vos decidís, desde tu propio panel de GTM, a
qué destinos van (GA4, Meta Pixel, TikTok, Google Ads) — sin tocar nada en Reval
y sin pedirle cambios a nadie.

## Conectar tu contenedor

1. Copiá tu **Container ID** desde GTM → Admin (formato `GTM-XXXXXXX`).
2. En Reval: **Configuración → Analítica — Google Tag Manager**, pegá el ID y
   guardá.
3. Listo: el checkout y la página de gracias cargan tu contenedor
   automáticamente. Para desactivar, vaciá el campo y guardá.

<Warning>
  Los tags que configures en tu contenedor se ejecutan dentro del checkout de tu
  tienda. Sos responsable de lo que tu cuenta de GTM cargue ahí: usá contraseña
  fuerte y 2FA en Google, y dales acceso al contenedor solo a personas de
  confianza.
</Warning>

## Eventos disponibles

### `begin_checkout`

Se publica al cargar el checkout, con la compra que el cliente está por hacer:

```js theme={null}
{
  event: "begin_checkout",
  ecommerce: {
    currency: "ARS",            // la moneda de tu tienda
    value: 12500.0,             // total recurrente del plan elegido
    items: [
      { item_id: "gid://shopify/ProductVariant/…", item_name: "Producto A", price: 12500.0, quantity: 1 }
    ]
  }
}
```

### `purchase`

Se publica en la página de gracias cuando la suscripción se creó y el cobro fue
aprobado. **Se emite una sola vez por compra**: recargar la página de gracias no
lo duplica.

```js theme={null}
{
  event: "purchase",
  ecommerce: {
    transaction_id: "…",        // id estable de la suscripción
    value: 13500.0,             // total cobrado (productos + envío)
    tax: 1000.0,                // porción de impuestos informada, 0 si no aplica
    shipping: 0.0,
    currency: "ARS",
    items: [                    // incluye los add-ons de compra única, si los hubo
      { item_id: "gid://shopify/ProductVariant/…", item_name: "Producto A", price: 12500.0, quantity: 1 }
    ]
  }
}
```

<Note>
  Antes de cada evento se publica `{ ecommerce: null }`, siguiendo la convención
  de GA4 para limpiar el objeto anterior.
</Note>

## Verificarlo

1. En GTM, abrí **Vista previa** (Tag Assistant) y navegá al checkout de tu
   tienda: deberías ver el contenedor cargado y `begin_checkout` en la línea de
   tiempo.
2. Completá una compra de prueba: en la página de gracias aparece `purchase`
   con el detalle de la transacción.
3. Recargá la página de gracias: `purchase` **no** vuelve a aparecer.

## Qué hacer con los eventos

En tu contenedor, creá una etiqueta por destino usando estos eventos como
activadores. Los nombres y la estructura siguen el esquema de e-commerce de
GA4, así que la etiqueta de **GA4** los entiende sin mapeo manual, y para
**Meta/TikTok/Ads** mapeás `value`, `currency` e `items` a los campos del
destino desde variables de dataLayer.
