O que o comerciante implementa
Uma rotaPOST pública, por exemplo https://sua-api.com/webhooks/pix, que retorna 2xx rapidamente e aplica a lógica de negócio de forma assíncrona após validar a assinatura.
Registro
UsePOST /webhook com URL e a lista de eventos — ver registro (TODO corpo).
Eventos suportados (strings exatas)
event na inscrição | Quando dispara (origem) |
|---|---|
pix_cash_in | Cash-in alcança terminal relevante (PAID / FAILED) |
pix_cash_out | Cash-out confirmado ou falha terminal de liquidação |
pix_cash_in_reversal | Refund-in confirmado ou falha |
pix_cash_out_reversal | Cash-out previamente confirmado é revertido |
Formato do HTTP (saída)
Corpo (padrão)
O envelope incluievent_type e event com metadados (id, status, value_cents, end_to_end_id, taxas, timestamps). Exemplos completos: referência de eventos.
TODO: tamanho máximo do corpo, compressão, charset — a origem não cita; validar com implementação (tipicamente UTF-8 JSON).
Resposta (SLA)
Responda 2xx em poucos segundos; a origem cita gama recomendada < 2–10 s. Falhas transitórias geram retentativas com backoff (fila). Seus handlers devem ser idempotentes.Canais e latência (origem)
- Cash-in / refund-in (outbox): entrega durável, commit + dispatcher (variáveis:
PIX_STATUS_NOTIFICATION_*). - Cash-out e reversão: possível entrega com baixa latência via pool de goroutines, com fallback SQS em saturação/falha.
Segurança
- Sempre verificar
Digital-SignaturecomGET /public-key. - TLS; segredos fora de repositório.