O que são Webhooks?
Os Webhooks PIX permitem que você receba notificações em tempo real quando o status de uma transação PIX muda. Em vez de fazer polling constantemente na API, seu sistema é notificado automaticamente quando eventos importantes ocorrem.Webhooks são a forma recomendada de acompanhar o status das transações. Eles reduzem a latência e o consumo de recursos comparado ao polling.
Características
- Notificações em tempo real
- Suporte a 4 tipos de eventos (Cash In, Cash Out, Refund In, Refund Out)
- Retentativas automáticas em caso de falha
- Autenticação via Basic Auth
- Payload padronizado em JSON
Eventos Disponíveis
CashIn
Recebimento PIX confirmado (CREDIT)
CashOut
Envio PIX confirmado (DEBIT)
CashInReversal
Estorno de recebimento (DEBIT)
CashOutReversal
Devolução de envio recebida (CREDIT)
| Evento | event | movementType | Descrição |
|---|---|---|---|
| PIX In | CashIn | CREDIT | Recebimento PIX confirmado |
| PIX Out | CashOut | DEBIT | Envio PIX confirmado |
| Refund In | CashInReversal | DEBIT | Estorno de recebimento (devolução iniciada por você) |
| Refund Out | CashOutReversal | CREDIT | Devolução de envio (devolução recebida) |
Configuração do Endpoint
Para receber webhooks, você precisa:1
Configurar URL de Webhook
Entre em contato com o suporte da Avista para configurar a URL do seu endpoint de webhook.
2
Implementar Endpoint
Crie um endpoint HTTPS que aceite requisições POST e retorne HTTP 200 rapidamente.
3
Validar Autenticação
Configure a validação do header de autenticação Basic Auth.
Requisitos Técnicos
| Requisito | Descrição |
|---|---|
| Protocolo | HTTPS obrigatório |
| Método | POST |
| Timeout | Responder em até 10 segundos |
| Response | HTTP 200 OK |
| Content-Type | application/json |
Autenticação Basic Auth
Os webhooks são enviados com autenticação Basic Auth no header:Estrutura Base do Payload
Todos os webhooks compartilham uma estrutura base comum:Campos Obrigatórios
Campos Obrigatórios
Tipo do evento.Valores possíveis:
CashIn, CashOut, CashInReversal, CashOutReversalStatus da transação.Valores possíveis:
PENDING, CONFIRMED, ERRORTipo de transação. Sempre
PIX para webhooks PIX.Tipo de movimento na conta.
CREDIT: Entrada de recursos (recebimento ou devolução recebida)DEBIT: Saída de recursos (envio ou estorno)
UUID único da transação na Avista.Exemplo:
"6d94e3ce-5a10-4fbe-a01c-f03c743a6608"ID End-to-End gerado pelo Banco Central para rastreamento.Exemplo:
"E00416968202512111942rjzxxzSSTD9"Data e hora do processamento (ISO 8601 UTC).Exemplo:
"2025-12-11T19:42:04.080Z"Campos de Valores
Campos de Valores
Taxa cobrada pela transação em reais (BRL).Exemplo:
0.01Valor original da transação em reais (BRL).Exemplo:
0.50Valor final após aplicação de taxas.
- Para
CREDIT:originalAmount - feeAmount - Para
DEBIT:originalAmount + feeAmount
Campos Opcionais
Campos Opcionais
ID externo fornecido na criação da transação.Exemplo:
"PIX-5482123298-EJUYFSMU1UU"Chave PIX utilizada na transação (CPF, CNPJ, email, telefone ou chave aleatória).
Código de erro quando
status é ERROR. Nulo se sucesso.Mensagem de erro descritiva. Nulo se sucesso.
Metadados adicionais específicos do evento.