Histórico de mensagens sobre webhook pix

EXIBINDO CONVERSAS RECENTES:

Texto: webhook pix
# pix
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})
);

# pix
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());
}

# pix
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á.

# pix
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,

# pix
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?

# pix
Avatar discord do usuario roguitar88

roguitar88

Ver Respostas

Sim, que seria o chamado callback. No manual tá assim: "POST {$request.body#​/webhookUrl}​/pix"

# pix
Avatar discord do usuario matheus_efi

matheus_efi

Ver Respostas

Sim, são enviados ao webhook cadastrado via POST com acréscimo do /pix

# pix
Avatar discord do usuario roguitar88

roguitar88

Ver Respostas

$options['headers'] = array(
'x-skip-mtls-checking' => 'true',
);

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

$params = ['chave' => '34646106000189'];
$body = ['webhookUrl' => 'https://olimppi.us/webhook'];
// 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());
}

# pix
Avatar discord do usuario guilherme_efi

guilherme_efi

Para registrar seu webhook utilize o examples\pix\webhooks\update.php

# pix
Avatar discord do usuario roguitar88

roguitar88

Ver Respostas

//Webhook detail
try {
$api = Gerencianet::getInstance($options);
$params = ['chave' => '34646106000189'];
$pix = $api->pixGetWebhook($params);

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());
}

# pix
Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

<@!723278999236771916> o que o Rubens lhe exemplificou é no momento que você for vincular sua chave Pix a uma URL do Webhook.

Ou seja, para que seu sistema receba estas notificações, primeiramente você deve consumir a rota PUT /v2​/webhook/:chave, no caso da SDK utilize o arquivo examples\pix\webhooks\update.php passando como parâmetro sua chave Pix, no body sua URL do webhook e 'x-skip-mtls-checking' => 'false', // Para validar o mTLS

Desta forma, , os PIX associados a um txid gerados com sua chave serão notificados.

# pix
Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

Ou você pode mutretar o /pix fazendo assim: exemplo.com.br/webhook/pix.php?ignorar=
que aí fica
exemplo.com.br/webhook/pix.php?ignorar=/pix
E você ignora o parâmetro ignorar

# pix
Avatar discord do usuario matheus_efi

matheus_efi

<@!783359762917752843> não afeta, o webhook vai ser acionado com o status de envio de Pix como NAO_REALIZADO e mesmo com o "receberSemChave": false você vai receber o estorno em sua conta.

# pix
Avatar discord do usuario fpsgoapp

fpsgoapp

Ver Respostas

Boa tarde. Alguém sabe a melhor maneira para configuração da webhook Pix dentro de uma rota específica, devido a verificação de mTLS