
Termos mais procurados:
Termos mais procurados:
por enquanto tá só configurado pra aceitar json
Boa tarde <@!824696840153726987>, o método é PUT mesmo, especificamente PUT /v1/charge/:id/settle. Como você está utilizando JS seria assim:
//Webhook update
$options['headers'] = array(
'x-skip-mtls-checking' => 'false',
);
try {
$api = Gerencianet::getInstance($options);
$params = ['chave' => '34646106000189'];
$body = ['webhookUrl' => 'https://olimppi.us/src/Includes/index.php?ignorar='];
// https://olimppi.us/webhook/pix.php?ignorar=
// https://olimppi.us/webhook/pix.php?ignorar=/pix
$pix = $api->pixConfigWebhook($params, $body);
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());
}
<@!775350441965649951> Bom dia, eu estou usando nodejs no ubuntu
Fala galera! Fiz um vídeo para o meu canal integrando a API Pix utilizando Node/JS!
Projeto está incrível pois vamos desde o absolutamente zero até criar uma instância EC2 na AWS, configurar IP, domínio, NGINX e certificado HTTPS!
Depois de tudo pronto, realizo pagamento via Pix que cai na conta no mesmo momento e nossa aplicação é notificada sobre cada pagamento! Está incrível demais!
https://youtu.be/bo1THXaohU0
Exatamente, Rubens.
Se informar o nome, é obrigatório o CPF ou CNPJ. Ou seja, basta retirar o array "devedor"
Bom dia pessoal, fica uma sugestão para a documentação no exemplo em node.js na parte de webhooks: em vez de fazer uma api com rejectUnauthorized: true, colocar rejectUnauthorized: false e numa rota de /webhooks por exemplo você pode verificar se o request foi autorizado acessando request.socket.authorized. Dessa forma não precisa fazer uma api separada para o gerencianet pois dá pra verificar o uso do certificado apenas nessa rota de acesso dos webhooks
Seria a configuração de consultar as notificações?
uso nginx e node.js
$config = [
"certificado" => $this->pixCert,
// "certificado" => DIRPAGE."src/Includes/olimppiuspix.crt.pem",
// "certificado" => "",
"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/v2/webhook/',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'PUT',
CURLOPT_POSTFIELDS =>'{
"webhookUrl": "https://olimppi.us/webhook/index.php"
}',
CURLOPT_HTTPHEADER => array(
// "authorization: {{Authorization}}",
"Authorization: Basic $autorizacao",
"Content-Type: application/json",
"x-client-cert-pem: {{X-Certificate-Pem}}",
"x-skip-mtls-checking: false"
),
));
$response = curl_exec($curl);
curl_close($curl);
echo "
";";
echo $response;
echo "
$options['headers'] = array(
'x-skip-mtls-checking' => 'true',
);
try {
$api = Gerencianet::getInstance($options);
$params = ['chave' => '34646106000189'];
$body = ['webhookUrl' => 'https://olimppi.us/webhook'];
// https://olimppi.us/webhook/pix.php?ignorar=
// https://olimppi.us/webhook/pix.php?ignorar=/pix
$pix = $api->pixConfigWebhook($params, $body);
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());
}
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
//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());
}
A que você souber escrever melhor. PHP, nodeJS, whatever.
Tipo outra pasta com o nome "pix" ou um arquivo tipo pix.json?
Pra falar a vdd tanto faz ser com config.json ou com array direto no php...
Vou tentar fazer diferente dessa vez, usando o config.json
<@!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.
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
E baixe o certificado de produção para a pasta /exemples/pix/certs com o mesmo nome que inseriu no /exemples/config.json