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

# Execução, duplicidade e diagnóstico

> Quando a automação corre, o que acontece em falha e como investigar no painel.

Esta página descreve o **comportamento** que você observa ao usar automações — não a infraestrutura da Corvex.

## O que acontece depois do evento

1. O evento ocorre na loja (pagamento, PIX, carrinho, etc.).
2. A plataforma localiza automações **ativas** da **mesma loja** com o mesmo `trigger_event`.
3. Se já correu essa automação para o mesmo fato (mesmo pedido, lead ou e-mail, conforme o gatilho), **não dispara de novo**.
4. Conditions escolhem o ramo. Metatags são preenchidas. Actions enviam a mensagem.
5. Delays esperam os minutos configurados e seguem.
6. O resultado aparece nos logs e métricas do painel.

A execução é **assíncrona**: salvar a automação não envia na hora; o envio ocorre quando o evento acontece.

```mermaid theme={null}
flowchart TD
  A[Evento na loja] --> B{Automação ativa deste gatilho?}
  B -->|não| C[Nada enviado]
  B -->|sim| D{Já executou para este fato?}
  D -->|sim| C
  D -->|não| E[Conditions]
  E --> F[Metatags]
  F --> G[Envio]
  G --> H[Concluída, falhou ou bloqueada]
```

## Estados

### Automação

Só `active: true` ou `false`.

### Execução

Uma corrida da automação pode aparecer como iniciada, em andamento, **concluída**, **falhou** ou **cancelada**.

### Passo

Um passo pode concluir, falhar, ser **ignorado** ou ficar **bloqueado** (por exemplo, sem créditos).

## Duplicidade

A plataforma evita enviar a mesma automação duas vezes para o mesmo fato:

| Gatilho                 | Comportamento                                      |
| ----------------------- | -------------------------------------------------- |
| PIX, boleto, pagamento  | Mesmo pedido não dispara de novo o mesmo fluxo     |
| `cart.abandoned`        | Em geral uma vez por lead/checkout                 |
| `lead.created`          | Uma vez por lead novo                              |
| `email.received`        | Uma vez por e-mail recebido                        |
| `tracking_code_updated` | Pode repetir se o rastreio **mudar** de novo       |
| Assinatura              | Por ciclo, dia de lembrete ou momento da suspensão |

O mesmo tipo de evento pode **chegar mais de uma vez** (várias confirmações de pagamento). A proteção de duplicidade agrupa o que for o mesmo pedido/lead.

## Falhas e novas tentativas

* Envio para provedor instável: a plataforma **pode tentar de novo** algumas vezes.
* Depois das tentativas, a execução fica **falhou**.
* Step `retry` no JSON tenta de novo os passos filhos, com a pausa em minutos que você configurou.
* Metatag desconhecida ou sem valor: o texto sai **vazio** naquele trecho (não quebra o save, salvo validação estrita no painel).
* `webhook`: POST HTTPS para `data.url` (contexto do evento, sem secrets).
* `create_coupon`: cria cupom da loja (`coupon_name`, `discountType`, `amount`; `coupon_code` opcional).
* Sem telefone ou e-mail do destinatário: a execução **falha**.
* Sem créditos: a mensagem fica **bloqueada**.
* `cart.abandoned` que falha no envio **não** é automaticamente reenviado (para não duplicar SMS). Vale conferir o log e, se preciso, tratar o caso no painel.

## Por que a automação não enviou?

No painel, abra a automação, os logs e as métricas. Confira:

1. Está `active: true` e o `trigger_event` é **exatamente** o evento que ocorreu?
2. O evento foi **desta loja**?
3. Já tinha corrido para o mesmo pedido ou lead?
4. A condition usa um [campo suportado](/automations-steps) e não está comparando valor vazio?
5. A mensagem foi **bloqueada** por créditos?
6. Em `cart.abandoned`, havia telefone/e-mail e checkout identificados?
7. A metatag existe **naquele gatilho**? Senão o texto some, mas o envio pode ocorrer assim mesmo.

Identificadores úteis no painel: loja, automação, pedido, lead, checkout e o status da execução.

## Isolamento e dados

* Automações de uma loja **não** veem eventos de outra.
* API Key (`cvx_live_...`) consulta metatags; **não** cria fluxos.
* Não coloque senhas, tokens ou URLs secretas no JSON dos steps.
* Metatags marcadas como sensíveis (e-mail, telefone, documento) carregam dados pessoais — use só no conteúdo da mensagem.
* Uma LLM não deve gerar automação para outra loja.
