Passar para o conteúdo principal
Todas as coleçõesAPIs e WebhooksWebhooks
Características e recomendações dos Webhooks
Características e recomendações dos Webhooks

Neste artigo, descubra as características e boas práticas de uso dos Webhooks

Luis Felipe avatar
Escrito por Luis Felipe
Atualizado há mais de uma semana

A integração via Webhooks no Omie possibilita que sistemas externos recebam notificações de eventos em tempo real.

Para assegurar a integridade e a entrega desses eventos, o Omie adota uma lógica robusta de tentativas e adiamento em caso de falhas na entrega.


Nesse artigo, vamos explorar as características técnicas dos Webhooks no Omie e fornecer recomendações para uso. 🚀

💡 Dica

Se você precisa verificar como utilizar nossos Webhooks, temos um artigo dedicado sobre este tema. Para acessar o artigo, clique no botão abaixo:

Tópicos do Artigo:


Funcionamento e detalhes técnicos

O Omie faz o agrupamento dos eventos para cada endpoint de Webhook e envia solicitações POST para esses destinos. O agrupamento é feito da seguinte forma:

  • Agrupamento de Eventos. Os eventos são agrupados para cada aplicativo Omie e o endpoint de Webhook;

  • Processamento Sequencial. Os eventos são processados sequencialmente (FIFO - First In, First Out).

A gestão de fila dos eventos, ocorre considerando o código de resposta HTTP, retornado pelo Endpoint e também, pelo tempo de Timeout, em caso de falhas no processamento.

  • Código de Resposta HTTP 2XX. Se o endpoint do Webhook retornar um código de resposta HTTP 2XX (como o código 200), o evento é considerado processado com sucesso e removido da fila;

  • Falha no Processamento. Se o endpoint do Webhook não retornar um código de resposta HTTP 2XX ou ultrapassar o tempo de Timeout, a solicitação POST será refeita em intervalos regulares.

💡 Dica

Os códigos de resposta do protocolo HTTP indicam se uma solicitação HTTP foi concluída com êxito ou se foi retornado algum erro.

Para conferir o status que cada código representa, recomendamos a consulta por este link.

Se as tentativas de entrega de eventos na Fila Principal falharem, eles serão movidos para a DLQ (Dead Letter Qeue).

Na tabela abaixo, você pode conferir os detalhes das operações da Fila Principal e da DLQ:

Fila Principal

Dead Letter Queue (DLQ)

Timeout

7 segundos

Até 20 segundos

Limite de tentativas

3 tentativas

Até 5 dias

Intervalo entre Tentativas

1 a 4 segundos

1 tentativa a cada 10 minutos

É importante destacar que enquanto uma solicitação POST malsucedida estiver sendo refeita, nenhum outro POST do grupo será tentado. Eventos subsequentes serão adiados até que o primeiro evento seja processado com sucesso.

Por isso, orientamos seguir as recomendações de utilização, a fim de evitar o adiamento de eventos.


Recomendações de utilização

Para evitar a perda de notificações por tentativas malsucedidas, é importante definir algumas configurações em seu Endpoint:

  • Aceite e Armazene os Dados. O endpoint utilizado deve retornar um código de resposta HTTP 2XX o mais rápido possível;

  • Processamento Posterior. Armazene os dados para processamento posterior, garantindo que os eventos não sejam perdidos mesmo que o processamento imediato não seja possível.

Ao certificar-se de que estas etapas estão devidamente implementadas, você assegura a confiabilidade e a eficiência do seu sistema de notificações via Webhooks.


FAQ - Webhooks

Neste FAQ, reunimos algumas dúvidas comuns que podem surgir durante a utilização dos Webhooks do Omie:

1) Se eu modificar o endpoint de destino para os Webhooks, a fila de dados represados será atualizada?

Não, somente os novos eventos, criados após a alteração, serão direcionados ao novo endpoint.

Ao alterar o endpoint atual, ou, remover e adicionar um novo endpoint, os eventos antigos sofrerão tentativas de envio, até que seja atingido o limite de tentativas.

2) Se eu remover o Webhook, isso terá algum impacto no sistema Omie?

Remover um Webhook não afeta o sistema Omie.ERP.

No entanto, os sistemas integrados, e dependem das notificações via Webhook, perderão a comunicação com seu aplicativo Omie.


📚 Artigos Relacionados

Respondeu à sua pergunta?