Primeiro vamos entender o que é um Webhook e sua utilidade.
Um webhook é uma tecnologia que permite que duas aplicações se comuniquem de forma automatizada e em tempo real. Quando um evento específico acontece em uma aplicação, como, por exemplo, o registro de uma nova venda em um sistema de e-commerce, o webhook é acionado e envia os dados dessa venda para outra aplicação por meio de uma requisição HTTP.
O envio dos dados é realizado por meio de um POST(ou, em alguns casos, um método HTTP diferente) para uma URL específica configurada como o ponto de extremidade do webhook. Essa URL é fornecida pela aplicação que irá receber as informações. Os dados enviados podem conter detalhes relevantes sobre o evento, como informações do cliente, produtos vendidos, valores, entre outros.
A utilização de webhooks é bastante versátil e pode ser aplicada em diversos cenários. Alguns exemplos comuns de uso incluem:
Integração de sistemas: frequentemente utilizados para integrar sistemas diferentes, permitindo que eles se comuniquem e compartilhem informações automaticamente. Por exemplo, um sistema de gestão de estoque pode receber notificações de vendas de um sistema de e-commerce por meio de webhooks, atualizando assim os níveis de estoque em tempo real.
Notificações em tempo real: úteis para enviar notificações instantâneas quando eventos importantes ocorrem. Por exemplo, uma mudança de status de transação, mantendo os usuários informados sobre o andamento de suas transações.
Automação de processos: automatizar tarefas com base em eventos específicos. Por exemplo, ao receber um webhook de confirmação de pagamento em um sistema de pagamentos online, um sistema de entrega pode ser acionado automaticamente para preparar o envio dos produtos.
Monitoramento de eventos: Webhooks podem ser utilizados para monitorar eventos específicos e tomar ações apropriadas com base neles. Por exemplo, um serviço de monitoramento de servidores pode receber webhooks de alerta em caso de falhas ou problemas de desempenho, permitindo que a equipe técnica tome medidas imediatas para resolver o problema.
Em resumo, os webhooks são uma maneira eficiente e em tempo real de comunicação entre aplicações. Eles permitem que eventos em uma aplicação acionem ações em outra, facilitando a integração de sistemas, o envio de notificações, a automação de processos e o monitoramento de eventos importantes.
Hoje estes são os eventos em nossa documentação, e para cada mudança de status há um evento diferente a ser enviado.
Evento | Descrição |
---|---|
PaymentLinkPaymentSucceeded | Link de Pagamento recebeu um pagamento aprovado. |
PaymentLinkPaymentFailed | Link de Pagamento recebeu um pagamento recusado. |
SubscriptionPaymentSucceeded | O pagamento da Assinatura foi processado com sucesso. |
SubscriptionPaymentFailed | O pagamento da Assinatura foi processado com falha. |
ChargePaymentSucceeded | O pagamento da Cobrança foi processado com sucesso. |
ChargePaymentFailed | O pagamento da Cobrança foi processado com falha. |
TransactionCreated | A Transação foi criada. |
TransactionWaitingPayment | A Transação está aguardando pagamento do boleto. |
TransactionCanceled | A Transação foi cancelada com sucesso. |
TransactionPreAuthorized | A Transação foi Pré-Autorizada com sucesso. |
TransactionCaptured | A Transação foi Capturada com sucesso. |
TransactionDenied | A Transação teve a autorização recusada pela Adquirente. |
TransactionDisputed | A Transação sofreu disputa do Pagador/Cliente. |
TransactionChargedback | A Transação foi Estornada, e o valor devolvido ao Pagador/Cliente. |
TransferPaymentSucceeded | A Transferência foi realizada com sucesso. |
TransferPaymentFailed | A Transferência foi realizada com falha. |
Caso cliente apresente o questionamento de não receber o retorno do Webhook basta validar o histórico de requisição para identificar os status, ao verificar devemos nos atentar ao código da resposta como o exemplo:
Existe a opção de validar a URL ao abrir a mesma, deixo dois modelos de URL sendo um inválido e um valido:
Os códigos referente aos status HTTP são universais:
Erro | status
1xx Informativo | 2xx Sucesso | 3xx Redirecionamento | 4xx Erro no Cliente | 5xx Erro no Servidor |
100 Continue 101 Switching Protocols 102 Processing | 200 OK 201 Created 202 Accepted 203 Non-authoritative Information 204 No Content 205 Reset Content 206 Partial Content 207 Multi-Status 208 Already Reported 226 IM Used | 300 Multiple Choices 301 Moved Permanently 302 Found 303 See Other 304 Not Modified 305 Use Proxy 307 Temporary Redirect 308 Permanent Redirect | 400 Bad Request 401 Unauthorized 402 Payment Required 403 Forbidden 404 Not Found 405 Method Not Allowed 406 Not Acceptable 407 Proxy Authentication Required 408 Request Timeout 409 Conflict 410 Gone 411 Length Required 412 Precondition Failed 413 Payload Too Large 414 Request-URI Too Long 415 Unsupported Media Type 416 Requested Range Not Satisfiable 417 Expectation Failed 418 I'm a teapot 421 Misdirected Request 422 Unprocessable Entity 423 Locked 424 Failed Dependency 426 Upgrade Required 428 Precondition Required 429 Too Many Requests 431 Request Header Fields Too Large 444 Connection Closed Without Response 451 Unavailable For Legal Reasons 499 Client Closed Request | 500 Internal Server Error 501 Not Implemented 502 Bad Gateway 503 Service Unavailable 504 Gateway Timeout 505 HTTP Version Not Supported 506 Variant Also Negociates 507 Insufficient Storage 508 Loop Detected 510 Not Extended 511 Network Authentication Required 599 Network Connection Timeout Error |
Dúvidas ou Sugestões? Envie um e-mail para suporte@ipag.com.br
Este artigo foi útil?
Que bom!
Obrigado pelo seu feedback
Desculpe! Não conseguimos ajudar você
Obrigado pelo seu feedback
Feedback enviado
Agradecemos seu esforço e tentaremos corrigir o artigo