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

# Configurar webhook

> Passo a passo genérico pra apontar o webhook do seu gateway pra xTracky.

Cada plataforma tem um painel diferente pra configurar webhook, mas o processo é sempre o mesmo:

<Steps>
  <Step title="Descubra o slug da sua plataforma">
    O slug é o nome da plataforma em minúsculas. Alguns exemplos:

    | Plataforma | Slug       | Endpoint completo                                   |
    | ---------- | ---------- | --------------------------------------------------- |
    | Vega       | `vega`     | `https://api.xtracky.com/api/integrations/vega`     |
    | Cakto      | `cakto`    | `https://api.xtracky.com/api/integrations/cakto`    |
    | Tribopay   | `tribopay` | `https://api.xtracky.com/api/integrations/tribopay` |
    | Mangofy    | `mangofy`  | `https://api.xtracky.com/api/integrations/mangofy`  |
    | Shopify    | `shopify`  | `https://api.xtracky.com/api/integrations/shopify`  |

    A lista completa está em [Plataformas integradas](/plataformas/lista).
  </Step>

  <Step title="Acesse o painel do seu gateway">
    Procure por seções como **Webhooks**, **Integrações**, **Postbacks**, **Notificações** ou **Callbacks**. O nome varia.
  </Step>

  <Step title="Cadastre o webhook">
    * **URL de destino:** `https://api.xtracky.com/api/integrations/{seu-slug}`
    * **Método:** `POST`
    * **Content-Type:** `application/json`
    * **Eventos:** todos os relacionados a pagamento (`payment.created`, `payment.paid`, `payment.refunded`, etc.). Se o gateway não deixar filtrar, envie todos — a xTracky ignora o que não interessa.
  </Step>

  <Step title="Salve e teste">
    A maioria dos gateways permite disparar um webhook de teste. Se não, faça uma venda real de valor mínimo (R\$ 1,00 se possível) e acompanhe no painel xTracky.

    A venda deve aparecer em **Dashboard → Vendas em tempo real** em alguns segundos.
  </Step>
</Steps>

## O que fazer se a venda não aparecer

<AccordionGroup>
  <Accordion title="Confira o slug">
    Bateu o nome certo? Sem hífen? Sem maiúscula? Alguns gateways tem "slug" que não é óbvio pelo nome comercial. Consulte a [lista completa](/plataformas/lista).
  </Accordion>

  <Accordion title="O gateway está enviando algum payload?">
    Nos logs do gateway, confirme que o webhook foi disparado e recebeu HTTP 2xx da xTracky. Se recebeu 4xx/5xx, veja o corpo da resposta pra pista.
  </Accordion>

  <Accordion title="Assinatura de webhook (HMAC)">
    Alguns gateways exigem que você cadastre a URL no formato específico deles pra validar assinatura. A xTracky aceita as assinaturas padrão de cada gateway automaticamente — só garanta que você **usou a URL exata** da lista.
  </Accordion>

  <Accordion title="O `LeadId` não está sendo capturado">
    O gateway precisa passar o `utm_source` (ou equivalente) pra xTracky. Confirme que o script está capturando UTMs no checkout e que o gateway está persistindo esse valor no pedido.
  </Accordion>

  <Accordion title="Nada funcionou">
    Abra ticket em [suporte@xtracky.com](mailto:suporte@xtracky.com) com:

    * Nome do gateway
    * Screenshot da config do webhook
    * Um `orderId` de teste que não subiu
    * Print do log de webhook do gateway (com timestamp)
  </Accordion>
</AccordionGroup>

## Testando localmente

Se você quer testar seu funil sem envolver o gateway, use a API pública:

```bash theme={null}
curl -X POST https://api.xtracky.com/api/integrations/api \
  -H "Content-Type: application/json" \
  -d '{
    "orderId": "TEST_LOCAL_1",
    "amount": 100,
    "status": "paid",
    "utm_source": "TT-1763007625226-yn4xita3qylwh",
    "leadEmail": "teste@xtracky.com"
  }'
```
