Responsabilidade
O recebimento de webhook tem três responsabilidades:- Registrar a entrega externa de forma rastreável.
- Garantir idempotência por provider e identificador externo do evento.
- Traduzir eventos reconhecidos para efeitos de negócio em um contexto específico.
Idempotência
Um webhook é identificado pelo parexternalProvider + externalEventId. Esse par representa o mesmo evento externo, mesmo que o provider entregue o payload mais de uma vez.
Modelo genérico
O modelo genérico de webhook é independente do provider e do contexto de negócio. Ele guarda os identificadores externos, o payload original, a ação derivada e o estado de processamento.
Veja a modelagem completa em Webhook.
Contextos
Billing
Eventos externos de billing mapeados para pagamento, pedido, recebíveis e transferência.