Paycheckout
Webhook
Caso seja sua preferência, é possível implementar um Webhook em um sistema externo para receber notificações sobre pagamentos Aprovado ou Rejeitado usando a chave gerada pelo Sistema Bass Pago.
Quando ocorrer um pagamento, o sistema realizará uma requisição POST para o endereço fornecido no campo “URL do webhook”, transmitindo os seguintes parâmetros:
Os estados a serem enviados serão “APPROVED” (Aprovado) ou “REJECTED” (Rejeitado).
Os tipos (type) de envio compreendem:
- PIX
- BOLETO
O sistema efetuará uma requisição. Caso não seja obtido o código de resposta 200, serão feitas até 5 solicitações, com intervalo de 5 minutos entre cada uma.
O WeHook deve ser usado apenas como aviso. Nunca confie totalmente em um WebHook. Existem APIs para conciliar o pagamento.
Verifique o status do pagamento
O que se indica é que, uma vez recebida a notificação via webhook da alteração do status de um Checkout, a API de conciliação seja consultada.
No menu APIs de Conciliação > Verificação do Status do Checkout via API
Verifique WebHooks pendentes e encaminhamento de WebHook
É possível verificar a quantidade de WebHooks não reportados. Isto é que, no momento do envio do WebHook, não foi recebida uma resposta correta (Código 200) do servidor do cliente
O header "Encrypted-Security-Code", é uma assinatura HMAC gerada através de uma cadeia criada com a chave publica, deixando essa cadeia pronta para ser assinada com o SHA-512 HMAC, conforme o seguinte processo:
Um exemplo seria:
Uma vez assinado com SHA-512 HMAC permanece com este formato:
A resposta retorna o número de WebHooks em que uma resposta não foi recebida do servidor do cliente. Se a quantidade for 0, então não há pendências
Encaminhamento de WebHook
Caso o campo totalItems retorne maior que 0, é possível reenviar todos os webhooks pendentes.
O intervalo de envio entre cada webhook é de 10 segundos. É aconselhável implementar algum processo de fila assíncrona e evitar atrasos na resposta.