Cada venta que CrossUp genera se prueba con dos cosas: lo que el comprador sumó desde una recomendación, que llega como señal, y la orden que cerró tu tienda. El navegador nunca dice que hubo compra: lo dice la orden.

Qué cuenta como venta atribuida

Es el valor de los productos que el comprador agregó desde una recomendación y efectivamente compró. La atribución se hace orden por orden. No cuentan:
  • el producto que el comprador ya había elegido;
  • las recomendaciones rechazadas;
  • las órdenes sin una recomendación aceptada.

Las siete señales

Cada señal lleva su propio cambio, nunca el carrito entero. No hay una señal de compra.

Cómo se ata la venta

  1. Tu tienda manda su id de carrito (cart_id) al pedir la recomendación y en las señales. Con el SDK, una sola vez: la opción cartId.
  2. Las señales de carrito dicen qué sumó el comprador desde cada recomendación.
  3. La orden llega desde tu plataforma —la app de CrossUp o tu conector— con ese mismo id como external_id. CrossUp cruza la orden con lo sumado y atribuye las líneas que se compraron.
Sin cart_id la recomendación funciona igual, pero esa decisión no se puede atar a ninguna orden. Cómo tiene que venir la orden: El modelo canónico.

Cuándo avisar cada una

  • impression cuando la recomendación entra en pantalla, no cuando se genera.
  • click en el clic, antes de navegar; el SDK la manda aunque la página cambie.
  • add_to_cart con la cantidad que se sumó, no el total de la línea.
  • checkout_started cuando el comprador se va al checkout, una vez.

Cómo se mandan

Vos avisás y seguís: el SDK junta, manda y reintenta sin frenar la página. Cada track.* recibe la recomendación que mostraste (en la API, Decision: la lista de productos recomendados para ese momento).
Reintentar es seguro: cada señal tiene un id estable y la repetida no se duplica. Cada una se responde sola, así que una mal armada no voltea el envío.

Qué vas a ver

Una respuesta por señal: aceptada, repetida o rechazada con motivo. En el SDK llegan a onSignalResult.

Lo que nunca viaja

El visitante es un id inventado por el SDK: nunca un mail, un teléfono ni el id de cliente de la plataforma.

Si no lo ves

Reportar señales con el SDK

track.*: las siete señales y cuándo mandar cada una.

Registrar señales por API

La operación, con playground.