Histórico de mensagens sobre credentials

EXIBINDO CONVERSAS RECENTES:

Texto: credentials
# pix
Avatar discord do usuario josevictobp

josevictobp

Ver Respostas

Boa noite, pessoal
estou tendo um erro ao integrar a API do pix.

O erro é o seguinte:
data: {
error: 'invalid_client',
error_description: 'Invalid or inactive credentials'
}

Estou usando o método de homologação, a url de "https://api-pix-h.gerencianet.com.br" e os dados de homologação. Mas, mesmo assim não tenho sucesso :c

Alguém já teve o mesmo problema?

# pix
Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

Bom dia, @giulianojordao! Como vai? 😃
Usando a SDK bastaria definir suas credenciais e certificado no arquivo credentials.js (https://github.com/efipay/sdk-node-apis-efi/blob/master/examples/credentials.js), e por ser ambiente de homologação o parâmentro sandbox seria igual a true.

Já neste código que passou acredito ter que fazer alguns ajustes.
Na linha const token = req.body.token; imagino ser o token da autenticação. Você deve corrigir para const token = 'Bearer ' . req.body.access_token;
E confirme se EFI_HOMOL_API_URL_BASE é a URL: https://api-pix-h.gerencianet.com.br/

# sugestões
Avatar discord do usuario allanmello

allanmello

Ver Respostas

Olá Igor, segui as informações da documentação p/ o Postman, mas está retornando o erro:
{
"error": "invalid_client",
"error_description": "Invalid or inactive credentials"
}
Ao tentar obter o token em oauth.

# pix
Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

@conexao_cefet, agora está incluindo outros parâmetros. A variável options deve conter os seguintes parâmetros, e depois é acrescentado o headers com o parâmetro x-skip-mtls-checking.
$options = [
"client_id" => "Client_Id",
"client_secret" => "Client_Secret",
"certificate" => realpath(__DIR__ . "/productionCertificate.p12"), // Absolute path to the certificate in .pem or .p12 format
"sandbox" => false,
"debug" => false,
"timeout" => 30
];
https://github.com/gerencianet/gn-api-sdk-php/blob/master/examples/credentials/options.php

# pix
Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

Tudo indica que é isso mesmo. Essa variável "$opions" deve conter as credenciais também conforme imagem abaixo.
Quando chamar a função ConfigWebhook($credentials, $options), passe o $options também.
imagem enviada na mensagem pelo usuario guilherme_efi

# pix
Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

Insira um var_dump() na variável "$options" logo após atribuir o heades e veja como fica.
echo '

';var_dump($options);echo '<;pre>';

Acho que talvez tenha que capturar o "$options" na função ConfigWebhook($credentials, $options);

# pix
Avatar discord do usuario joaolucas_efi

joaolucas_efi

Ver Respostas

Bom dia @williampereira3343, tudo bem?
Você pode conferir exemplos no nosso Github https://github.com/gerencianet/gn-api-sdk-dotnet-core/tree/master
Com relação ao certificado basta informar o caminho dele junto às demais credenciais de autenticação, como é possível ver um exemplo aqui: https://github.com/gerencianet/gn-api-sdk-dotnet-core/blob/master/Gerencianet.NETCore.SDK.Examples/credentials.json

# pix
Avatar discord do usuario wesleyalmont

wesleyalmont

Então, eu não estou criando uma api. Estou utilizando o pacote gerencianet que está disponível lá no Pub.Dev do flutter

import 'package:gerencianet/gerencianet.dart';

import '../../credentials.dart';

void main() async {
Gerencianet gn = Gerencianet(credentials);
dynamic response = await pixGenerateQRCode(gn, 0);
print(response);
}

dynamic pixGenerateQRCode(Gerencianet gn, int id) async {
Map params = {"id": id};
return await gn.call("pixGenerateQRCode", params: params);
}

no ambiente de produção da erro e no de homologacao o qr é gerado mas não é possivel simular o pagamento.

# bolix
Avatar discord do usuario lukreitor

lukreitor

tentei criar a chave aleatoria e obtive o conection reset no response: package br.com.Gabriel.APIPaymentsEFI.gerencianet.pix.service;

//import gerencia net credentials, gerencia net sdk, gerencia net exceptions, json object, spring service
import br.com.Gabriel.APIPaymentsEFI.gerencianet.Credentials;
import br.com.gerencianet.gnsdk.Gerencianet;
import br.com.gerencianet.gnsdk.exceptions.GerencianetException;

import java.io.FileNotFoundException;
import java.util.HashMap;

import org.json.JSONObject;
import org.springframework.stereotype.Service;

public class PixCreateEvp {
public static void main(String[] args) throws FileNotFoundException {
Credentials credentials = new Credentials();

JSONObject options = new JSONObject();
options.put("client_id", credentials.getClientId());
options.put("client_secret", credentials.getClientSecret());
options.put("pix_cert", credentials.getCertificate());
options.put("sandbox", credentials.isSandbox());

try {
Gerencianet gn = new Gerencianet(options);
JSONObject response = gn.call("pixCreateEvp", new HashMap(), new JSONObject());
System.out.println(response);
} catch (GerencianetException e) {
System.out.println(e.getError());
System.out.println(e.getErrorDescription());
} catch (Exception e) {
System.out.println(e.getMessage());
}

}

}

# cartões
Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

Certo. No arquivo credentials.dart você deve inserir o seu identificador de conta.
https://github.com/gerencianet/gn-api-sdk-dart/blob/main/example/credentials.dart#LL4C18-L4C18

# devs
Avatar discord do usuario divinocardozo

divinocardozo

curl --location --request POST 'https://api-pix-h.gerencianet.com.br/oauth/token' \
--header 'Authorization: Basic Q2xpZW50X0lkX2Q5MzAzNWFiNDgxZGI5MzEyNDIwNDgxMGU5NzM2M2Y3NmIwZWI0NDI6Q2xpZW50X1NlY3JldF9lNGUxN2M2YWQ3ZDY4ODZiMDYzNDk3ODUwY2VmOWVlMWU3OGY0YTIx' \
--header 'Content-Type: application/json' \
--data-raw '{
"grant_type": "client_credentials"
}'

# pix
Avatar discord do usuario mateus.sf

mateus.sf

Ver Respostas

Bom dia. Estou tendo dificuldades para desenvolver a integração com a API Pix. Requisições ao endpoint /oauth/token sempre retornam status 400. Isso acontece apenas em tempo de execução, no postman funciona normalmente.

POST /oauth/token HTTP/1.0
Connection: Keep-Alive
Content-Length: 36
Content-Type: application/json
Host: api-pix-h.gerencianet.com.br
Accept: /
Accept-Encoding: gzip, deflate, br, identity
User-Agent: User-Agent:Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.96 Safari/537.36
Authorization: Basic

{"grant_type": "client_credentials"}

# pix
Avatar discord do usuario robinho6528

robinho6528

Pessoal alguem ja tomou o error de connection reset ao chamar o metodo PixCreateImmediateCharge? to usando o spring boot. Ja coloquei tudo certinho no arquivo de credentials.

# devs
Avatar discord do usuario joelfilho2277

joelfilho2277

Estou integrando com a API de PIX. Na criação da aplicação, ao chegar na etapa de escolher os escopos da um erro de acesso negado, porém a aplicação é gerada. Mas ao testar gerar o token pelo Postman com o clientId e clientSecret de homologação são ditos como inválidos

{
"error": "invalid_client",
"error_description": "Invalid or inactive credentials"
}

Estou utilizando a rota de homologação (https://api-pix-h.gerencianet.com.br/oauth/token) e o host de homologação para o certificado (api-pix-h.gerencianet.com.br)
Assim como um certificado ativo em homologação.

Após análise, vocês confirmaram que a causa do problema eram as permissões que estavam liberadas para meu usuário. E indicaram que para a integração com a API PIX eu necessitaria das permissões Início, PIX, Troca de arquivos e API.

Porém mesmo após as permissões me serem concedidas, o erro persiste ao tentar gerar o token

Além disso, ao acessar pelo sistema antigo (https://sistema.sejaefi.com.br/) demonstra como se eu não tivesse as permissões de acesso a API

# devs
Avatar discord do usuario joelfilho2277

joelfilho2277

Ver Respostas

Bom dia, estou integrando com a API de PIX. Na criação da aplicação, ao chegar na etapa de escolher os escopos da um erro de acesso negado, porém a aplicação é gerada. Mas ao testar gerar o token pelo Postman com o clientId e clientSecret de homologação são ditos como inválidos

{
"error": "invalid_client",
"error_description": "Invalid or inactive credentials"
}

Estou utilizando a rota de homologação (https://api-pix-h.gerencianet.com.br/oauth/token) e o host de homologação para o certificado (api-pix-h.gerencianet.com.br)
Assim como um certificado ativo em homologação.

Poderia o acesso negado na criação da aplicação indicar que foi criada de forma incompleta? (com isso o clientId e clientSecret sendo inválidos) ou o fato de ela ter sido criada demonstra que pode ser utilizada?

# módulos-plugins
Avatar discord do usuario diogo.luz

diogo.luz

Ver Respostas

Tentei isso direto no PHP e retorna NULL. O que eu fiz de errado?

O código completo do PHP ficou assim:


$arq_certificado = "MeuCertificadoQueEstáNoMesmoDiretorio.p12";


$client_id = "MeuClientID";
$client_secret = "MeuClientSecret";
$curl = curl_init();

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

curl_setopt_array($curl, array(
CURLOPT_URL => "https://api-pix.gerencianet.com.br/oauth/token", // 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"
),
));

$auth = json_decode(curl_exec($curl), true);

curl_close($curl);

$tokenType = $auth['token_type'];
$accessToken = $auth['access_token'];


echo "$accessToken";

var_dump($auth);



?>

# pix
Avatar discord do usuario ysabella3926

ysabella3926

require('dotenv').config({path: '../.env_homologation'})


console.log(process.env.GN_CLIENT_KEY_PROD)


const urlApiProduction = 'https://api-pix.gerencianet.com.br'
const urlApiStaging = 'https://api-pix-h.gerencianet.com.br'

const https = require('https') //conexão segura para enviar dados
const axios = require('axios')
const fs = require('fs')//ler arquivos no disco
const baseURL = process.env.GN_ENV === 'production' ? urlApiProduction : urlApiStaging

const getToken = async() =>{
//console.log('getToken', process.env.GN_CLIENT_KEY_PROD)
const certificate = fs.readFileSync('../' + process.env.GN_CERTIFICATE)
const credentials ={
client_id: process.env.GN_CLIENT_KEY_PROD,
client_secret: process.env.GN_CLIENT_SECRET_PROD
}
const data = JSON.stringify({grant_type: 'client_credentials'})//o que será retornado da api
const dataCredentials = credentials.client_id + ':' + credentials.client_secret
const auth = Buffer.from(dataCredentials).toString('base64')


const agent = new https.Agent({
pfx: certificate,
passphrase: '',
})

const config ={
method: 'POST',
url: baseURL + '/oauth/token',
headers: {
Authorization: 'Basic' + auth,
'Content-Type': 'application/json'
},
httpsAgent: agent,
data: data,
}
const result = await axios(config)
console.log(result.data)

}

getToken()

# pix
Avatar discord do usuario lucashang

lucashang

Ver Respostas

Boa noite pessoal, estou fazendo uns testes de integração com a api PIX, mas não consigo passar da autenticação, seguindo o tutorial na documentação eu estou mandando o client_id, client_secret e certificado na requisição, mas mesmo assim recebo uma resposta de erro 401:
- Quando testando pelo sdk-typescript a resposta é essa: { error: 'invalid_token', error_description: 'Invalid access token' }
- Quando testando pelo postman a resposta é essa: {"error": "invalid_client", "error_description": "Invalid or inactive credentials"}
Alguem poderia me auxiliar a entender o que estou fazendo de errado?

# devs
Avatar discord do usuario dgsiebert

dgsiebert

Ver Respostas

{"error":"invalid_client","error_description":"Invalid or inactive credentials"}

# devs
Avatar discord do usuario igor_efi

igor_efi

php

$curl = curl_init();

curl_setopt_array($curl, array(
CURLOPT_URL => 'https://apis.gerencianet.com.br/pagamento/oauth/token',
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_HTTPHEADER => array(
'x-client-cert-pem: {{X-Certificate-Pem}}',
'Authorization: Basic <>',
'Content-Type: application/json'
),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;