Histórico de mensagens sobre API pix

EXIBINDO CONVERSAS RECENTES:

Texto: API pix
# pix
Avatar discord do usuario Ayrton Teshima

Ayrton Teshima

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

# pix
Avatar discord do usuario m4rc0nd35.

m4rc0nd35.

Ver Respostas

Boa noite, to montando api com pix, já consegui pagar, agora vou iniciar a luta com callback, alguem aqui conseguiu gerar os .pem com cartbot?

# pix
Avatar discord do usuario roguitar88

roguitar88

Ver Respostas

$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 "
";

# pix
Avatar discord do usuario roguitar88

roguitar88

Ver Respostas

Certo, e como faço esse cadastro na prática, digitando a url no navegador: https://api-pix.gerencianet.com.br/v2​/webhook/:34646106000189

# pix
Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

PATCH mudando o status para REMOVIDA_PELO_USUARIO_RECEBEDOR
https://dev.gerencianet.com.br/docs/api-pix#section-revisar-cobran-a
status

Enum: "ATIVA","CONCLUIDA"

"REMOVIDA_PELO_USUARIO_RECEBEDOR",

"REMOVIDA_PELO_PSP"

# pix
Avatar discord do usuario roguitar88

roguitar88

Ver Respostas

$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());
}

# 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

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

# pix
Avatar discord do usuario bruno.barbosa

bruno.barbosa

Ver Respostas

Duvidas sobre a API:
Atualização de pix recebidos é real time?
Consigo gerar diferentes QR code/codigo pra cada cliente? tem algum custo?
Tem qual a tipagem do dado a respeito de pix recebido? consigo ter a mensagem enviada junto com o pix e saber qual codigo a pessoa usou pra fazer o pagamento?

# pix
Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

Estes são todos os endpoints que etão disponíveis para você consumir da API Pix da Gerencianet.
Se você está utilizando a SDK de PHP, todos eles já estão configurados para utilização no diretório /examples/pix

# pix
Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

O Rubens como sempre explicando muito bem! haha <@!723278999236771916> em homologação até o momento não é possível simular pagamento. Então sugerimos você criar uma cobrança com um valor baixo em produção. 1 centavo, por exemplo. Lembrando que as transações originadas pela API Pix serão gratuitas até o dia 30/04/2021.
Então depois você pode devolver o que "gastou" para sua conta hehe

# pix
Avatar discord do usuario roguitar88

roguitar88

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://api-pix-h.gerencianet.com.br/oauth/token');
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, true);
$pem=realpath("/etc/certs-gerencianet/olimppiuspix.crt.pem");
if(!$pem || !is_readable($pem)){
die("olimppiuspix.crt.pem is not readable! realpath: \"{$pem}\" - working dir: \"".getcwd()."\" effective user: ".print_r(posix_getpwuid(posix_geteuid()),true));
}
curl_setopt($ch, CURLOPT_SSLCERT, $pem);