Histórico de mensagens sobre webhook

EXIBINDO CONVERSAS RECENTES:

Texto: webhook
# pix
Avatar discord do usuario joaobatista4234

joaobatista4234

fiz cadastro do webhook porem não recebo notificação imediata. recebe ao longo do dia com a:1:{s:12:"notification";s:36:"855ab0e2-1d1f-4db9-a992-0b2fa7f0c5";}

# pix
Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

Você está recebendo ou pagando ? De qualquer forma, você pode cadastrar cada webhook de chave Pix numa URL diferente, e pela URL já diferenciar, mas no webhook vem a chave Pix que recebeu também.

# pix
Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

Uma alternativa é o pix.ae do @anoni_mato:

Pra quem tem dificuldades de implementar os webhooks por falta de suporte em hospedagem compartilhada para configurar mTLS, o Pix.ae agora oferece proxy de callbacks com mTLS.

Pra usar é muito simples: é só prefixar o seu domínio com mtls.pix.ae/. Por exemplo:

Para: https://exemplo.com.br/webhookpix
Use: https://mtls.pix.ae/exemplo.com.br/webhookpix

Obs: no ambiente de homologação, prefixe com mtls-h.pix.ae/

# pix
Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

Não quero ser pessimista, mas o Firebase só é citado no canal junto com a frase "não funciona webhook"...

# pix
Avatar discord do usuario spontoni

spontoni

Ver Respostas

o problema mesmo está nos webhook pois o firebase faz muitas config automaticas

# pix
Avatar discord do usuario matheus_efi

matheus_efi

Ver Respostas

Boa tarde, não entendi muito bem, essa seria a configuração para recebimento das respotas do webhook ou para o cadastro do mesmo? Porque para o cadastro deve-se fazer uma requisição para PUT /v2/webhook/:chave informando o x-skip-mtls-checking": false, no cenário de hospedagem compartilhada. Posteriormente você vai precisar de uma rota para o recebimento das notificações do webhook, aí sim viria as configurações de request.socket.authorized.
Mais detalhes aqui: https://dev.gerencianet.com.br/docs/api-pix-endpoints#section-webhooks
Caso queira, também disponibilizamos SDK's com todos os endpoints da API Pix disponíveis: https://github.com/gerencianet

# pix
Avatar discord do usuario spontoni

spontoni

estou tentando criar uma rota para o webhook com o firebase e é um servidor compartilhado

# pix
Avatar discord do usuario spontoni

spontoni

Ver Respostas

´´´app.put("/webhook", (request, response) => {

response.set({ "x-skip-mtls-checking": false })
response.header("x-skip-mtls-checking", false)

let data = request.body;

if (request.socket.authorized) {
response.status(200).end(JSON.stringify(data));
} else {
response.status(401).end(JSON.stringify({ erro: "Não autorizado", data: data }));
}
});´´´

# pix
Avatar discord do usuario Prof Zoidberg

Prof Zoidberg

Ver Respostas

porque voltando ao Let's Encrypt, eu volto à mensagem {"nome":"webhook_invalido","mensagem":"A autenticação de TLS mútuo não está configurada na URL informada"}

# pix
Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

Isso é sugestivo de que você tenha colocado um certificado self-signed no webhook(o que tem o CN webhook.exemplo.com.br) e ele precisa ser assinado por uma CA reconhecida.

# pix
Avatar discord do usuario Prof Zoidberg

Prof Zoidberg

Ver Respostas

bem, segui as instruções e agora estou com esse erro: {"nome":"webhook_invalido","mensagem":"A requisição na URL informada falhou com o erro: DEPTH_ZERO_SELF_SIGNED_CERT"}

# pix
Avatar discord do usuario matheus_efi

matheus_efi

Ver Respostas

Essa falha é referente a tentativa de cadastro em seu webhook, no entanto, não foi possível verificar o certificado (CA) da Gerencianet que pode ser obtido por este link (https://pix.gerencianet.com.br/webhooks/chain-pix-prod.crt) no caso de produção. Recomendo verificar a documentação do mTLS e os exemplos disponibilizados (https://dev.gerencianet.com.br/docs/api-pix-endpoints#section-entendendo-o-padr-o-mtls).
Em resumo, a Gerencianet faz 2 requisições ao seu servidor, a primeira sem verificar o certificado e a segunda verificando. Seu servidor deve estar configurado para rejeitar a primeira e aceitar a segunda, fazendo um "hand-shake"

# pix
Avatar discord do usuario Prof Zoidberg

Prof Zoidberg

Ver Respostas

pq agora recebo um erro: {"nome":"webhook_invalido","mensagem":"A autenticação de TLS mútuo não está configurada na URL informada"}

# pix
Avatar discord do usuario rubenskuhl

rubenskuhl

curl 'https://api-pix.gerencianet.com.br/v2/webhook/XXXXX" class="link-msg">https://api-pix.gerencianet.com.br/v2/webhook/XXXXX'' -H 'Accept-Encoding: gzip, deflate, br' -H 'Content-Type: application/json' -H 'Accept: application/json' -H 'Connection: keep-alive' -H 'DNT: 1' -H 'Origin: https://api-pix.gerencianet.com.br' --data-binary '{"webhookUrl":"https://xxxxx/webhook.php"}' --compressed

# pix
Avatar discord do usuario Prof Zoidberg

Prof Zoidberg

$config = [
"certificado" => "./gerenciamento.pem",
"client_id" => "XXXXX",
"client_secret" => "XXXXX"
];
$autorizacao = $chaveiro["access_token"];

$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://api-pix.gerencianet.com.br/v2/webhook/XXXXX',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'PUT',
CURLOPT_SSLCERT => $config["certificado"], // Caminho do certificado
CURLOPT_SSLCERTPASSWD => $chaveiro["access_token"],
CURLOPT_POSTFIELDS =>'{
"webhookUrl": "https://XXXXX/webhook.php"
}',
CURLOPT_HTTPHEADER => array(
"Authorization: Bearer $autorizacao",
'x-client-cert-pem: ./gerenciamento.pem',
'x-skip-mtls-checking: false'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;

# pix
Avatar discord do usuario matheus_efi

matheus_efi

pode ser aqui, só ocultar os dados sensíveis, neste caso o webhook e a chave

# pix
Avatar discord do usuario matheus_efi

matheus_efi

A sua requisição não está indo com os campos obrigatórios, pelo menos não da forma que devem ser enviados, por isso a falha. Verifique por favor os dados que estão sendo enviados e se possível poste aqui, pode ocultar a chave e o webhook se achar necessário

# pix
Avatar discord do usuario matheus_efi

matheus_efi

Você pode utilizar a nossa SDK de PHP que está disponível com todos os endpoints configurados.
Caso opte por montar a requisição, deve-se atentar aos campos que são obrigatórios na documentação e como enviá-los.
No caso do endpoint de cadastro de webhook, deve-se ser enviado um body em JSON com a seguinte informação:

{
"webhookUrl": "https://seu_webhook"
}
E a sua chave pix que vai ser associada ao webhook, deve-ser informada nos params da requisição, exemplo:
/v2/webhook/sua_chave

# pix
Avatar discord do usuario matheus_efi

matheus_efi

Ver Respostas

Boa tarde, <@!693807608594694144>. Qual a resposta que você está recebendo ao consumir o PUT /v2/webhook/:chave?