Histórico de mensagens sobre Secret id em pix

EXIBINDO CONVERSAS RECENTES:

Texto: Secret id
Canal: pix
Avatar discord do usuario nickfelippe

nickfelippe

Ver Respostas

async createCobPix({ request, response, auth }) {
try {
Logger.info('Chegou na controller teste gerencia net')

const configService = new ConfigService(auth.user.empresa_id)

const { client_id, client_secret, certificado } = await configService.getConfigs()

const readCertificado = new ReadCertificado(client_id, client_secret, certificado)

const { authPix, agentPix } = await readCertificado.getCredentials()

const gerenciaNet= new ServiceGerencia(agentPix, authPix)

const tokenGerencia = await gerenciaNet.getToken()

const cobPix = await gerenciaNet.generateCobPix(tokenGerencia)

const qrCode = await gerenciaNet.generateQrCode(tokenGerencia, cobPix.loc.id)

return qrCode

} catch (error) {
Logger.error('createCobPix', error)
response.status(500).send()
}
}

Avatar discord do usuario rogeriocruzsousa

rogeriocruzsousa

Ver Respostas

Olá, bom dia .. meu sistema hoje já tem a integração com a Api de boletos e estou começando a integração com a API pix.

É um sistema para academias e cada cliente meu tem sua própria conta no gerencianet e seus próprios client_id and secret ...  vi que agora é necessário ter um arquivo .p12 para fazer as chamadas .. minha dúvida, cada cliente meu vai ter que ter um arquivo separado ou é unico do sistema?

Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

<@!704694550631022592> Bom dia!
Não se preocupe, este canal é mesmo para tirar suas dúvidas! 😉
Primeiramente, para quaisquer consumo dos endpoints do Pix, é necessário realizar uma autenticação com suas credenciais client_id, client_secret e certificado. Para isso, seu primeiro consumo será na rota POST /oauth/token. Segue exemplos em algumas linguagens: https://dev.gerencianet.com.br/docs/api-pix#section-exemplos-de-autentica-o-utilizando-o-certificado-p12

Após a autenticação, você utilizará o endpoint para criar uma cobrança PUT /v2/cob/{txid}. Documentação: https://dev.gerencianet.com.br/docs/api-pix#section-criar-cobran-a-

Para acompanhar as mudanças de status de um pix, você pode configurar um webhook, que reúne endpoints para gerenciamento destas notificações. https://dev.gerencianet.com.br/docs/api-pix#section-webhook

Utilize também nossa Collection da Gerencianet com todos os endpoints já configurados para o consumo (https://dev.gerencianet.com.br/docs#section-collection-postman-gerencianet-api-pix).
A respeito do seu certificado, logo lhe retornaremos através do ticket.

Avatar discord do usuario guilherme_eyhe3189

guilherme_eyhe3189

{
"sandbox": true,
"chave": "[email protected]",
"recebedor": "Guilherme Menegussi",
"homologacao": {
"nome_certificado": "https://www.eyhe.com.br/3.0/painel/enginePIX/direct_api/certificado.pem",
"client_id": "xxx",
"client_secret": "xxx",
"pix_url_auth": "https://api-pix-h.gerencianet.com.br/oauth/token",
"pix_url_cob": "https://api-pix-h.gerencianet.com.br/v2/cob",
"pix_url": "https://api-pix-h.gerencianet.com.br/v2/pix"
},
"producao": {
"nome_certificado": "productionCertificate.pem",
"client_id": "xxx",
"client_secret": "xxx",
"pix_url_auth": "https://api-pix.gerencianet.com.br/oauth/token",
"pix_url_cob": "https://api-pix.gerencianet.com.br/v2/cob",
"pix_url": "https://api-pix.gerencianet.com.br/v2/pix"
}
}

Avatar discord do usuario teodoro.rafael

teodoro.rafael

function getAccessToken($pix_url_auth, $arq_certificado, $client_id, $client_secret)
{
/
# Esta rotina consome um endpoid POST da Gerencianet para realizar a geração do AccessToken
/

$curl = curl_init();

$authorization = base64_encode("$client_id:$client_secret");

curl_setopt_array($curl, array(
CURLOPT_URL => $pix_url_auth, // Rota base, desenvolvimento ou produção
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => '{"grant_type": "client_credentials"}',
CURLOPT_SSLCERT => $arq_certificado, // Caminho do certificado
CURLOPT_SSLCERTPASSWD => "",
CURLOPT_HTTPHEADER => array(
"Authorization: Basic $authorization",
"Content-Type: application/json"
),
));

$response = curl_exec($curl);

curl_close($curl);

return json_decode($response, true);
}

Avatar discord do usuario alexmelloprovider1302

alexmelloprovider1302

Ver Respostas

Sim, fui fazer as chamadas com o mesmo Client_secret e Client_Id mas com o certificado de prod e tomei 401

Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

<@!781944293739986984>, para montar deve ser o client_id concatenado com : concatenado com o client_secret, e em base 64 :
base64(client_id:client_secret)

Avatar discord do usuario oleoessencial

oleoessencial

Ver Respostas

Já que fiquei o dia baseado no exemplo de retorno do webhook que não serve para os testes com o postman, alguém tem um retorno válido de webhook que possa postar, por gentileza ( troquem os dados sensíveis), preciso apenas da estrutura do json, tendo em vista que não fiz nada em produção exatamente para poder testar tudo em homologação e depois só trocar o client id client secret e .pem . Esqueci até que ainda tem o error 403 forbidden no modo dev.

Avatar discord do usuario ezequielsp

ezequielsp

Ver Respostas

Olá! desculpa era outro assunto.. rsrsrrs mas pode resolver para você também... No seu client_id e client_secret você colocou o Client_Id_ e Client_Secret_ ? Quando me enviaram as chaves Client_Secret_787... achei que era apenas 787... mas o correto é Client_Secret_787...

Avatar discord do usuario hobinwood.

hobinwood.

sim, o meu está igual, cadastrei o certificado e inseri o client_id e secret_id no basic auth autorization, mas estou recebendo erro 500, sabe o que pode ser?

Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

Olá, <@!691053103121825823> . Crie um arquivo config.json com as seguintes informações. Obs: renomeie o seu certificado para developmentCertificate.pem ou productionCertificate.pem de acordo com seu ambiente

{
"sandbox": false,
"homologacao": {
"nome_certificado": "developmentCertificate.pem",
"client_id": "Client_Id_...",
"client_secret": "Client_Secret_...",
"pix_url_auth": "https://api-pix-h.gerencianet.com.br/oauth/token",
"pix_url_cob": "https://api-pix-h.gerencianet.com.br/v2/cob"
},
"producao": {
"nome_certificado": "productionCertificate.pem",
"client_id": "Client_Id_...",
"client_secret": "Client_Secret_...",
"pix_url_auth": "https://api-pix.gerencianet.com.br/oauth/token",
"pix_url_cob": "https://api-pix.gerencianet.com.br/v2/cob"
}
}

Avatar discord do usuario lorenacastro

lorenacastro

config.json:

{"sandbox":true,"development":{"certificate_name":"preencher com seu certificado","client_id":"preencher com seu client id","client_secret":"preencher com seu client secret","pix_auth_url":"https:\/\/api-pix-h.gerencianet.com.br\/oauth\/token"},"production":{"certificate_name":"preencher com seu certificado de producao","client_id":"preencher com seu client id de producao","client_secret":"preencher com seu client secret de producao","pix_auth_url":"https:\/\/api-pix.gerencianet.com.br\/oauth\/token"}}

Avatar discord do usuario lorenacastro

lorenacastro

em formato json:

{"sandbox":true,"development":{"certificate_name":"preencher com seu certificado","client_id":"preencher com seu client id","client_secret":"preencher com seu client secret","pix_auth_url":"https:\/\/api-pix-h.gerencianet.com.br\/oauth\/token"},"production":{"certificate_name":"preencher com seu certificado de producao","client_id":"preencher com seu client id de producao","client_secret":"preencher com seu client secret de producao","pix_auth_url":"https:\/\/api-pix.gerencianet.com.br\/oauth\/token"}}

Avatar discord do usuario lorenacastro

lorenacastro

o que tava dentro do json é um array assim:

$arr = [
'sandbox' => true,
'development' => [
'certificate_name' => 'preencher com seu certificado',
'client_id' => 'preencher com seu client id',
'client_secret' => 'preencher com seu client secret',
'pix_auth_url' => 'https://api-pix-h.gerencianet.com.br/oauth/token'
],
'production' => [
'certificate_name' => 'preencher com seu certificado de producao',
'client_id' => 'preencher com seu client id de producao',
'client_secret' => 'preencher com seu client secret de producao',
'pix_auth_url' => 'https://api-pix.gerencianet.com.br/oauth/token'
],
];

Avatar discord do usuario lorenacastro

lorenacastro

eu fiz assim, para teste:

function auth() {
$ch = curl_init();

$requestURL = 'https://api-pix-h.gerencianet.com.br/oauth/token';
$cliendId = ''; //seu client id
$clientSecret = ''; //seu client secret
$authorization = base64_encode($cliendId . ":" . $clientSecret);
$certFile = ''; //o caminho do certificado
$arr = ['grant_type' => 'client_credentials'];
$headers = [];
$headers[] = 'Content-Type: application/json';
$headers[] = 'Authorization: Basic ' . $authorization;

curl_setopt($ch, CURLOPT_URL, $requestURL);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($arr));
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_SSLCERT, $certFile);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);

$result = curl_exec($ch);
$resposta = json_decode($result);

if (curl_errno($ch)) {
die('Erro: ' . curl_error($ch));
}

curl_close($ch);

return $resposta->access_token;
}

Avatar discord do usuario oleoessencial

oleoessencial

> Preciso de um breve resumo pra entender o fluxo de utilização dos endpoints, já consegui configurar a chave p12 associar o id e secret da collection no postman passada pela equipe técnica.
<@!715273512688025630> voce assistiu este video ? = https://www.loom.com/share/9f9cf5b0a95643a092c41f001929b791

Avatar discord do usuario oleoessencial

oleoessencial

> Boa tarde,
> O Vagner Moreira me enviou o certificado, client_id e client_secret por e-mail, e me indicou este grupo pra tirar dúvidas.
> Configurei o environment no postman conforme o vídeo
> Importei a collection GN-PIX-API.postman_collection.json
> Preenchi as credenciais em Athorization
> Mas ao dar send em {{gn-pix-api}}/oauth/token está retornando
> {"error":"invalid_client","error_description":"Invalid or inactive credentials"}
> O que eu poderia estar fazendo de errado?
<@!778694543151071235> da uma olhada neste vídeo =https://www.loom.com/share/9f9cf5b0a95643a092c41f001929b791

Avatar discord do usuario diogonox3254

diogonox3254

Ver Respostas

Boa tarde,
O Vagner Moreira me enviou o certificado, client_id e client_secret por e-mail, e me indicou este grupo pra tirar dúvidas.
Configurei o environment no postman conforme o vídeo
Importei a collection GN-PIX-API.postman_collection.json
Preenchi as credenciais em Athorization
Mas ao dar send em {{gn-pix-api}}/oauth/token está retornando
{"error":"invalid_client","error_description":"Invalid or inactive credentials"}
O que eu poderia estar fazendo de errado?

Avatar discord do usuario bartwitch

bartwitch

> confere se seu client id e secret são iguais aos que enviou pra solicitar o certificado
<@!709030803291635736> na verdade eu só solicitei o certificado, aí eu recebi um email com o certificado e o client id e o secret no corpo do e-mail...

Avatar discord do usuario lorenacastro

lorenacastro

devia ser algo aqui no client secret que fica com a máscara escondida e acabei não vendo