Nesta página
Configure um receptor no seu backend
Informe callback_url na criação para definir o destino daquela transação. Sem esse campo, utiliza-se o webhook configurado no Tenant. O receptor deve aceitar o formato documentado e preservar os bytes recebidos antes de interpretar JSON.
O payload inclui api_version, event_id, event_type, created_at e transaction. Os headers X-Face-Auth-Event-Id, X-Face-Auth-Event-Type, X-Face-Auth-Timestamp e X-Face-Auth-Signature permitem identificar e validar a entrega. Veja a referência completa para os enums de evento.
Uma entrega pode se repetir
Deduplicar por transaction_id descartaria eventos diferentes da mesma jornada. Use event_id com armazenamento durável e protegido contra concorrência. Verifique a assinatura antes de confiar no evento e confirme a consistência dos identificadores de evento do envelope e do header.
O receptor pode guardar o evento validado em uma fila durável e processá-lo separadamente. Responda com sucesso apenas depois de aceitar o trabalho de forma persistente; uma confirmação não deve esconder uma perda de dados.
Não dependa da ordem de chegada
Uma repetição ou atraso pode fazer um evento antigo chegar depois de outro mais recente. Consulte o GET da transação para reconciliar seu estado antes de liberar efeitos de negócio. Faça esses efeitos também idempotentes, para que uma nova tentativa não gere duas liberações.
Continue em validação HMAC e reentrega e reconciliação. Uma integração pronta trata também assinatura inválida, indisponibilidade temporária e eventos recebidos fora de ordem.