# Eventos de conversión

Los eventos de conversión recopilan los ingresos de los usuarios en un formato uniforme para que pueda utilizarlos para la atribución, el análisis y la segmentación.

## ¿Qué son los eventos de conversión?

Los eventos de ingresos rara vez se presentan en un único formato. Su SDK puede activar `PW_InAppPurchase`, su backend puede enviar un evento `OrderPlaced` personalizado, y Stripe o Shopify entregan sus propios eventos de webhook. Sin un formato compartido, la segmentación o la elaboración de informes sobre los ingresos implica escribir una lógica independiente para cada fuente.

Los eventos de conversión resuelven este problema normalizando todo eso en `PW_Conversion`, un evento integrado con un conjunto fijo de campos:

*   `value`: el importe de la transacción
*   `currency`: código de moneda ISO 4217
*   `transaction_id` y `product_id`: identificadores opcionales

`PW_Conversion` cubre las compras, las renovaciones de suscripciones y los pagos de plataformas de terceros, independientemente de dónde proceda el evento de dinero original. Junto con los eventos [predeterminados](/es/product/audience-data-and-segmentation/events/default-events/) y [personalizados](/es/product/audience-data-and-segmentation/events/custom-events/), los eventos de conversión son la tercera categoría de eventos en Pushwoosh.

Una vez que los ingresos llegan como `PW_Conversion`, la segmentación RFM, los Customer Journeys, los paneles de control y ManyMoney AI leen los mismos datos normalizados, sin importar qué fuente los produjo.

### Cómo llegan los ingresos a Pushwoosh

Usted obtiene un registro de `PW_Conversion` de una de estas dos maneras:

*   **Enviarlo directamente desde su código:** su aplicación o backend envía `PW_Conversion` después de una compra.
*   **Asignar un evento existente en el Panel de Control:** apunte Pushwoosh a un evento de compra que ya envía, y generará registros de `PW_Conversion` sin cambiar su código. Puede asignar más de un evento de origen por aplicación.

<Aside type="caution" title="Importante">
Utilice una sola ruta por transacción. Si envía `PW_Conversion` directamente y también asigna otro evento que se activa para la misma compra, Pushwoosh registra ambos como eventos `PW_Conversion` separados e independientes. Pushwoosh no detecta ni fusiona duplicados entre fuentes, incluso cuando comparten un `transaction_id`.
</Aside>

## Casos de uso

Una vez que se configuran los eventos de conversión, esos datos se pueden utilizar en todas partes donde los ingresos son importantes en Pushwoosh:

*   Cree [segmentos RFM](/es/product/audience-data-and-segmentation/segmentation/rfm-segmentation/) para usuarios de alto valor en función del importe y la actualidad del gasto, sin una lógica de ingresos personalizada para cada evento.
*   Establezca `PW_Conversion` como un [Objetivo de Conversión](/es/product/customer-journey/journey-settings/#conversion-goals) en un [Customer Journey](/es/product/customer-journey/pushwoosh-journey-overview/) para ver qué flujos realmente impulsan las compras, no solo los clics o las aperturas.
*   Vea los ingresos en los paneles de control y en los informes sin crear una lógica personalizada para cada evento de compra.
*   Combine los ingresos de los eventos de compra del SDK y los webhooks de pago (Stripe, Shopify) en un único conjunto de datos en lugar de analizar cada fuente por separado.
*   Deje que [ManyMoney AI](/es/product/pushwoosh-ai/ai-assistant/) utilice datos de transacciones reales en sus recomendaciones y optimizaciones de campañas.

<Aside type="tip" title="Escenarios de ejemplo">
**Combinar renovaciones y pedidos de la tienda**

Una aplicación de suscripción envía `PW_Conversion` después de cada pago de renovación, y asigna su webhook de Shopify a `PW_Conversion` para las ventas de mercancía de una sola vez. Ambas fuentes de ingresos ahora cuentan para la misma segmentación RFM, por lo que los mayores gastadores de la aplicación aterrizan automáticamente en el segmento **Champions**. Desde allí, puede dirigirse a ellos con una oferta de fidelidad en un Customer Journey.

**Unificar el gasto en todos los canales**

Una aplicación móvil envía `PW_Conversion` para las compras dentro de la aplicación directamente desde su backend, y por separado asigna un webhook de Stripe para las compras realizadas en su sitio web. Debido a que Pushwoosh trata ambos como el mismo tipo de evento de ingresos, ManyMoney AI ve el historial de gastos completo de un cliente, combinado de la aplicación y el sitio web, cuando recomienda a quién dirigirse a continuación.

**Ver qué journeys impulsan las compras**

Un journey se dirige a los usuarios que han abandonado recientemente con una oferta de recuperación. Su **Objetivo de Conversión** está establecido en `PW_Conversion`. Después de que el journey termina, las estadísticas del objetivo muestran cuántos de esos usuarios realizaron una compra, por lo que puede ver que el journey impulsó compras reales, no solo aperturas. Para ver cuántos ingresos representa eso, consulte la vista de ingresos del segmento o del panel de control por separado. Customer Journey muestra el recuento de compras por objetivo, no un total en dólares por journey.
</Aside>

## Cómo configurar los eventos de conversión

Los eventos de conversión se configuran por aplicación. Puede configurar los eventos de conversión de una de estas dos maneras. Siga las instrucciones para la ruta que se ajuste a su implementación.

### Enviar `PW_Conversion` desde su código

Esta ruta es adecuada cuando puede agregar o cambiar el código del evento en su aplicación o backend. Después de cada compra, envíe `PW_Conversion` a través del método [postEvent](/es/developer/api-reference/user-centric-api/#postevent).

<Aside type="caution" icon="setting" title="Se necesita asistencia de un desarrollador">
Para enviar `PW_Conversion` desde su código, necesitará la ayuda de su equipo de desarrollo. Comparta con ellos la muestra de **Ver código**, junto con [este enlace](/es/developer/guides/audience-and-segmentation/events/) para obtener instrucciones.
</Aside>

1.  Vaya a **Audiencia > Eventos**. Busque la tarjeta **Seguimiento de eventos de conversión**.

<img src="/events-conversion-events-5.webp" alt="Página de eventos con la tarjeta de seguimiento de eventos de conversión antes de la configuración, que muestra cero eventos asignados y el botón para empezar a recopilar ingresos"/>

2.  Haga clic en **Ver código**.

<img src="/events-conversion-events-3.webp" alt="Página de configuración de eventos de conversión con el enlace Ver código"/>

3.  Copie la muestra y agregue la llamada `postEvent` dondequiera que se complete una compra en su aplicación o backend.
<img src="/events-conversion-events-2.webp" alt="Diálogo de código de integración con ejemplos de postEvent de PW_Conversion para JavaScript, Swift, Objective-C y Java"/>

<Aside type="tip">
Solo se requieren `value` y `currency`. `transaction_id` y `product_id` son opcionales.

Si envía `transaction_id`, Pushwoosh lo almacena exactamente como usted lo pasa. No deduplica los ingresos por este campo.
</Aside>

**Ejemplo para JavaScript:**

```javascript
Pushwoosh.postEvent("PW_Conversion", {
    value: 49.99,
    currency: "USD",
    transaction_id: "ord_18274",
    product_id: "sku_premium_m"
});
```

#### Atributos para la llamada postEvent

La siguiente tabla enumera los atributos que puede pasar al enviar `PW_Conversion`.

| Campo <div style="width:120px"></div> | Tipo <div style="width:100px"></div> | Requerido <div style="width:80px"></div> | Descripción |
| --- | --- | --- | --- |
| `value` | número | Sí | El importe monetario de la transacción. |
| `currency` | cadena (ISO 4217) | Sí | El código de la moneda de la transacción, por ejemplo `USD` o `EUR`. |
| `transaction_id` | cadena | No | Un identificador único para la transacción. Recomendado para su propio mantenimiento de registros. Pushwoosh lo almacena tal cual, pero no lo utiliza para deduplicar los ingresos por sí mismo. |
| `product_id` | cadena | No | El identificador del producto o plan comprado. |

<Aside type="caution">
Los eventos de conversión no admiten actualmente reembolsos o cancelaciones. No hay forma de enviar un registro `PW_Conversion` negativo o de reversión. Una vez que se registra una transacción, permanece en sus totales de ingresos incluso si la compra se reembolsa o cancela posteriormente.
</Aside>

### Asignar un evento existente para el seguimiento de los ingresos

Esta ruta es adecuada cuando los datos de compra ya fluyen a través de otro evento y no desea cambiar su código. Cuando llega un evento de origen asignado, Pushwoosh lo activa y lo registra como un evento `PW_Conversion`.

<Aside type="note">
La asignación no cambia ni reemplaza el evento de origen. Sigue funcionando exactamente como antes. El evento de origen permanece disponible en la segmentación, el historial de eventos y los paneles de control como cualquier otro evento. Pushwoosh crea adicionalmente un registro de `PW_Conversion` a partir de él, utilizado solo para las funciones de ingresos.
</Aside>

1.  Vaya a **Audiencia > Eventos**. Busque la tarjeta **Seguimiento de eventos de conversión**.

2.  Haga clic en **Empezar a recopilar ingresos** (o **Asignación de eventos**, si ya ha asignado un evento). Se abre la página **Configurar eventos de conversión**.

<img src="/events-conversion-events-7.webp" alt="Página de configuración de eventos de conversión con la sección Usar eventos existentes para el seguimiento de la conversión"/>

3.  En **Usar eventos existentes para el seguimiento de la conversión**, abra el menú desplegable **EVENTO** y seleccione el evento que ya envía. La lista incluye eventos personalizados, eventos predeterminados y eventos de webhook entrantes (como Stripe o Shopify).

<img src="/events-conversion-events-4.webp" alt="Página de configuración de eventos de conversión con el menú desplegable de EVENTO predeterminado que muestra el marcador de posición Seleccionar evento"/>

4.  Asigne los atributos restantes:

    *   En **PRECIO**, seleccione el atributo que almacena el importe de la transacción.
    *   En **MONEDA**, seleccione el atributo que almacena el código de la moneda.
    *   Opcionalmente, asigne **ID DE TRANSACCIÓN (OPCIONAL)** e **ID DE PRODUCTO (OPCIONAL)**.
<img src="/events-conversion-events-1.webp" alt="Formulario de asignación de eventos de conversión con los campos de EVENTO, precio, moneda, ID de transacción e ID de producto rellenados"/>

Para asignar otro evento de origen, haga clic en **+ AÑADIR EVENTO**. Para eliminar una asignación, haga clic en **ELIMINAR**.

5.  Haga clic en **Aplicar**.

Puede asignar varios eventos como fuentes para la misma aplicación. Por ejemplo, asigne un evento `purchase_completed` personalizado junto con un evento de webhook de Stripe.

<Aside type="caution" title="Importante">
Los cambios no recalcularán las estadísticas pasadas. Solo los nuevos datos de conversión utilizarán la configuración actualizada.
</Aside>

## Supervisar los eventos de conversión

La tarjeta **Seguimiento de eventos de conversión** en **Audiencia > Eventos** resume la actividad de conversión para la aplicación seleccionada. Muestra dos números:

*   **Eventos asignados:** cuántos eventos de origen se alimentan actualmente en `PW_Conversion`.
*   **Activados en los últimos 7 días:** el número total de eventos `PW_Conversion` activados en esa ventana, desde cualquier asignación actual o pasada, o desde llamadas `postEvent` directas.

Haga clic en **Ver código** para volver a abrir la muestra de integración de `PW_Conversion`.

<img src="/events-conversion-events-6.webp" alt="Tarjeta de seguimiento de eventos de conversión después de la configuración, que muestra el recuento de eventos activados, el recuento de eventos asignados, y los enlaces Ver código, Asignación de eventos y Cómo usar"/>

<Aside type="caution" title="Importante">
Este recuento refleja cada evento `PW_Conversion` activado en los últimos 7 días, independientemente de la fuente. Si cambia o elimina una asignación, los eventos `PW_Conversion` pasados que ya generó permanecen contados hasta que salen de la ventana de 7 días. El número no disminuye ni se recalcula de inmediato.
</Aside>