Boa tarde. Estou no final da fase de testes e gerei vários QRCodes e todos estavam lendo normalmente pelo APP do Banco do Brasil, mas agora recebo sempre essa msg de erro. Alguém sabe me dizer o por quê?
Termos mais procurados:
Termos mais procurados:
Boa tarde. Estou no final da fase de testes e gerei vários QRCodes e todos estavam lendo normalmente pelo APP do Banco do Brasil, mas agora recebo sempre essa msg de erro. Alguém sabe me dizer o por quê?
public static function getToken()
{
try {
$guzzle = new Client([
'headers' => [
'Content-Type' => 'application/json',
],
/ Desativar SSL/
'verify' => true
]);
$response = $guzzle->request('POST', 'https://api-pix-h.gerencianet.com.br/oauth/token',
[
'grant_type' => 'client_credentials',
'client_id' => 'Client_Id_e6e0827b856f2b',
'client_secret' => 'Client_Secret_477f1d5694cd27029a82',
'cert' => [storage_path('app/public/certificados/files/h-329571-erp_tributos.pem'), null],
]
);
$body = $response->getBody();
$contents = $body->getContents();
$token = json_decode($contents);
return $token->access_token;
} catch (GuzzleException $e) {
echo $e->getMessage();
}
}
Não consigo acessar a autenticação na api
Gera esse erro
Server error: POST https://api-pix-h.gerencianet.com.br/oauth/token resulted in a 500 Internal Server Error response: {"nome":"erro_interno_servidor","mensagem":"Erro interno do servidor"}
Você pode tentar realizar a conversão a partir deste exemplo de autenticação:
Pessoal o Pix caiu? Estamos recebendo pagamentos via qr code, porém não está sendo exibido nem no app nem no site a transação, e não está sendo enviado a notificação da compra para o nosso servidor.
Fatal error: Uncaught Error: Call to a member function getBody() on null in C:\Program Files (x86)\Zend\Apache24\htdocs\acessarconta\App\gerencianet\src\Gerencianet\Request.php:63
Stack trace:
#0 C:\Program Files (x86)\Zend\Apache24\htdocs\acessarconta\App\gerencianet\src\Gerencianet\Auth.php(45): Gerencianet\Request->send('post', '/oauth/token', Array)
#1 C:\Program Files (x86)\Zend\Apache24\htdocs\acessarconta\App\gerencianet\src\Gerencianet\ApiRequest.php(23): Gerencianet\Auth->authorize()
#2 C:\Program Files (x86)\Zend\Apache24\htdocs\acessarconta\App\gerencianet\src\Gerencianet\Endpoints.php(65): Gerencianet\ApiRequest->send('post', '/v2/cob', Array)
#3 C:\Program Files (x86)\Zend\Apache24\htdocs\acessarconta\App\gerencianet\src\Gerencianet\Endpoints.php(42): Gerencianet\Endpoints->Gerencianet\{closure}(Array, Array)
#4 C:\Program Files (x86)\Zend\Apache24\htdocs\acessarconta\App\application\controllers\conta.php(593): Gerencianet\Endpoints->__call('pixCreateImmedi...', Array)
#5 C:\Program Files (x86)\Zend\Apache24\ in C:\Program Files (x86)\Zend\Apache24\htdocs\acessarconta\App\gerencianet\src\Gerencianet\Request.php on line 63
Opção 1: Logar no app mobile com essa conta PJ, criar uma chave Pix, colocar na configuração
Opção 2: usar o endpoint /gn/evp para criar uma nova chave aleatória
Boa noite, preciso de um auxilio sobre api pix se puderem me chamar no whatsapp
Algo tipo
axios({
method: 'POST',
url:${process.env.GN_ENDPOINT}/oauth/token,
headers:{
Authorization:Basic ${credentials},
'Content-Type': 'application/json'
},
httpsAgent: agent,
data:{
grant_type: 'client_credentials'
}
}).catch((e)=>{
console.log(e)
})
Está sendo realizada exatamente igual a documentação. Fiz a geração do certificado, converti para .pem com o app da GerenciaNet, no postman > settings > Add Certificate e depois:
- Host: api-pix-h.gerencianet.com.br
- PFX file: anexei o certificado convertido (.pem)
Na requisição /oauth/token em Authorization inseri em username o client_id e password o client_secret.
Olá, boa tarde!
Quando tento configurar os webhooks, estou tendo o erro UNABLE_TO_GET_ISSUER_CERT no campo request.socket.authorizationError
tanto na primeira, quanto na segunda solicitação que o gerência net faz (a primeira é normal dar erro, certo?)
this.server = https.createServer(
{
cert: fs.readFileSync('./credentials/server.crt'),
key: fs.readFileSync('./credentials/server.key'),
ca: [
fs.readFileSync('./credentials/gerenciaNet/pix-ca-crt.pem')
],
minVersion: "TLSv1.2",
requestCert: true,
rejectUnauthorized: false,
},
this.app
);
ai o app consome a api
tenho backend da aplicação em php onde app consome api. Posso fazer checkout transparente no meu sistema em php
consigo gerar o qrcode de pagamento no proprio app?
Bom dia, recebi um e-mail referente a "Assunto: Atualize sua cadeia de certificados da API Pix", no entanto minha integração é feita do gerencianet com o conexa.app, eu usuário final que devo atualizar isso ? ou é o pessoal do conexa que deve atualizar ?
Fala <@!728929518344994836> ! tudo ótimo por aqui!
Verifiquei aqui e essa falha pode estar acontecendo por conta de algum módulo de um repositório com um certificado SSL incompatível com os demais.
Atualizei nossa documentação também pois notei que o body-parser está "depreciado" e as funções foram incorporadas ao express, dessa forma pode remover a linha
const bodyParser = require("body-parser");
E substituir o trecho:
Beleza! Tudo bem? <@!795645731385901076>
Obrigado pela ajuda, segue:
const express = require("express");
const app = express();
const { WebhookClient } = require("dialogflow-fulfillment");
const bodyParser = require("body-parser");
const mysql = require ('mysql');
var logger = require('morgan');
////////////////// HTTPS
const fs = require("fs");
const https = require("https");
const options = {
key: fs.readFileSync("key.pem"),
cert: fs.readFileSync("cert.crt"),
ca: fs.readFileSync("chain-pix-prod.crt"),
minVersion: "TLSv1.2",
requestCert: true,
rejectUnauthorized: false
};
///////////////// HTTPS (FIM)
app.use(logger('dev'));
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: true }));
app.use(express.static("public"));
////////////////// GERENCIANET (PIX)
app.post("/gerencianet", (request, response) => {
console.log('Entrou gerencia-net');
response.status(200).end();
// 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("/gerencianet/pix", (request, response) => {
response.status(200).end();
console.log('Entrou gerencia-net');
if (request.socket.authorized){
var body = request.body;
console.log(body);
response.status(200).end();
}else{
response.status(401).end();
}
});
//////////////////GERENCIANET - FIM(PIX)
//////////////////////////// HTTPS
https.createServer(options, app).listen(8000);
console.log('Servido NODE (HTTPS) na Porta: 8000!');
/////////////////////////// HTTPS
O exemplo da consultoria da Gerencianet para Express é assim:
bom dia!
a respeito de configurar o certificado CA, é recomendado ter uma API exclusiva para receber os webhooks PIX do Gerência Net? ou tudo bem utilizar uma API de um App existente para receber os webhooks?