Skip to main content
Webhooks permitem que a plataforma envie uma requisição POST para URLs cadastradas sempre que determinados eventos ocorrerem. O payload enviado contém todas as includes disponíveis relacionadas ao recurso.

Crie webhooks via API

Você pode criar e gerenciar webhooks através da API de Webhooks. Para mais informações, consulte a documentação da API de Webhooks.
A criação dos webhooks é restrita ao limite definido ao plano da sua loja, acesse a página de planos para consultar seu limite. Webhooks criados por aplicativos homologados não são levados em consideração nessa contagem.

Eventos disponíveis

Abaixo estão os eventos atualmente suportados. Você pode configurar webhooks para escutar um ou mais desses eventos:

Exemplos de payloads de Webhook

Aqui centralizaremos todos os payloads retornados por cada webhook.
Exemplos de payloads retornados em order.created, order.updated, order.paid e order.status.updated. Onde, o campo event é enviado de acordo com o evento que disparou esse webhook.
⚠️ Sua aplicação deve responder em até 5 segundos com um status code do nível 2XX. Caso contrário, a Yampi abortará a requisição e marcará como uma falha. Após 30 falhas, o webhook será desativado automaticamente.

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 acima). 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!

Exemplo de validação em PHP

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()