Histórico de mensagens sobre certificado em pix

EXIBINDO CONVERSAS RECENTES:

Texto: certificado
Canal: pix
Avatar discord do usuario mereditha.

mereditha.

Ver Respostas

to passando, só apaguei o nome do certificado ai
imagem enviada na mensagem pelo usuario mereditha.

Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

Normalmente isso acontece quando você não passa o certificado na requisição.

Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

O certificado que está lá é de homologação ou de produção ?

Avatar discord do usuario felipenunes0714

felipenunes0714

Ver Respostas

e o certificado está na pasta raíz do projeto

Avatar discord do usuario felipenunes0714

felipenunes0714

Ver Respostas

$config = [
"certificado" => "./producao.pem",
"client_id" => "",
"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 "
";
?>

eu estou chamando essa chamada simples da documentação, e ela me retorna a pagina em branco ao invés de retornar o token

Avatar discord do usuario felipenunes0714

felipenunes0714

já verifiquei o diretorio do certificado as credenciais e memso assi me retorna a pagina em branco

Avatar discord do usuario frankkafka

frankkafka

nao, a unica coisa que fiz foi obter as chaves de acesso e o certificado p12 e baixei o codigo do github de voces para testar minhas credenciais.

Avatar discord do usuario heitoralves

heitoralves

Por conta q fiz com site dai deu um trampo conseguir certificado https e colocar em um nginx pra fazer o roteamento da página

Avatar discord do usuario rafaelguimaraes9983

rafaelguimaraes9983

hmmm acho que é isso. esqueci do certificado

Avatar discord do usuario joaolucas_efi

joaolucas_efi

Ver Respostas

@rafaelguimaraes9983, tudo bem?
Você chegou a configurar o seu Postman com as credenciais e o certificado de sua conta?
Caso não tenha pode ver como fazer isso aqui

Avatar discord do usuario gabriel_efi

gabriel_efi

Se o access_token está sendo passado corretamente a conexão deveria estar estabelecida, casos a se verificar:

credenciais e certificado alinhados de acordo com o ambiente (homologação ou produção);
credenciais e certificado da mesma conta (como mencionou fazer para mais clientes é preciso verificar);
ambiente válido no Postman (environment);
configurações de firewall e de rede aptas para a comunicação.

Avatar discord do usuario alegon_09924

alegon_09924

as credenciais e certificado estão ok porque gerei o token pelo mesmo postman

Avatar discord do usuario joaolucas_efi

joaolucas_efi

Ver Respostas

Pode, basta que você configure o certificado SSL que você tem ao invés do gerado pelo certbot.

Avatar discord do usuario rafaelguimaraes9983

rafaelguimaraes9983

Ver Respostas

todo tutorial que assisto ou pela propria documentação sempre fala sobre as SSL usando certbot. porem onde eu hospedo minha API ja me gera um certificado SSL automaticamente. essa parte de certbot eu posso ignorar?

Avatar discord do usuario _acb09

_acb09

Ver Respostas

O meu código está assim:

$config = [];
$config["certificado"] = config("services.efipay.certificate_path");
$config["client_id"] = config("services.efipay.client_id");
$config["client_secret"] = config("services.efipay.client_secret");

$headers = [];
$headers['Authorization'] = "Basic " . base64_encode($config["client_id"] . ":" . $config["client_secret"]);
$headers['Content-Type'] = 'application/json';

$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 => 60,
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 => $headers
));

$response = curl_exec($curl);

if (curl_errno($curl)) {
dd('Error:' . curl_error($curl));
}

curl_close($curl);

dd($response);

Avatar discord do usuario yasmin_efi

yasmin_efi

Ver Respostas

Boa noite @marilia_05972! Os certificados também são alterados de acordo com cada ambiente testado, correto?

Avatar discord do usuario marilia_05972

marilia_05972

Ver Respostas

Olá, boa noite.
Eu estou fazendo uma integração usando o sdk (gn-api-sdk-typescript": "^2.0.1") , estou tomando um erro de Forbidden na chamada ao pixCreateImmediateCharge([], body) quando tento chamar em ambiente de produção (ou creds de prod). A única mensagem de retorno é essa, "forbidden".
Porém, quando uso credenciais de homologação, funciona perfeitamente, e quando mudo para as de produção, tomo essa exceção. Como a mensagem não está clara, eu não consegui decifrar o que pode ser.
Parâmetros corretos, sandbox=true quando homol, false quando prod, client_secret, client_id,
certificate corretos, chave pix informada corretamente.
Meu único vacilo, foi que não fiz o download do certificado de produção no ato em que ele foi gerado, então eu excluí e gerei outro. Poderia ser esse o problema? Caso positivo, o que eu tenho que fazer agora?
Também testei com o "sdk-typescript-apis-efi": "^1.0.2" e ocorre o mesmo cenário.

Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

O que existe, se você tiver algo como 500 vendedores ou mais, é uma API de criação de contas, aonde você cria a conta e com isso já tem credenciais e certificado.

Avatar discord do usuario agutoli

agutoli

Ver Respostas

Olá, bom dia.

Estou trabalhando numa plataforma onde os clientes vão vender seus produtos. Sei que alguns gateways de pagamento permitem criar contas de "vendedores", ou seja, a plataforma conecta um vendedor e assim o PIX/pagamento são vinculados ao vendedor e não diretamente a plataforma em si.

Existe alguma forma para o pagamento serem vinculados direto com meu cliente? Ou eu teria que solicitar aos vendedores que me enviem suas api/keys/certificados para eu integrar na minha plataforma?

Avatar discord do usuario phillipeaugusto

phillipeaugusto

Ver Respostas

tem que passar o certificado em toda requisicao