Histórico de mensagens

EXIBINDO CONVERSAS RECENTES:

# pix
Avatar discord do usuario oleoessencial

oleoessencial

Ver Respostas

em sandbox realmente não é um qr validado.

# pix
Avatar discord do usuario jaoedson

jaoedson

Consegui criar o QR CODE, mas ele é legível já em sandbox?

# pix
Avatar discord do usuario jaoedson

jaoedson

Ver Respostas

deu certinho
imagem enviada na mensagem pelo usuario jaoedson

# pix
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"}}

# pix
Avatar discord do usuario lorenacastro

lorenacastro

Ver Respostas

function auth() {
$file = file_get_contents("./config.json");
$config = json_decode($file, true);
$environment = ($config["sandbox"] === true) ? "development" : "production";

$certfile = $config[$environment]["certificate_name"];

$curl = curl_init();

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

curl_setopt_array($curl, array(
CURLOPT_URL => $config[$environment]["pix_auth_url"], // 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 => $certfile, // Caminho do certificado
CURLOPT_SSLCERTPASSWD => "",
CURLOPT_HTTPHEADER => array(
"Authorization: Basic $authorization",
"Content-Type: application/json"
),
));

$response = curl_exec($curl);

curl_close($curl);

echo "

";
echo $response;
echo "
";
}

# pix
Avatar discord do usuario lorenacastro

lorenacastro

acho que se vc colocar como falei ali vai rodar

# pix
Avatar discord do usuario oleoessencial

oleoessencial

Ver Respostas

aqui tambem deu erro = [21-Nov-2020 07:57:48 America/Fortaleza] PHP Parse error: syntax error, unexpected 'grant_type' (T_STRING) in /home1/abc/public_html/com.br/pix/consultar.php on line 22

# pix
Avatar discord do usuario lorenacastro

lorenacastro

usa assim CURLOPT_POSTFIELDS => '{"grant_type":"client_credentials"}',

# pix
Avatar discord do usuario jaoedson

jaoedson

Ver Respostas

Usei isso e deu certo:

$id = md5(uniqid(rand(), true));

for ($i=0, $c=strlen($id); $i<$c; $i++)
$id[$i] = (rand(0, 100) > 50
? strtoupper($id[$i])
: strtolower($id[$i]));
$txID = $id;

# pix
Avatar discord do usuario oleoessencial

oleoessencial

Ver Respostas

olá, usei isso porem quando envio a erro no CURLOPT_POSTFIELDS => json_encode("{"grant_type": "client_credentials"}"),

# pix
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"}}

# pix
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'
],
];

# pix
Avatar discord do usuario jaoedson

jaoedson

Ver Respostas

vocês estão usando qual função de encrypt para geras os ids?

# pix
Avatar discord do usuario jaoedson

jaoedson

Acho que o problema estava só aqui $arr = ['grant_type' => 'client_credentials']; que estava diferente do meu

# pix
Avatar discord do usuario jaoedson

jaoedson

eu testei e funcionou

# pix
Avatar discord do usuario lorenacastro

lorenacastro

vou testar

# pix
Avatar discord do usuario lorenacastro

lorenacastro

não testei, mas o conteúdo do json deve ser assim:

{"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"}}

# pix
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;
}

# pix
Avatar discord do usuario lorenacastro

lorenacastro

foi só um exemplo mesmo

# pix
Avatar discord do usuario lorenacastro

lorenacastro

não