# Eventos de conversão

Eventos de conversão coletam a receita do usuário em um formato uniforme para que você possa usá-la para atribuição, análise e segmentação.

## O que são eventos de conversão

Eventos de receita raramente vêm em um único formato. Seu SDK pode disparar `PW_InAppPurchase`, seu backend pode enviar um evento personalizado `OrderPlaced`, e o Stripe ou Shopify entregam seus próprios eventos de webhook. Sem um formato compartilhado, direcionar ou relatar a receita significa escrever uma lógica separada para cada fonte.

Os eventos de conversão resolvem isso normalizando tudo em `PW_Conversion`, um evento integrado com um conjunto fixo de campos:

*   `value`: o valor da transação
*   `currency`: código de moeda ISO 4217
*   `transaction_id` e `product_id`: identificadores opcionais

`PW_Conversion` abrange compras, renovações de assinatura e pagamentos de plataformas de terceiros, independentemente de onde o evento monetário original venha. Juntamente com eventos [padrão](/pt/product/audience-data-and-segmentation/events/default-events/) e [personalizados](/pt/product/audience-data-and-segmentation/events/custom-events/), os eventos de conversão são a terceira categoria de eventos no Pushwoosh.

Uma vez que a receita chega como `PW_Conversion`, a segmentação RFM, as Customer Journeys, os painéis e o ManyMoney AI leem os mesmos dados normalizados, não importa qual fonte os produziu.

### Como a receita chega ao Pushwoosh

Você obtém um registro `PW_Conversion` de duas maneiras:

*   **Envie-o diretamente do seu código:** seu aplicativo ou backend envia `PW_Conversion` após uma compra.
*   **Mapeie um evento existente no Control Panel:** aponte o Pushwoosh para um evento de compra que você já envia, e ele gera registros `PW_Conversion` sem alterar seu código. Você pode mapear mais de um evento de origem por aplicativo.

<Aside type="caution" title="Importante">
Use apenas um caminho por transação. Se você enviar `PW_Conversion` diretamente e também mapear outro evento que dispara para a mesma compra, o Pushwoosh registrará ambos como eventos `PW_Conversion` separados e independentes. O Pushwoosh não detecta nem mescla duplicatas entre fontes, mesmo quando compartilham um `transaction_id`.
</Aside>

## Casos de uso

Uma vez que os eventos de conversão estão configurados, esses dados se tornam utilizáveis em todos os lugares onde a receita importa no Pushwoosh:

*   Crie [segmentos RFM](/pt/product/audience-data-and-segmentation/segmentation/rfm-segmentation/) para usuários de alto valor com base no valor gasto e na recenticidade, sem lógica de receita personalizada para cada evento.
*   Defina `PW_Conversion` como uma [Meta de Conversão](/pt/product/customer-journey/journey-settings/#conversion-goals) em uma [Customer Journey](/pt/product/customer-journey/pushwoosh-journey-overview/) para ver quais fluxos realmente impulsionam compras, não apenas cliques ou aberturas.
*   Visualize a receita em painéis e relatórios sem criar lógica personalizada para cada evento de compra.
*   Combine a receita de eventos de compra do SDK e webhooks de pagamento (Stripe, Shopify) em um único conjunto de dados, em vez de analisar cada fonte separadamente.
*   Permita que o [ManyMoney AI](/pt/product/pushwoosh-ai/ai-assistant/) use dados de transações reais em suas recomendações e otimizações de campanha.

<Aside type="tip" title="Cenários de exemplo">
**Combine renovações e pedidos da loja**

Um aplicativo de assinatura envia `PW_Conversion` após cada pagamento de renovação e mapeia seu webhook do Shopify para `PW_Conversion` para vendas de mercadorias únicas. Ambas as fontes de receita agora contam para a mesma segmentação RFM, então os maiores gastadores do aplicativo caem automaticamente no segmento **Campeões**. A partir daí, você pode direcioná-los com uma oferta de fidelidade em uma Customer Journey.

**Unifique os gastos entre canais**

Um aplicativo móvel envia `PW_Conversion` para compras no aplicativo diretamente de seu backend e, separadamente, mapeia um webhook do Stripe para compras feitas em seu site. Como o Pushwoosh trata ambos como o mesmo tipo de evento de receita, o ManyMoney AI vê o histórico completo de gastos de um cliente, combinando aplicativo e site, quando recomenda quem direcionar em seguida.

**Veja quais jornadas impulsionam compras**

Uma jornada visa usuários que cancelaram recentemente com uma oferta de reconquista. Sua **Meta de Conversão** é definida como `PW_Conversion`. Após o término da jornada, as estatísticas da meta mostram quantos desses usuários fizeram uma compra, para que você possa ver que a jornada gerou compras reais, não apenas aberturas. Para ver quanta receita isso representa, verifique a visualização de receita do segmento ou do painel separadamente. A Customer Journey mostra a contagem de compras por meta, não um total em dólares por jornada.
</Aside>

## Como configurar eventos de conversão

Os eventos de conversão são configurados por aplicativo. Você pode configurar eventos de conversão de duas maneiras. Siga as instruções para o caminho que se ajusta à sua implementação.

### Envie `PW_Conversion` do seu código

Este caminho é adequado quando você pode adicionar ou alterar o código do evento em seu aplicativo ou backend. Após cada compra, envie `PW_Conversion` através do método [postEvent](/pt/developer/api-reference/user-centric-api/#postevent).

<Aside type="caution" icon="setting" title="Necessária assistência de desenvolvedor">
Para enviar `PW_Conversion` do seu código, você precisará da ajuda da sua equipe de desenvolvimento. Compartilhe a amostra de **Ver código**, juntamente com [este link](/pt/developer/guides/audience-and-segmentation/events/) com eles para obter instruções.
</Aside>

1.  Vá para **Público > Eventos**. Encontre o cartão **Acompanhamento de eventos de conversão**.

<img src="/events-conversion-events-5.webp" alt="Página de eventos com o cartão de Acompanhamento de eventos de conversão antes da configuração, mostrando zero eventos mapeados e o botão Iniciar coleta de receita"/>

2.  Clique em **Ver código**.

<img src="/events-conversion-events-3.webp" alt="Página de configuração de eventos de conversão com o link Ver código"/>

3.  Copie a amostra e adicione a chamada `postEvent` onde quer que uma compra seja concluída em seu aplicativo ou backend.
<img src="/events-conversion-events-2.webp" alt="Caixa de diálogo de código de integração com amostras de postEvent PW_Conversion para JavaScript, Swift, Objective-C e Java"/>

<Aside type="tip">
Apenas `value` e `currency` são obrigatórios. `transaction_id` e `product_id` são opcionais.

Se você enviar `transaction_id`, o Pushwoosh o armazena exatamente como você o passa. Ele não desduplica a receita por este campo.
</Aside>

**Exemplo para JavaScript:**

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

#### Atributos para a chamada postEvent

A tabela a seguir lista os atributos que você pode passar ao enviar `PW_Conversion`.

| Campo <div style="width:120px"></div> | Tipo <div style="width:100px"></div> | Obrigatório <div style="width:80px"></div> | Descrição |
| --- | --- | --- | --- |
| `value` | número | Sim | O valor monetário da transação. |
| `currency` | string (ISO 4217) | Sim | O código da moeda da transação, por exemplo, `USD` ou `EUR`. |
| `transaction_id` | string | Não | Um identificador único para a transação. Recomendado para seus próprios registros. O Pushwoosh o armazena como está, mas não o utiliza para desduplicar a receita por conta própria. |
| `product_id` | string | Não | O identificador do produto ou plano comprado. |

<Aside type="caution">
Os eventos de conversão atualmente não suportam reembolsos ou cancelamentos. Não há como enviar um registro `PW_Conversion` negativo ou de estorno. Uma vez que uma transação é registrada, ela permanece em seus totais de receita, mesmo que a compra seja posteriormente reembolsada ou cancelada.
</Aside>

### Mapeie um evento existente para acompanhar a receita

Este caminho é adequado quando os dados de compra já fluem através de outro evento e você não deseja alterar seu código. Quando um evento de origem mapeado chega, o Pushwoosh o dispara e o registra como um evento `PW_Conversion`.

<Aside type="note">
O mapeamento não altera nem substitui o evento de origem. Ele continua funcionando exatamente como antes. O evento de origem permanece disponível na segmentação, histórico de eventos e painéis como qualquer outro evento. O Pushwoosh cria adicionalmente um registro `PW_Conversion` a partir dele, usado apenas para recursos de receita.
</Aside>

1.  Vá para **Público > Eventos**. Encontre o cartão **Acompanhamento de eventos de conversão**.

2.  Clique em **Começar a coletar receita** (ou **Mapeamento de eventos**, se você já mapeou um evento). A página **Configurar eventos de conversão** será aberta.

<img src="/events-conversion-events-7.webp" alt="Página de configuração de eventos de conversão com a seção Usar eventos existentes para acompanhar a conversão"/>

3.  Em **Usar eventos existentes para acompanhar a conversão**, abra o menu suspenso **EVENTO** e selecione o evento que você já envia. A lista inclui eventos personalizados, eventos padrão e eventos de webhook de entrada (como Stripe ou Shopify).

<img src="/events-conversion-events-4.webp" alt="Página de configuração de eventos de conversão com o menu suspenso EVENTO padrão mostrando o placeholder Selecionar evento"/>

4.  Mapeie os atributos restantes:

    *   Em **PREÇO**, selecione o atributo que armazena o valor da transação.
    *   Em **MOEDA**, selecione o atributo que armazena o código da moeda.
    *   Opcionalmente, mapeie **ID DA TRANSAÇÃO (OPCIONAL)** e **ID DO PRODUTO (OPCIONAL)**.
<img src="/events-conversion-events-1.webp" alt="Formulário de mapeamento de evento de conversão com os campos EVENTO, preço, moeda, ID da transação e ID do produto preenchidos"/>

Para mapear outro evento de origem, clique em **+ ADICIONAR EVENTO**. Para remover um mapeamento, clique em **REMOVER**.

5.  Clique em **Aplicar**.

Você pode mapear vários eventos como fontes para o mesmo aplicativo. Por exemplo, mapeie um evento personalizado `purchase_completed` juntamente com um evento de webhook do Stripe.

<Aside type="caution" title="Importante">
As alterações não recalcularão as estatísticas passadas. Apenas os novos dados de conversão usarão a configuração atualizada.
</Aside>

## Monitorar eventos de conversão

O cartão **Acompanhamento de eventos de conversão** em **Público > Eventos** resume a atividade de conversão para o aplicativo selecionado. Ele mostra dois números:

*   **Eventos mapeados:** quantos eventos de origem atualmente alimentam o `PW_Conversion`.
*   **Acionados nos últimos 7 dias:** o número total de eventos `PW_Conversion` disparados nessa janela, de qualquer mapeamento atual ou passado, ou de chamadas diretas `postEvent`.

Clique em **Ver código** para reabrir a amostra de integração `PW_Conversion`.

<img src="/events-conversion-events-6.webp" alt="Cartão de Acompanhamento de eventos de conversão após a configuração, mostrando a contagem de eventos acionados, a contagem de eventos mapeados, e os links Ver código, Mapeamento de eventos e Como usar"/>

<Aside type="caution" title="Importante">
Esta contagem reflete cada evento `PW_Conversion` disparado nos últimos 7 dias, independentemente da fonte. Se você alterar ou remover um mapeamento, os eventos `PW_Conversion` passados que ele já gerou permanecem contados até saírem da janela de 7 dias. O número não diminui ou recalcula imediatamente.
</Aside>