Histórico de mensagens sobre webhook em pix

EXIBINDO CONVERSAS RECENTES:

Texto: webhook
Canal: pix
Avatar discord do usuario roguitar88

roguitar88

Pessoal, como faço o teste lá do update da webhookUrl pelo postman?

Avatar discord do usuario matheus_efi

matheus_efi

Ver Respostas

Boa tarde <@!564882405794775060>, temos um exemplo que atualizamos hoje na documentação em Node

js
const express = require("express");
const fs = require("fs");
const https = require("https");
const bodyParser = require("body-parser");
var logger = require('morgan');

const httpsOptions = {
cert: fs.readFileSync(""), // Certificado fullchain do dominio
key: fs.readFileSync("/"), // Chave privada do domínio
ca: fs.readFileSync(""), // Certificado público da Gerencianet
minVersion: "TLSv1.2",
requestCert: true,
rejectUnauthorized: false, //Mantenha como false para que os demais endpoints da API não rejeitem requisições sem MTLS
};
const app = express();
const httpsServer = https.createServer(httpsOptions, app);
const PORT = 443;
app.use(logger('dev')); // Comente essa linha caso não queira que seja exibido o log do servidor no seu console
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: false }));
// Endpoint para configuração do webhook, você precisa cadastrar https://SEUDOMINIO.com/webhook
app.post("/webhook", (request, response) => {
// Verifica se a requisição que chegou nesse endpoint foi autorizada
if (request.socket.authorized) {
response.status(200).end();
} else {
response.status(401).end();
}
});
// Endpoind para recepção do webhook tratando o /pix
app.post("/webhook/pix", (request, response) => {
if (request.socket.authorized){
//Seu código tratando a callback
/ EXEMPLO:
var body = request.body;
filePath = __dirname + "/data.json";
fs.appendFile(filePath, JSON.stringify(body) + "\n", function (err) {
if (err) {
console.log(err);
} else {
response.status(200).end();
}
})
/
response.status(200).end();
}else{
response.status(401).end();
}
});
httpsServer.listen(PORT, () =>
console.log(Express server currently running on port ${PORT})
);

Avatar discord do usuario roguitar88

roguitar88

//Webhook update
$options['headers'] = array(
'x-skip-mtls-checking' => 'false',
);

try {
$api = Gerencianet::getInstance($options);

$params = ['chave' => '34646106000189'];
$body = ['webhookUrl' => 'https://olimppi.us/src/Includes/index.php?ignorar='];
// https://olimppi.us/webhook/pix.php?ignorar=
// https://olimppi.us/webhook/pix.php?ignorar=/pix

$pix = $api->pixConfigWebhook($params, $body);
echo json_encode($pix);

} catch (GerencianetException $e) {
print_r($e->code);
print_r($e->error);
print_r($e->errorDescription);

throw new \Error($e->error);
} catch (\Exception $e) {
throw new \Error($e->getMessage());
}

Avatar discord do usuario amunhoz

amunhoz

Ver Respostas

Galera, dica importante, encontrei uma aplicação mais fácil para fazer um proxy com o certificado para o webhook:
https://nginxproxymanager.com/
Essa parte do certificado tem que ser feito meio que na mão na GUI do sistema, mas é só procurar na net.
A vantagem é que ele renova o lets encrypt automático também.

Avatar discord do usuario wevertondumont

wevertondumont

Ver Respostas

Eu não manjo nada de linux, então essa parte de configurar o certificado na rota especifica do webhook do pix lá na hospedagem, eu não faço a menor ideia de como fazer... então eu nem sei te falar nada sobre, tentei seguir vários tutoriais, tentar adicionar o certificado usando ssh, mas nã ofazia ideia do que estava fazendo, ai decidi deixar pra lá.

Avatar discord do usuario wevertondumont

wevertondumont

Ver Respostas

rubens eu já fiz toda integração usando Sdk, que é bem mais fácil do que o tutorial do vídeo., a operação já está rodando 100%. A única parte que não consegui foi configurar o mtls na hospedagem vps, então trato os webhooks pix de outra forma,

Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

Olá, <@!477481308743008257>! De acordo com o padrão do Bacen, no momento é possível registrar somente um webhook para cada chave.
Mas é possível utilizar o mesmo webhook para diversas chaves.

Avatar discord do usuario grinderrobot0164

grinderrobot0164

Ver Respostas

Bom dia pessoal, fica uma sugestão para a documentação no exemplo em node.js na parte de webhooks: em vez de fazer uma api com rejectUnauthorized: true, colocar rejectUnauthorized: false e numa rota de /webhooks por exemplo você pode verificar se o request foi autorizado acessando request.socket.authorized. Dessa forma não precisa fazer uma api separada para o gerencianet pois dá pra verificar o uso do certificado apenas nessa rota de acesso dos webhooks

Avatar discord do usuario henriquelima3751

henriquelima3751

Ver Respostas

Pessoal, vocês sabem informar se é possível cadastrar mais de um webhook para a mesma chave?

Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

O https://pix.nascent.com.br/tools/pix-qr-decoder/ tem uma opção "Create Pix" que por enquanto já consegue criar o que se pode testar... pois como o ambiente de homologação não aciona o webhook, de qualquer forma você vai precisar acionar você mesmo o seu código do webhook.

Avatar discord do usuario msxvdp

msxvdp

Ver Respostas

entendi. o meu escopo de projeto é bem simples: ter alguns QrCodes estáticos criados, com o webhook cadastrado para que eu possa monitorar todos os pagamentos efetuados nesses códigos

Avatar discord do usuario msxvdp

msxvdp

Ver Respostas

estão incluídos sim:
"scope": "cob.read cob.write gn.balance.read gn.pix.evp.read gn.pix.evp.write gn.settings.read gn.settings.write payloadlocation.read payloadlocation.write pix.read pix.write webhook.read webhook.write"
Ambiente: Homologação

Avatar discord do usuario bretones0717

bretones0717

Bom dia, ao cadastrar o webhook através do endpoint PUT, recebo, no meu servidor, o evento "teste_webook" com a data da criação. Além disso, consigo confirmar através do endpoint /v2/webhook/{{chave_pix}} que o meu servidor foi cadastrado. Porém, fiz o pagamento de duas cobranças geradas para aquela chave, mas não recebi a notificação nem da solicitação e nem do pagamento. Alguma ideia do que eu posso estar fazendo de errado?

Avatar discord do usuario camilamoreira0101

camilamoreira0101

Ver Respostas

Entendi.
Então nesse caso é só gerar a cobrança, vincular ao webhook e usar esse modelo de retorno para ser notificado quando for pago?
imagem enviada na mensagem pelo usuario camilamoreira0101

Avatar discord do usuario camilamoreira0101

camilamoreira0101

No meu caso, é pra um seminário que farei hoje, será simples, a ideia é gerar a cobrança e habilitar o webhook pra saber quando for paga.
Os outros endpoints ficará por conta do pessoal que vai assistir o seminário e usar posteriormente. A ideia é só mostrar o caminho das pedras inicial.

Avatar discord do usuario joelemanoel

joelemanoel

Basta colocar so para o path "webhook" e o resto das requisições continuam sem exigência do mTLS

Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

Você pode exigir apenas num path (ex:/webhook) e deixar o ACME em outra sem isso.

Avatar discord do usuario grinderrobot0164

grinderrobot0164

Ver Respostas

alguem ja conseguiu fazer o servidor dos webhooks com certificado let's encrypt gerando e renovando automaticamente?