Histórico de mensagens sobre js em pix

EXIBINDO CONVERSAS RECENTES:

Texto: js
Canal: pix
Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

Sim, <@!783359762917752843>. Atualizamo nossa SKD para a versão 3.1.0 que possui estes novos endpoints também. Segue exemplo do endpoint PUT /v2/gn/config

php

require __DIR__.'/../../../vendor/autoload.php';

use Gerencianet\Exception\GerencianetException;
use Gerencianet\Gerencianet;

$file = file_get_contents(__DIR__.'/../../config.json');
$options = json_decode($file, true);

try {
$body = [
"pix" => [
"receberSemChave" => true,
"chaves" => [
"[email protected]" => [
"recebimento" => [
"txidObrigatorio" => false,
"qrCodeEstatico" => [
"recusarTodos" => false
]
]
],
"efa1db8c-735b-4898-92e0-a54daabe65e6" => [
"recebimento" => [
"txidObrigatorio" => false,
"qrCodeEstatico" => [
"recusarTodos" => false
]
]
]
]
]
];

$api = Gerencianet::getInstance($options);
$pix = $api->pixUpdateSettings($params, $body);

echo json_encode(["code" => 204]);
} catch (GerencianetException $e) {
print_r($e->code);
print_r($e->error);
print_r($e->errorDescription);

throw new Error($e->error);
} catch (Exception $e) {
throw new Error($e->getMessage());
}


Com isto, é necessário incluir o endpoint com o nome pixUpdateSettings no arquivo \src\Gerencianet\config.json

Avatar discord do usuario roguitar88

roguitar88

Ver Respostas

//Webhook detail
try {
$api = Gerencianet::getInstance($options);
$params = ['chave' => '34646106000189'];
$pix = $api->pixGetWebhook($params);

echo json_encode($pix);
} catch (GerencianetException $e) {
print_r($e->code);
print_r($e->error);
print_r($e->errorDescription);

throw new \Error($e->error);
} catch (\Exception $e) {
throw new \Error($e->getMessage());
}

Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

A que você souber escrever melhor. PHP, nodeJS, whatever.

Avatar discord do usuario roguitar88

roguitar88

Ver Respostas

Tipo outra pasta com o nome "pix" ou um arquivo tipo pix.json?

Avatar discord do usuario roguitar88

roguitar88

Pra falar a vdd tanto faz ser com config.json ou com array direto no php...

Avatar discord do usuario roguitar88

roguitar88

Ver Respostas

Vou tentar fazer diferente dessa vez, usando o config.json

Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

<@!723278999236771916> A SDK já foi planejada para ser utilizada com poucas modificações. No caso, foi centralizado no arquivo .json as configurações de ambiente (sandbox true => Homologação ou sandbox false => produção), definições de credenciais e caminho do certificado.

Não necessariamente deve ser salvo na pasta /exemples/pix/certs, mas então no config.json você pode modificar o diretório do certificado para referenciá-lo em outra pasta.

Avatar discord do usuario roguitar88

roguitar88

Ver Respostas

Mas isso já tá feito. Só que n estou utilizando esse json, tô usando a variável $options e nela armazeno esses dados aí em array lá mesmo no PHP

Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

E baixe o certificado de produção para a pasta /exemples/pix/certs com o mesmo nome que inseriu no /exemples/config.json

Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

No arquivo /exemples/config.json da SDK, altere suas credenciais client_id, client_secret e o nome do certificado

Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

Acho que era resposta a uma pergunta de outra pessoa sobre Node.JS

Avatar discord do usuario roguitar88

roguitar88

Ver Respostas

Não mexo com NodeJs, mais com PHP

Avatar discord do usuario roguitar88

roguitar88

É o q? É um arquivo json?

Avatar discord do usuario roguitar88

roguitar88

Certo, por falar nisso posso criar um segundo arquivo chamado config2.json, para colocar os dados da produção, e assim fazer um if... else... no PHP. Pq assim, evita de eu ter que trocar (digitar) os dados toda vez que eu for mudar de ambiente...

Avatar discord do usuario roguitar88

roguitar88

Ver Respostas

E nesse config.json eu tenho mesmo que colocar o client_id e o client_secret?

Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

Em API não precisa necessariamente aparecer nada na tela, ela é JSON vai e JSON volta, não HTML. O certificado que você está usando é o de produção ? Pq a rota é de homologação, que precisa do certificado de homologação.

Avatar discord do usuario roguitar88

roguitar88

Ver Respostas

$config = [
"certificado" => "/etc/certs-gerencianet/olimppiuspix.crt.pem",
"client_id" => $this->clientId,
"client_secret" => $this->clientSecret
];
$autorizacao = base64_encode($config["client_id"] . ":" . $config["client_secret"]);

$curl = curl_init();

curl_setopt_array($curl, array(
CURLOPT_URL => "https://api-pix-h.gerencianet.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; //print_r($response);
echo "
";
// echo "Que que está acontecendo";

Avatar discord do usuario jessica_efi

jessica_efi

Ver Respostas

É bem simples.. se você utilizar a nossa sdk de php, você vai inserir o endpoint no arquivo config.json (gn-api-sdk-php/src/Gerencianet/config.json)
Por exemplo:

json
"pixSend": {
"route": "/v2/pix",
"method": "post"
}
E no arquivo que você criar com a requisição do pix.send, você chama esse endpoint.

Avatar discord do usuario elsonlima0580

elsonlima0580

esse modelo então não é suficiente?
$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://api-pix-h.gerencianet.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 ro.dri.go.sil.va

ro.dri.go.sil.va

Ver Respostas

assim? json_decode(file_get_contents('php://input'));