Saltar al contenido
Docs

Guía práctica

Envía productos y pedidos desde el backend de tu tienda y añade el script de seguimiento de Emailit para registrar vistas de productos, carritos y compras, y reconocer a los visitantes que llegan desde tus emails. Alfa: solo para el equipo de Emailit.

Actualizado el 20 oct 2026

Una tienda envía a Emailit dos tipos de datos: el catálogo y los pedidos desde su backend, con la API, y lo que hacen los visitantes en la web, con el script de seguimiento de Seguimiento de eventos. Usa ambos para tener la imagen completa: la API es el registro fiable de los pedidos, y el script añade las vistas de productos, los carritos y los visitantes que llegan desde tus emails.

Antes de empezar

  • Una clave de API para las llamadas desde el backend. Una clave Events Only puede enviar productos, pedidos y carritos: es la misma clave que envía eventos desde tu backend. No puede leer datos, así que sus respuestas solo contienen object, id y external_id. Usa una clave Full Access si también necesitas leer datos, gestionar cupones o cambiar la configuración.
  • Para el script de seguimiento, permiso para añadir un script a las páginas de tu tienda.

Enviar datos desde tu backend

Productos

Envía tu catálogo con Crear o actualizar productos en bloque, y vuelve a hacerlo cada vez que cambien los productos. Cada producto se identifica por el ID de producto de tu tienda, así que al enviarlo de nuevo se actualiza.

Terminal
curl https://api.emailit.com/v2/products/batch \
  -X POST \
  -H "Authorization: Bearer $EMAILIT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "products": [{
      "id": "1234",
      "title": "Trail Runner GTX",
      "url": "https://shop.example.com/products/trail-runner",
      "image_url": "https://shop.example.com/images/trail-runner.jpg",
      "price": 139,
      "compare_at_price": 169,
      "currency": "EUR",
      "categories": ["Shoes", "Running"],
      "inventory_quantity": 40
    }]
  }'

Los feeds de productos de los emails dejan fuera los productos archivados y los productos con un inventario de 0, así que mantén actualizados status e inventory_quantity.

Pedidos

Cuando se realiza un pedido, envíalo con Crear o actualizar un pedido:

Terminal
curl https://api.emailit.com/v2/orders \
  -X POST \
  -H "Authorization: Bearer $EMAILIT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "id": "1001",
    "email": "jane@example.com",
    "currency": "EUR",
    "total": 125,
    "shipping": 5,
    "coupon_codes": ["WLC-8K2M4P"],
    "cart_id": "cart_789",
    "items": [{ "product_id": "1234", "title": "Trail Runner GTX", "quantity": 1, "price": 120 }]
  }'
  • id es el número de pedido de tu tienda. Si vuelves a enviar el mismo id, el pedido se actualiza en lugar de añadirse otro.
  • Emailit atribuye el pedido al último email en el que el comprador hizo clic o que abrió. Consulta Cómo se atribuyen los pedidos.
  • El comprador se convierte en contacto si todavía no lo es. Añade "accepts_marketing": true y un audience_id para suscribirlo también, por ejemplo cuando ha marcado la casilla de la newsletter al pagar. "create_contact": false evita crear un contacto. El comando purchase del script de seguimiento nunca crea ni suscribe un contacto.
  • cart_id marca ese carrito como convertido.

Cuando el pedido se paga, se prepara, se cancela o se reembolsa, envía el cambio con Actualizar un pedido, o vuelve a enviar el pedido con su nuevo status. Los pedidos cancelados no cuentan en los ingresos, y los reembolsos se restan.

Pedidos anteriores

Importa tu historial de pedidos con Importar pedidos en bloque, hasta 1000 pedidos por petición. Por defecto, las importaciones son históricas: completan el historial de compras, las métricas y las recomendaciones, pero no se atribuyen a los emails ni inician automatizaciones.

El script de seguimiento

El script de seguimiento registra lo que hacen los visitantes en tu web: vistas de productos, el carrito, compras y visitas. También reconoce a los visitantes que llegan desde tus emails, para que su actividad se asigne a su contacto.

Añadir el script

  1. Crea una clave de seguimiento. En Email APIEvents, abre la pestaña Tracking y selecciona Create tracking key. En Allowed origins, indica los dominios de tu tienda, por ejemplo shop.example.com o *.example.com. Déjalo vacío para aceptar cualquier web.

  2. Añade el fragmento de código a todas las páginas, antes de </head>. La pestaña Tracking lo muestra con tu clave ya incluida:

    HTML
    <script>window.emailit=window.emailit||function(){(window._emailitq=window._emailitq||[]).push(arguments)};</script>
    <script async src="https://js.emailit.com/track/TRACKING_KEY/events.js"></script>

    Las claves de seguimiento son públicas: solo pueden enviar eventos, nunca leer datos. Si el script de los formularios de Emailit ya está en la página, mantén los dos.

Para registrar también una vista de página en cada página, añade data-autotrack="pages" a la etiqueta del script. Las vistas de página actualizan cuándo estuvo activo el contacto en tu web por última vez y su zona horaria; no se guardan como eventos.

Registrar la actividad de la tienda

Llama a estos comandos donde se produce cada acción:

JavaScript
// Product page
emailit("product", { id: "1234", title: "Trail Runner GTX", url: location.href,
  image_url: "https://shop.example.com/images/trail-runner.jpg", price: 139, currency: "EUR",
  categories: ["Shoes", "Running"] });

// Every time the cart changes
emailit("cart", { id: "cart_789", currency: "EUR", checkout_url: "https://shop.example.com/checkout",
  items: [{ product_id: "1234", title: "Trail Runner GTX", quantity: 1, price: 139 }] });

// Order confirmation page
emailit("purchase", { id: "1001", total: 125, currency: "EUR",
  items: [{ product_id: "1234", quantity: 1, price: 120 }], coupon_codes: ["WLC-8K2M4P"] });
Comando Registra
product Una vista de producto. Un producto que todavía no está en tu catálogo se añade a partir de estos campos; los productos que envías con la API no cambian.
cart Todo el carrito actual, que sustituye a la versión anterior. Sin un id, el carrito del visitante se sigue con un ID propio. Envía una lista items vacía cuando se vacíe el carrito.
purchase Un pedido, con los mismos campos que la API de pedidos. También convierte el carrito del visitante. Es preferible enviar los pedidos desde tu backend: los bloqueadores de anuncios pueden detener las llamadas desde el navegador. Si haces las dos cosas, usa el mismo id de pedido para que el pedido no se cuente dos veces. El script nunca modifica un pedido que hayas enviado desde tu backend, y nunca crea ni suscribe un contacto.
page Una vista de página. Se envía en cada página con data-autotrack="pages".

Identificar a los visitantes

La actividad cuenta para un contacto en cuanto el script sabe quién es el visitante:

  • Desde un enlace de un email. Cuando un contacto hace clic en un enlace de un email de campaña o de automatización que lleva a tu web, el enlace incluye un parámetro _eit firmado. El script lo guarda y lo quita de la barra de direcciones. Los enlaces lo reciben cuando el seguimiento de clics está activado y el enlace va a un origen permitido de una clave de seguimiento o, en las claves sin orígenes permitidos, a tu dominio de envío.

  • Cuando inicia sesión o paga, llama a identify con su dirección de email o su ID de contacto:

    JavaScript
    emailit("identify", { email: "jane@example.com" });
  • Cuando cierra sesión, llama a emailit("reset") para olvidarlo en ese navegador.

Las vistas de productos y los carritos anteriores a la identificación del visitante pasan al contacto. El script también registra la zona horaria del navegador, que usa el envío según la hora local del destinatario, y cuándo estuvo activo el contacto en tu web por última vez.

emailit("debug", true) muestra en la consola del navegador lo que envía el script.

Dónde aparece la actividad

La actividad de la tienda va al mismo registro de eventos que tus demás eventos. Las vistas de productos se convierten en eventos product.viewed, los carritos nuevos o modificados en cart.updated y las compras en order.placed. Los ves en Email APIEvents y en la actividad del contacto, y los webhooks pueden suscribirse a ellos. product.viewed y cart.updated no forman parte de All events, así que suscribe el webhook a ellos por su nombre. Consulta Eventos de Comercio electrónico.

Comprobar que funciona

  • Email MarketingCommerce muestra tus productos y pedidos, y Carts muestra los carritos del script.
  • Email APIEvents lista los eventos product.viewed, cart.updated y order.placed a medida que los visitantes navegan y compran.
  • Abre un contacto que haya hecho un pedido: la tarjeta Purchases muestra sus pedidos, su gasto total y los productos vistos recientemente.
  • Después de una campaña, los pedidos que se le atribuyen aparecen en su pestaña Revenue.
La atribución, la configuración y las páginas de Commerce.
Todos los campos de un pedido.

¿Te ha resultado útil esta página?

Gracias por tu opinión.

Gracias. Leemos todos los mensajes.