Histórico de mensagens sobre Client_ID

EXIBINDO CONVERSAS RECENTES:

Texto: Client_ID
# devs
Avatar discord do usuario lucianah

lucianah

bom dia. recebi um email dizendo que o token da api de cobrança foi alterado. mas quando eu vou na API pra ver o client_id e client_secret eles parecem os mesmos. Este token que foi alterado é de outro lugar no site?

# cartões
Avatar discord do usuario jessica_efi

jessica_efi

Ver Respostas

Perfeito. A integração com cartão funciona da mesma forma que o boleto. Você precisa do client_id e client_secret. Você pode criar uma nova aplicação em sua conta ou utilizar uma ja existente. Fica a seu critério. Em seguida, você deve entrar em contato com o suporte do IXC que eles vão auxiliar você no restante da integração.

Para criar a aplicação, você pode seguir esse tutorial.
Verifique também se você ja tem o Ramo de atividade cadastrado em sua conta.

# pix
Avatar discord do usuario niltonalmeida1980_71812

niltonalmeida1980_71812

os valores do client ID, Client Secrect são de homologação.

# pix
Avatar discord do usuario joaolucas_efi

joaolucas_efi

Ver Respostas

Tanto o certificado quanto o par Client ID e Client Secret são diferentes à depender do ambiente, o parâmetro sandbox nas credenciais diz à qual ambiente você vai tentar fazer requisição.
Com sandbox = true você fará requisição para homologação, portanto suas credenciais (Client ID, Client Secrect e certificado) devem ser de homologação.

# pix
Avatar discord do usuario .ilselangnar

.ilselangnar

É uma conta corporative e utilizamos o CNPJ para receber pagamentos, fois por essa conta que foi gerados as credenciais como "client_id" e "client_secret"

# pix
Avatar discord do usuario joao_efi

joao_efi

Ver Respostas

@.ilselangnar a chave Pix precisa estar registrada na mesma conta do client_id e client_secret

# módulos-plugins
Avatar discord do usuario guilherme_efi

guilherme_efi

Segue um exemplo mais detalhado, onde é feito a autenticação e consumo do endpoint para criar um boleto.

php
$config = [
"client_id" => "Client_Id_...",
"client_secret" => "Client_Secret_..."
];

$autorizacao = base64_encode($config["client_id"] . ":" . $config["client_secret"]);

$curl = curl_init();

curl_setopt_array($curl, array(
CURLOPT_URL => 'https://cobrancas-h.api.efipay.com.br/v1/authorize',
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(
'Content-Type: application/json',
'Authorization: Basic ' . $autorizacao
),
));
$returnAuth = json_decode(curl_exec($curl), true);
$access_token = $returnAuth['access_token'];
curl_close($curl);

echo "
";
var_dump($returnAuth);
echo "
";

$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://cobrancas-h.api.efipay.com.br/v1/charge/one-step',
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 => '{
"items": [
{
"name": "Teste Gn",
"amount": 1,
"value": 500
}
],
"payment": {
"banking_billet": {
"expire_at": "2024-12-10",
"customer": {
"name": "Gorbadoc Oldbuck",
"cpf": "94271564656",
"email": "[email protected]"
}
}
}
}',
CURLOPT_HTTPHEADER => array(
'Authorization: Bearer ' . $returnAuth['access_token'],
'Content-Type: application/json'
),
));

$responseBillet = curl_exec($curl);
curl_close($curl);

echo "
";
var_dump($responseBillet);
echo "
";

# módulos-plugins
Avatar discord do usuario discovery_kids

discovery_kids

Ver Respostas

sim estou usando cURL.

//Desenvolvido pela Consultoria Técnica da Efí
$config = [
"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://cobrancas-h.api.efipay.com.br/v1/authorize',
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(
"Authorization: Basic $autorizacao",
"Content-Type: application/json"
),
));

$response = curl_exec($curl);

curl_close($curl);

echo "

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

com as devidas alterações no client_id e client_secret.

# pix
Avatar discord do usuario walysonpatric

walysonpatric

Ver Respostas

Coloquei assim mas só funciona no localhost a confirmação de PIX (http://localhost:8000/cob/a7689c1ff5b64eeca8695e2e58c30007), no site da vercel da página não encontrada.

Já coloquei as variáveis no site e estou usando o certificado p12, o pem da erro até no localhost.

Teria que colocar algum comando no arquivo next.config.js ou vercel.json?

// Rota para consultar cobrança por txid
router.get('/cob/:txid', async (req, res) => {
const txid = req.params.txid;

try {
const reqGN = await GNRequest({
clientID: process.env.GN_CLIENT_ID,
clientSecret: process.env.GN_CLIENT_SECRET
});

// Consultar a cobrança usando o txid
const response = await reqGN.get(https://pix.api.efipay.com.br/v2/cob/${txid});

// Verificar se há um objeto PIX na resposta
if (response.status === 200 && response.data.pix) {

// Enviar o código de ativação junto com a resposta
return res.status(200).json({ message: 'PIX confirmado com sucesso.' });
} else {
// O PIX não foi pago ou não encontrado
return res.status(400).json({ error: 'PIX não encontrado ou não foi pago.' });
}
} catch (error) {
console.error('Erro ao consultar a cobrança:', error.message);
return res.status(500).json({ error: 'Erro ao consultar a cobrança.' });
}
});

# pix
Avatar discord do usuario walysonpatric

walysonpatric

Ver Respostas

Oi, pra confirmar se o pix foi pago seria algo assim? (não sei muito sobre isso, to aprendendo e usei o GPT pra criar o código.)

app.post('/webhook(/pix)?', async (req, res) => {

try {
// Consultar a cobrança usando o txid
const response = await axios.get(/v2/cob/:txid, {
headers: {
Authorization: 'Bearer' + process.env.GN_CLIENT_ID // Substitua pelo token de autorização correto
}
});

// Verificar o status da cobrança na resposta
if (response.status === 200 && response.data.status === 'CONCLUIDA') {

// Enviar o código de ativação para o Supabase
const { data: insertedData, error } = await supabaseClient
.from('dominios_permitidos')
.insert([{ code: generatedCode }]); // Acesse o código gerado na rota '/api/key'

// Enviar o código de ativação junto com a resposta
return res.status(200).json({ message: 'Webhook recebido com sucesso.', code: generatedCode });
} else {
// Se a cobrança não estiver concluída, retorne uma mensagem de erro
return res.status(400).json({ error: 'Cobrança não concluída.' });
}
} catch (error) {
console.error('Erro ao consultar a cobrança:', error.message);
return res.status(500).json({ error: 'Erro ao consultar a cobrança.' });
}

});

# pix
Avatar discord do usuario alex_684067_87631

alex_684067_87631

hola buenas tardes, soy nuevo en este tema EFI. Me logueé en https://app.sejaefi.com.br/home y estoy buscando un lugar en donde crear un código PIX o QR para que un cliente pueda utilizarlo. Actualmente integré la aplicación usando mercadopago pero quiero cambiarla a algo más intuitivo.
Ya instalé el SDK y seguramente voy a necesitar crear las keys, como muestra el ejemplo de EFI?
Me refiero a
{
"client_id": "Client_Id",
"client_secret": "Client_Secret",
"certificate": "./certs/nome_certificado.p12",
"sandbox": true,
"timeout": 30
} pero no entiendo bien los tutorials. Existe algún URL con el "paso a paso" para integrar una aplicación para que pueda generar el QR o el link correspondiente

# pix
Avatar discord do usuario calebportodev

calebportodev

Olá. Como usar as chaves CLIENT_ID e CLIENT_SECRET_ID e o certificado .p12 para gerar um pagamento em PIX?
imagem enviada na mensagem pelo usuario calebportodev

# devs
Avatar discord do usuario rfr0120

rfr0120

Ver Respostas

Tenho credenciais configuradas e certificado gerado e salvo na pasta do projeto
Tenho uma biblioteca na qual encapsulei o código relacionado a pagamento (Que interage com a EfiPay via sdk-java-apis-efi na versão 1.0.3)
Criei uma classe de teste de integração que faz todo um fluxo de pagamento e funciona normal
Porém quando executo um fluxo real no meu micro serviço tomo esse java.net.SocketException: Unexpected end of file from server
Já depurei o objeto efiPay e em ambos os cenários vejo as credenciais (client_id e client_secret) e caminho do certificado atribuídos corretamente na configuração
Não há diferença aparente entre o cenário que está funcionando e o que gera essa exceção a não ser o projeto (Tentei até copiar o arquivo .p12 mantendo no mesmo path em ambos os repositórios mas sem resultado)
Agradeço se alguém conseguir dar uma luz
Já alguns dias enfrentando esse problema sem êxito

# bolix
Avatar discord do usuario tioatila

tioatila

Ver Respostas

tudo joia Guilher e com você?

Eu verifiquei e as credenciais estão apontando para de produção e esse retorno vem da requisição de postback de vocês para minha aplicação, existe a possibilidade de o notification que vem de vocês não existe mais na plataforma de vocês e por isso acontece?

php
$notification = $request->get('notification');

UpdateStatusInstallment::dispatch($notification)
->onQueue('update_installment_callback');
PHP
$api = new Gerencianet([
'client_id' => env('GERENCIA_NET_CLIENT_ID'),
'client_secret' => env('GERENCIANET_SECRET'),
'sandbox' => app()->environment() === 'local'
]);
$chargeNotification = $api->getNotification([
'token' => $this->notificationId
], []);
\Log::info("CHARGE NOTIFICATION",$chargeNotification);

Ele não chega nem a printa esse log de Charge Notification e o volume está consideravel
imagem enviada na mensagem pelo usuario tioatila

# cartões
Avatar discord do usuario racs188130

racs188130

Ver Respostas

Boa tarde pessoal, uma duvida báscia, a "virada de chave" de homologação para Produção precisaria de algo a mais além da alteração da url(retirando o .."-h" de homologação ) e alterando o client id e client secret ?

# pix
Avatar discord do usuario berdamc

berdamc

"access_token_url": "https://pix-h.api.efipay.com.br/oauth/token",
"credentials": {
"grant_type": "client_credentials",
"client_id": "12123123",
"client_secret": "123123123",
"scope": "read_write"
},

# bolix
Avatar discord do usuario rafaelogliari

rafaelogliari

Ver Respostas

Bom dia!

Estou com dificuldades de gerar boleto com PHP Curl. Sempre retorna: Unauthorized.
Utilizei credencias de Homologação.

Estou utilizando esse modelo:
$config = [
"client_id" => "Client_Id_....",
"client_secret" => "Client_Secret_...."
];
$autorizacao = base64_encode($config["client_id"] . ":" . $config["client_secret"]);

$curl = curl_init();

curl_setopt_array($curl, array(
CURLOPT_URL => 'https://cobrancas-h.api.efipay.com.br/v1/charge/one-step',
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 =>'{
"items": [{
"name": "Product 1",
"value": 500,
"amount": 1
}],
"shippings": [{
"name": "Default Shipping Cost",
"value": 100
}],
"payment": {
"banking_billet": {
"expire_at": "2024-04-16",
"customer": {
"name": "Gorbadoc Oldbuck",
"email": "[email protected]",
"cpf": "10617184682",
"birth": "1977-01-15",
"phone_number": "62986070247"

}
}
}
}',
CURLOPT_HTTPHEADER => array(
"Authorization: Basic $autorizacao",
"Content-Type: application/json"
),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;

# pix
Avatar discord do usuario _isaqueoliveiradev

_isaqueoliveiradev

Ver Respostas

Bom dia, estou trabalhando em um sistema que utiliza a API Pix, porem a conta que esta sendo utilizada pra receber os pagamentos pix precisa ser alterada para uma outra conta, gostaria de saber o que preciso alterar tanto no codigo, seria somente o client_id, client_secret, chave pix e o certificado p12?

# bolix
Avatar discord do usuario .pauloazevedo

.pauloazevedo

Ola bom dia, estou tentando gerar os boletos e estou tomando essa exception:
"sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target"
Obs: até o mês passado consegui gerar normal apenas com client_id e client_secret

# pix
Avatar discord do usuario jessica_efi

jessica_efi

Ver Respostas

Boa tarde @lidiamariano ! Pra essa rota https://pix.api.efipay.com.br/ você deve usar Client_id, Client_Secret e certificado de produção. Se for utilizar as credenciais e certificado de homologação, você deve utilizar a rota https://pix-h.api.efipay.com.br