Para mais detalhes sobre o evento PAYMENT e a descrição completa de todos os campos do payload, consulte a referência do evento PAYMENT.
Visão Geral
Quando um pagamento PIX é confirmado, a Plowf envia um eventoPAYMENT para seu endpoint. Esta página mostra como configurar o endpoint, registrar o webhook e reagir aos eventos.
Pré-requisitos
- Token de autenticação da API (ver autenticação)
- Um servidor com endpoint HTTPS acessível publicamente
1. Configurar seu endpoint de webhook
Prepare um endpoint no seu servidor para receber os eventos. Ele deve:- Aceitar requisições
POST - Validar a assinatura HMAC antes de processar
- Responder com status
2xxem até 5 segundos
Consulte a página de validação de assinatura para exemplos em Python e PHP.
2. Registrar o webhook na Plowf
Com seu endpoint pronto, registre-o para receber eventosPAYMENT:
uuid do webhook retornado. Guarde também o token — você vai usá-lo para validar a assinatura.
3. Receber e processar o evento PAYMENT
Quando o pagamento for confirmado, a Plowf envia umPOST para seu endpoint com este payload:
external_ref para identificar a qual pedido o pagamento pertence no seu sistema.
Status possíveis no evento PAYMENT
| Status | Significado |
|---|---|
PENDING | Aguardando pagamento |
PROCESSING | Pagamento em processamento |
PAID | Pago com sucesso |
EXPIRED | QR Code expirado sem pagamento |
FAILED | Pagamento falhou |
CANCELLED | Cobrança cancelada |
REFUNDED | Valor estornado |
PARTIALLY_REFUNDED | Valor estornado parcialmente |
Boas práticas
- Idempotência: Use o
uuidda cobrança para evitar processar o mesmo evento mais de uma vez. - Resposta rápida: Responda
200imediatamente e processe o evento de forma assíncrona se necessário. O timeout é de 5 segundos. - Nunca confie sem validar: Sempre verifique a assinatura HMAC antes de atualizar pedidos.
Cobranças com split
Se a cobrança tiver splits, o eventoPAYMENT inclui o status de cada split no campo splits:
CREDITED confirma que o split foi transferido para a conta destinatária.
| Status do split | Significado |
|---|---|
PENDING | Aguardando processamento |
CREDITED | Transferido para a conta destinatária |
FAILED | Falhou ao transferir |