Histórico de mensagens em pix

EXIBINDO CONVERSAS RECENTES:

Data: 07/02/2022
Canal: pix
Avatar discord do usuario palloma_efi

palloma_efi

Ver Respostas

Olá <@!360519039019122701> ! Boa noite. Dentro do seu arquivo config.json, você está inserindo o caminho do seu certificado(campo "pix_cert")?

Avatar discord do usuario javi3966

javi3966

define ('BASEPATH',__DIR__);
require __DIR__ . '/vendor/vendor/autoload.php';

use Gerencianet\Exception\GerencianetException;
use Gerencianet\Gerencianet;

$file = file_get_contents(__DIR__ . '/vendor/vendor/gerencianet/gerencianet-sdk-php/src/Gerencianet/config.json');
$options = json_decode($file, true);

require_once 'credentials.php';
estou iniciando o código assim para o "Cobrança imediata sem txid"

Avatar discord do usuario javi3966

javi3966

Ver Respostas

Boa noite pessoal, me deparei com um problema na hora de tentar requisitar qualquer coisa na api pix, peguei um exemplo dentro da sdk, fiz o codigo semelhante ao que tenho em emissão de boleto e etc apenas pra ver como se comporta, e estou tendo o retorno de nonexistent endpoint , ja segui uma recomendação de adicionar o caminho dentro de src/config.json mas mesmo assim ainda obtenho o retorno, alguma dica do que poderia ser? Estou usando php.

Avatar discord do usuario renato.barbosa.

renato.barbosa.

vou testar aqui. Valeu <@!780500321994539068> .

Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

requestCert tem que ser true, rejectUnauthorized false.

const express = require("express");
const fs = require("fs");
const https = require("https");
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(express.json());
app.use(express.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 renato.barbosa.

renato.barbosa.

Ver Respostas

depois que inicio o server com o https.createServer, ele exige autenticação mtls em todas as rotas. mas há rotas que não são de integração com a gerencianet
e mesmo utilizando dos parametros requestCert e rejectUnauthorized como false, ainda tenho as demais rotas exigindo mtls

Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

No o que o exemplo que tem na Gerencianet não atendeu ?

Avatar discord do usuario renato.barbosa.

renato.barbosa.

Ver Respostas

uma opção que vejo é gerenciar pelo api gateway. mas não é possível autenticar apenas as rotas de interesse no próprio node?
Se alguém puder me mandar um código de exemplo, agradeceria muito 🙂

Avatar discord do usuario renato.barbosa.

renato.barbosa.

node direto.

Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

Ou pelo nginx ( <@!916059174901805096> ) ?

Avatar discord do usuario brunodelara

brunodelara

Ver Respostas

Vc ta usando o node como servidor direto? Ou está passando pelo apache?

Avatar discord do usuario renato.barbosa.

renato.barbosa.

O exemplo da documentação não satisfaz meu cenário :/

Avatar discord do usuario renato.barbosa.

renato.barbosa.

Bom dia pessoal. Estou tentando fazer a integração pix utilizando o certificado mtls em uma das rotas no node, mas estou tomando block em todas. Teriam um exemplo de código com autenticação mtls apenas no webhook?