Eventos disponíveis
| Evento | Descrição |
|---|---|
| order.created | Pedido criado |
| order.paid | Pedido aprovado |
| order.status.updated | O status de um pedido foi atualizado |
| order.invoice.created | Nota fiscal de um pedido foi criada |
| order.invoice.updated | Nota fiscal de um pedido foi atualizada |
| transaction.payment.refused | O pagamento de uma transação foi negado |
| cart.reminder | Notificação de carrinho abandonado |
| customer.created | Cliente criado |
| customer.address.created | Endereço do cliente criado |
| product.created | Produto criado |
| product.updated | Produto atualizado |
| product.deleted | Produto excluído |
| product.inventory.updated | Estoque de produto atualizado |
| cashback.expiring | Um Cashback está expirando |
Segurança
A validação do webhook serve para verificar se realmente ele foi enviado pela Yampi, e é de extrema importância a sua utilização para que suas transações estejam seguras. Para fazer a validação, são necessárias duas informações de nosso webhook:- Valor do header
X-Yampi-Hmac-SHA256. Vamos chamar esse valor de “assinatura do webhook”; - Corpo da requisição (no mesmo formato mostrado na seção anterior). Com esses dois valores, basta realizar o base64 do algoritmo HMAC-SHA256 do corpo da requisição utilizando a chave secreta do Webhook e comparar com a assinatura do webhook. Se os valores forem iguais, excelente. Caso contrário, não fomos nós que enviamos essa requisição!
Importante: é esperado que o base64 seja calculado em cima do hmac em formato binário. No exemplo em PHP, é o terceiro argumento da função hash_hmac()