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

# Entender os eventos enviados à Meta

> Veja quando PageView, InitiateCheckout, AddPaymentInfo, Purchase e os demais eventos do checkout são enviados.

A Chargefy envia apenas eventos que consegue observar dentro do checkout e do
pagamento. O mapeamento é fixo para manter o funil comparável e evitar uma
configuração errada que prejudique a otimização da campanha.

## Mapa do funil

| Momento no negócio                           | Evento                     | Frequência                           |
| -------------------------------------------- | -------------------------- | ------------------------------------ |
| A página da sessão renderizou                | `PageView`                 | Uma vez por renderização real        |
| O comprador iniciou o checkout               | `InitiateCheckout`         | Uma vez por sessão                   |
| O comprador enviou os dados de pagamento     | `AddPaymentInfo`           | Uma vez por sessão                   |
| Uma compra avulsa foi aprovada               | `Purchase`                 | Uma vez por pagamento aprovado       |
| Uma assinatura começou com cobrança imediata | `Subscribe`                | Uma vez na aquisição                 |
| Uma assinatura começou em teste grátis       | `StartTrial`               | Uma vez na aquisição, com valor zero |
| Uma tentativa de pagamento foi recusada      | `Chargefy_PaymentFailed`   | Uma vez por tentativa recusada       |
| A sessão expirou sem pagamento               | `Chargefy_CheckoutExpired` | Uma vez por sessão expirada          |

`PageView`, `InitiateCheckout`, `AddPaymentInfo`, `Purchase`, `Subscribe` e
`StartTrial` são eventos padrão da Meta. Os dois nomes com prefixo `Chargefy_`
são eventos personalizados, porque a Meta não possui eventos padrão específicos
para recusa e expiração do checkout.

## A mesma ocorrência nos dois canais

Quando navegador e servidor estão ativos, os dois enviam a mesma ocorrência
com o mesmo `event_id`. A URL também é a mesma página hospedada da Checkout
Session. No servidor, ela aparece como `event_source_url`; no Pixel, é a página
em que o evento foi disparado.

Essa paridade permite que a Meta deduplique as duas cópias. Na atividade da
Chargefy, porém, a evidência continua separada:

| Canal                          | O que a Chargefy consegue provar                                        |
| ------------------------------ | ----------------------------------------------------------------------- |
| **Servidor (Conversions API)** | Quantos eventos a Meta confirmou e, quando fornecido, o rastreio da API |
| **Navegador (Pixel)**          | Que o comando do Pixel foi executado na página do checkout              |

“Recebido” ou “Disparado” não significa que o evento já foi relacionado a um
anúncio. Correspondência, deduplicação e atribuição acontecem depois na Meta.

## PageView

Nasce somente quando uma página de Checkout Session é realmente renderizada.
Preview de mensagem, bot, prefetch e criação da sessão pelo backend não geram
uma visualização.

Recarregar a página gera outro `PageView`, pois houve outra visualização. Isso
não repete o `InitiateCheckout` daquela sessão.

## InitiateCheckout

Marca a primeira abertura do checkout. Ele indica que o comprador chegou ao
formulário, mesmo que saia sem preencher dados ou escolher uma forma de
pagamento.

Use esse evento para medir a passagem do clique para o checkout e formar
públicos de quem demonstrou intenção.

Com os dois canais ativos, a mesma abertura deve aparecer como **Recebido** no
servidor e **Disparado** no navegador. O `event_id` compartilhado permite que a
Meta trate essa redundância como uma única iniciativa de checkout.

## AddPaymentInfo

Dispara quando o comprador envia os dados de pagamento, antes do resultado
final.

Em Pix e boleto, esse é o momento em que o código é gerado. Ele fecha o espaço
entre “abriu o checkout” e “pagou”, que pode durar horas ou dias. Como os dados
do comprador já foram preenchidos, esse evento também costuma ter mais sinais
de correspondência do que `InitiateCheckout`.

O evento sai uma vez por sessão. Uma nova tentativa de cartão recusado não cria
outro `AddPaymentInfo`.

## Purchase

Dispara quando uma compra avulsa é efetivamente aprovada. O clique no botão de
pagamento não basta.

* cartão aprovado: o evento costuma sair durante a própria navegação;
* Pix pago depois: o evento sai quando o pagamento é confirmado;
* boleto pago dias depois: o evento sai no dia da compensação;
* código gerado e nunca pago: não existe `Purchase`.

## Subscribe e StartTrial

`Subscribe` marca uma assinatura que começa cobrando na entrada. `StartTrial`
marca uma assinatura que começa em teste grátis; como ainda não houve receita,
o valor enviado é zero.

Renovações posteriores não geram outro evento de aquisição. A campanha causou
a entrada da assinatura, não cada cobrança recorrente futura.

## Chargefy\_PaymentFailed

Dispara a cada tentativa recusada, com o valor que teria sido cobrado. Serve
para medir fricção no fim do funil e formar públicos de recuperação.

Como é por tentativa, uma sessão com dois cartões recusados pode gerar dois
eventos. Isso é diferente de `AddPaymentInfo`, que descreve a sessão e sai uma
vez.

## Chargefy\_CheckoutExpired

Dispara quando a sessão chega ao fim do prazo sem pagamento. Inclui quem abriu
e saiu e quem gerou Pix ou boleto, mas não concluiu dentro da validade.

O nome fala em expiração porque esse é o fato que a Chargefy observa. A sessão
concluída não expira e uma compra aprovada não entra nesse evento.

## Cupom aplicado

A aplicação de cupom é registrada internamente no funil, mas não é enviada à
Meta. `AddPaymentInfo` já representa uma intenção mais forte e carrega mais
dados de correspondência; enviar os dois criaria ruído sem acrescentar um marco
de aquisição melhor.

<Note>
  Visita de produto, busca, navegação na landing page e outros eventos
  anteriores ao checkout pertencem ao seu site. Mantenha o Pixel do seu site
  para medir essa parte da jornada.
</Note>

## Correspondência e privacidade

Além do evento, a Chargefy envia valor, moeda, itens da compra e os sinais
disponíveis para a Meta relacionar a conversão ao comprador e ao clique.

| Dado                                                            | Como é enviado                       | Finalidade                              |
| --------------------------------------------------------------- | ------------------------------------ | --------------------------------------- |
| E-mail, telefone, nome, endereço e identificadores do comprador | Normalizados e hasheados com SHA-256 | Correspondência com a base da Meta      |
| IP, user agent, `fbc` e `fbp`                                   | Sem hash                             | Contexto do clique e do navegador       |
| `event_id`                                                      | Sem hash                             | Deduplicação entre navegador e servidor |

O `fbclid` identifica o clique no anúncio e pode originar o `fbc`; o `fbp`
identifica o navegador. Preserve esses parâmetros até o checkout. UTMs servem
para os relatórios de aquisição da Chargefy, mas não substituem esses sinais nem
são enviadas à Meta como campos de campanha.

<Warning>
  Hash não torna o evento anônimo. Não coloque dados pessoais ou segredos em
  URLs e só ative o canal de navegador quando isso estiver de acordo com sua
  política de privacidade e gestão de consentimento.
</Warning>
