Histórico de mensagens sobre Client_ID em dúvidas

EXIBINDO CONVERSAS RECENTES:

Texto: Client_ID
Canal: dúvidas
Avatar discord do usuario kennedy1366

kennedy1366

como faço pra obter meu client id e client secret?

Avatar discord do usuario bigjhinzxy

bigjhinzxy

javascript
const path = require('path');
const Gerencianet = require('sdk-node-apis-efi');
const certPath = path.join(__dirname, 'certs', 'certgenesis2.p12');


const options = {
client_id: configuracao.get('pagamentos.EFIClientID'),
client_secret: configuracao.get('pagamentos.EFIClientSecret'),
certificate: certPath,
sandbox: false // true = sandbox
};


const gerencianet = new Gerencianet(options);

async function Painel(interaction, client) {
let balance;
try {
const response = await gerencianet.getAccountBalance();
balance = parseFloat(response.saldo).toFixed(2);
} catch (error) {
console.error('Erro ao obter o saldo da conta:', error);
balance = 'Indisponível';
}

Avatar discord do usuario christopy

christopy

Tanto client id quanto client secret eu verifiquei que está correto e já tentei passar o atributo sandbox como false diretamente mas o erro persiste

Avatar discord do usuario joaolucas_efi

joaolucas_efi

Ver Respostas

@luizfeleal existem algumas falha em como você montou a requisição, segue um exemplo de como fazer a autenticação:

php
//Desenvolvido pela Consultoria Técnica da Efí
$config = [
"certificado" => "./certificado.pem",
"client_id" => "YOUR-CLIENT-ID",
"client_secret" => "YOUR-CLIENT-SECRET"
];
$autorizacao = base64_encode($config["client_id"] . ":" . $config["client_secret"]);

$curl = curl_init();

curl_setopt_array($curl, array(
CURLOPT_URL => "https://pix-h.api.efipay.com.br/oauth/token", // Rota base, homologação 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 => $config["certificado"], // Caminho do certificado
CURLOPT_SSLCERTPASSWD => "",
CURLOPT_HTTPHEADER => array(
"Authorization: Basic $autorizacao",
"Content-Type: application/json"
),
));

$response = curl_exec($curl);

curl_close($curl);

echo "
";
echo $response;
echo "
";
?>

Avatar discord do usuario .mateus009

.mateus009

Ver Respostas

Esta dando isso. Adicionei o certificado no Postman como informa na documentação, adicionei o client_id e secret também
imagem enviada na mensagem pelo usuario .mateus009

Avatar discord do usuario izaacfariamid1

izaacfariamid1

Ver Respostas

Configurando Efí Bank

Para configurar o gateway de pagamento da Efí Bank em seu site, são necessárias três informações: Client ID e Client Secret de produção, além do Identificador de conta. Siga as instruções abaixo:

Acesse sua conta Efí Bank, vá para o menu "API" e selecione "Aplicações" -> "Nova aplicação".

Encontre as informações de Client ID e Client Secret de produção. Copie cada uma delas e envie para o responsável pela configuração do site.

No menu "API", clique em "Introdução". Na lateral direita, encontrará um botão chamado "Identificador de conta". Clique nele para exibir o código identificador. Copie o código e envie também para o responsável pela configuração do site.
pessoal boa tarde. Recebi esta mensagem da empresa responsável pela criação do site da minha loja
criar um novo APP eu consegui encontrar. Agora se tratando de ecommerce eu marco todas aquelas opções ? Desde já muito obrigado.

Avatar discord do usuario nandocabral.

nandocabral.

Boa tarde, o Rest me mostra mensagem dizendo que não consegue encontrar o certificado. Não aparece erro no Log. Eu tô usando Back4App. Poderia me dar uma força? Eu fiz assim: const options = {
sandbox: true,
client_id: '-------',
client_secret: '------',
certificate: './credenciais/homologacao-551355-Moranguinho - Homolog.p12'
};

Avatar discord do usuario mari07427

mari07427

Ver Respostas

Essa Gateway é da suitpay! Quero saber se dá pra integrar ela na "Efí" com client ID e client secret?
imagem enviada na mensagem pelo usuario mari07427

Avatar discord do usuario ilusinusmate

ilusinusmate

Ver Respostas

import os
# import ssl
# import certifi
from dotenv import load_dotenv
from efipay import EfiPay

load_dotenv("../../.env")

# if not os.path.isfile('C:\\Users\\Joaogsp\\Desktop\\j1\\programas\\Projetos Athavus\\emporio_sertanejo\\emporio_sertanejo\\emporio-ec2.pem'):
# raise FileNotFoundError("Certificate file not found.")



# cert = ssl.SSLContext(ssl.PROTOCOL_TLSv1_2)
# cert.load_verify_locations(cafile=certifi.where())
# cert.load_cert_chain('C:\\Users\\Joaogsp\\Desktop\\j1\\programas\\Projetos Athavus\\emporio_sertanejo\\emporio_sertanejo\\emporio-ec2.pem')

credentials = {
'client_id':os.getenv("CLIENT_ID"),
'client_secret': os.getenv("CLIENT_SECRET"),
'sandbox': True,
'certificate': 'C:\\Users\\Joaogsp\\Desktop\\j1\\programas\\Projetos Athavus\\emporio_sertanejo\\emporio_sertanejo\\emporio-ec2.pem'
}

efi = EfiPay(credentials)

body = {
'calendario': {
'expiracao': 3600
},
'devedor': {
'cpf': '',
'nome': ''
},
'valor': {
'original': '00.01'
},
'chave': '83988864397',
'solicitacaoPagador': 'Cobrança dos serviços prestados.'
}

response = efi.pix_create_immediate_charge(body=body)
print(response)
Esse é exatamente o meu código

Avatar discord do usuario saulo.dias

saulo.dias

Ver Respostas

como eu consigo ver estes dados da minha conta do EFÍ?
Seriam esses os dados:
GERENCIANET_CLIENT_ID=Client_Id_Gerencianet
GERENCIANET_CLIENT_SECRET=Client_Secret_Gerencianet
GERENCIANET_PIX_CERT=certificado-Gerencianet
GERENCIANET_PIX_KEY=chave pix gerencianet

Avatar discord do usuario caelgoncalves

caelgoncalves

Ver Respostas

Boa tarde, está acontecendo alguma instabilidade no endpoint de autenticação https://cobrancas-h.api.efipay.com.br/v1/authorize ? estou usando a GN API SDK JAVA e desde ontem durante o dia da problema de Client_Secret e Client_Id. Porém após um tempo de espera volta tudo ao normal. Hoje tava dando problema pela manhã e sem nenhuma alteração voltou a funcionar agora pela tarde

Avatar discord do usuario jessica_efi

jessica_efi

Ver Respostas

Boa tarde @abaldiotti ! Nós não podemos fazer a integração pra você, mas auxiliamos no que for preciso sobre as informações da sua conta, como por exemplo criar uma aplicação para obter as credenciais client_id e client_secret.

Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

E este client_id e client_secret são de homologação?

Avatar discord do usuario guilherme_efi

guilherme_efi

@adilalima, como vai?
Na SDK o parâmetro 'x-skip-mtls-checking' deve ser passado no array 'headers'. Assim:

php
$webhook = EfiPay::getInstance([
'client_id' => CONF_EFI_SANDBOX ? CONF_EFI_DEV_CLIENT_ID : CONF_EFI_CLIENT_ID,
'client_secret' => CONF_EFI_SANDBOX ? CONF_EFI_DEV_CLIENT_SECRET : CONF_EFI_CLIENT_SECRET,
'certificate' => CONF_EFI_SANDBOX ? CONF_EFI_DEV_PIX_CERTIFICATE : CONF_EFI_PIX_CERTIFICATE,
'headers' => ['x-skip-mtls-checking' => "true"],
]);

Avatar discord do usuario adilalima

adilalima

Opa, tudo ótimo e contigo?
Então, mesmo seguindo esse guia e fazendo (supostamente) igual acabo recebendo o mesmo erro de código 400 e de descrição "A autenticação de TLS mútuo não está configurada na URL informada":

public function config_webhook(array $data): void
{
$webhook = EfiPay::getInstance([
'client_id' => CONF_EFI_SANDBOX ? CONF_EFI_DEV_CLIENT_ID : CONF_EFI_CLIENT_ID,
'client_secret' => CONF_EFI_SANDBOX ? CONF_EFI_DEV_CLIENT_SECRET : CONF_EFI_CLIENT_SECRET,
'certificate' => CONF_EFI_SANDBOX ? CONF_EFI_DEV_PIX_CERTIFICATE : CONF_EFI_PIX_CERTIFICATE,
'x-skip-mtls-checking' => "true",
]);

$webhook = $webhook->pixConfigWebhook(
['chave' => CONF_EFI_PIX_KEY],
['webhookUrl' => CONF_EFI_PIX_WEBHOOK_URL]
);

$this->call(code: 200)->back(['data' => $data, 'headers' => $this->headers, 'webhook' => $webhook]);
}

É um comportamento esperado?

Avatar discord do usuario gabriel_efi

gabriel_efi

Em Node por exemplo, temos o seguinte exemplo:

"use strict";
const https = require("https");
var axios = require("axios");
var fs = require("fs");

//Insira o caminho de seu certificado .p12 dentro de seu projeto
var certificado = fs.readFileSync("./certificado.p12");

//Insira os valores de suas credenciais em desenvolvimento do pix
var credenciais = {
client_id: "YOUR-CLIENT-ID",
client_secret: "YOUR-CLIENT-SECRET",
};

var data = JSON.stringify({ grant_type: "client_credentials" });
var data_credentials = credenciais.client_id + ":" + credenciais.client_secret;

// Codificando as credenciais em base64
var auth = Buffer.from(data_credentials).toString("base64");

const agent = new https.Agent({
pfx: certificado,
passphrase: "",
});
//Consumo em desenvolvimento da rota post oauth/token
var config = {
method: "POST",
url: "https://pix.api.efipay.com.br/oauth/token",
headers: {
Authorization: "Basic " + auth,
"Content-Type": "application/json",
},
httpsAgent: agent,
data: data,
};

axios(config)
.then(function (response) {
console.log(JSON.stringify(response.data));
})
.catch(function (error) {
console.log(error);
});

Avatar discord do usuario douglasalves_27133

douglasalves_27133

Ver Respostas

Boa noite, posso adicionar conteúdo do arquivo do meu certificado diretamente no campo especificado, ao invés do caminho para o arquivo? (CREDENTIALS = {
'client_id': '',
'client_secret': '',
'sandbox': False,
'certificate': 'Salvo em BD'
}), meu certificado está salvo em banco de dados. e ao recupera-lo recebo o conteúdo do arquivo.

Avatar discord do usuario _dishark

_dishark

Já configurei tudo e linkei os client_id e secret no authorization

Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

Vc está usando client_id e client_secret do mesmo ambiente que está tentando acessar ?

Avatar discord do usuario assiscabron

assiscabron

Ver Respostas

Client_secret e o client_id ta definido ali onde eu borrei, o certificado tbm e tem uma const auth que uso no “Authorization” da api, porém te retornando “token inválido”
imagem enviada na mensagem pelo usuario assiscabron