Histórico de mensagens sobre js

EXIBINDO CONVERSAS RECENTES:

Texto: js
# pix
Avatar discord do usuario guilherme_efi

guilherme_efi

Boa tarde, @huggler6815! Tudo bem?
A Gerencianet disponibiliza um endpoint que já monta e lhe entrega Pix Copia e Cola e a imagem do QrCode em base64.

Para isso, após ter criado a cobrança dinâmica, basta consumir o endpoint GET/v2/loc/:id/qrcode passando o id do loc como parâmetro (https://dev.gerencianet.com.br/docs/api-pix-endpoints#section-gerar-qrcode-de-um-location) quer você terá o seguinte retorno:

json
{
"qrcode": "00020126001BR.GOV.BCB.PIX2566qrcodes-pix.ger...",
"imagemQrcode": "data:image/png;base64,iVBORw0KGgoAAQDS... "
}
Deste retorno, o parâmetro qrcode é o pix copia e cola que pode ser implementado em seus sites.

# pix
Avatar discord do usuario huggler6815

huggler6815

bom dia @joao_efi
como que eu apresento a imagem do qr-code gerado para o cliente final?
exmplo.... eu recebo esse JSON da resposta do pixCreateCharge
{"calendario":{"criacao":"2022-04-08T14:52:34.669Z","expiracao":3600},"txid":"5bd2ac95166f4d678ae137ba3d8271f3","revisao":0,"loc":{"id":3,"location":"qrcodes-pix.gerencianet.com.br/v2/7b1f92e5e06449088ec22fc019b4cdca","tipoCob":"cob","criacao":"2022-04-08T14:52:34.691Z"},"location":"qrcodes-pix.gerencianet.com.br/v2/7b1f92e5e06449088ec22fc019b4cdca","status":"ATIVA","devedor":{"cpf":"32604226847","nome":"felipe huggler luz"},"valor":{"original":"1.99"},"chave":"231240f6-7b8e-4b46-8a67-82997fd7eb22","solicitacaoPagador":"Informe o número ou identificador do pedido. - [email protected]"}
vi que tem o location, que vem uma url
qrcodes-pix.gerencianet.com.br/v2/7b1f92e5e06449088ec22fc019b4cdca
tem que ter algum tratamento?

# cartões
Avatar discord do usuario mrcweb6273

mrcweb6273

Ver Respostas

Boa noite. Gostaria de uma ajuda básica. Estou fazendo um teste no exemplo PHP que vocês disponibilizam. Eu gostaria de usar o campo custom_id, criei o campo no formulário, mandei com o id 'custom_id', inseri as linhas var 'custom_id = $("#custom_id").val();' e 'custom_id: custom_id,' no arquivo script-cartao.js e a linha '$metadata = [
'custom_id' => $_POST["custom_id"],
'notification_url' => 'https://rededama.prototipo.abc.br/gn_retorno.php'
];' no arquivo pagar-cartao.php. Não deveria voltar a informação?

# assinaturas
Avatar discord do usuario joao_efi

joao_efi

Boa noite @felipessouza917722 tudo bem? 🙂
Realizei um teste em produção aqui, e obtive sucesso!
No express defini da seguinte forma:

js
app.post("/notification", (request, response) => {
console.log("body");
console.log(request.body);
response.status(200).end();
});
E tive o retorno abaixo:
imagem enviada na mensagem pelo usuario joao_efi

# assinaturas
Avatar discord do usuario felipessouza917722

felipessouza917722

Continuo com problemas para receber as notificações, talvez seja algo específico com nodejs pois apesar de receber as requisições com sucesso o conteúdo continua não sendo entregue. Tanto o body quanto o params aparecem vazios em meu log. Caso alguém possa ajudar a entender o que pode estar acontecendo, apreciaria muito

# pix
Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

E mesmo se não tivesse o SDK, era só ir direto no JSON e HTTPS, no caso da GN.

# pix
Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

No nó de cima que contém o endToEndId não possui o parâmetro status.
Somente por constar o endToEndId significa que a transação foi efetuada, pois se o pagamento do pix não for efetuado, não irá acionar o webhook. Segue o exemplo:

json
// Pix recebido
{
"pix": [
{
"endToEndId": "E1803615022211340s08793XPJ",
"txid": "fc9a43k6ff384ryP5f41719",
"chave": "2c3c7441-b91e-4982-3c25-6105581e18ae",
"valor": "0.01",
"horario": "2020-12-21T13:40:34.000Z",
"infoPagador": "pagando o pix"
}
]
}

Já no array devolucoes possui o status pois ele pode retornar "DEVOLVIDO" ou "NAO_REALIZADO"

# pix
Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

Boa tarde, <@!368831711750127616>!
Será enviado para seu webhook um JSON com a informação do Pix que foi pago juntamente com do array devolucoes. Salientando que pode haver uma única devolução integral, ou várias parciais até completar 100% do valor (https://dev.gerencianet.com.br/docs/api-pix-endpoints#section-recebendo-callbacks). Segue um exemplo:

json
// Devolução
{
"pix": [
{
"endToEndId": "E12345678202009091221syhgfgufg",
"txid": "c3e0e7a4e7f1469a9f782d3d4999343c",
"chave": "2c3c7441-b91e-4982-3c25-6105581e18ae",
"valor": "110.00",
"horario": "2020-09-09T20:15:00.358Z",
"infoPagador": "0123456789",
"devolucoes":[
{
"id": "IdentificadorDevolucao001",
"rtrId": "D12345678202009091221abcdf098765",
"valor": "110.00",
"horario": {
"solicitacao": "2020-09-09T20:15:00.358Z"
},
"status": "DEVOLVIDO"
}
]
}
]
}

# pix
Avatar discord do usuario igor_efi

igor_efi

Ver Respostas

Segue o exemplo:


$curl = curl_init();

curl_setopt_array($curl, array(
CURLOPT_URL => 'https://api-pix-h.gerencianet.com.br/oauth/token',
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_HTTPHEADER => array(
'x-client-cert-pem: {{X-Certificate-Pem}}',
'Authorization: Basic (client id e secret em base64)',
'Content-Type: application/json'
),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;

# pix
Avatar discord do usuario rozer9580

rozer9580

x-amzn-requestid: 9367a7d9-a47b-4002-a7d2-9f5344a21e93
content-length: 70
x-amzn-remapped-content-length: 70
x-amzn-remapped-connection: keep-alive
x-request-id: ab5e47a4-28f2-4e94-84d0-9e7a8a1c456b
x-amz-apigw-id: P59iyGQhoAMFxFw=
vary: Origin
etag: W/"46-XAD/Fng+Qq6nuJUwSmDmoLFq8bc"
x-amzn-remapped-date: Fri, 01 Apr 2022 14:43:55 GMT
access-control-allow-credentials: true
content-type: application/json; charset=utf-8
date: Fri, 01 Apr 2022 14:43:55 GMT

{"nome":"erro_interno_servidor","mensagem":"Erro interno do servidor"}ArrayCurl info:

# pix
Avatar discord do usuario rozer9580

rozer9580

function gerenciaPay(){

$url = "https://api-pix-h.gerencianet.com.br/oauth/token";
try{
$curl = curl_init($url);
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, true);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, true);
curl_setopt($curl, CURLOPT_HEADER, 1);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
curl_setopt($curl, CURLOPT_USERPWD, base64_encode("Client_Id_" . ":" . "Client_Secret_") );
curl_setopt($curl, CURLOPT_HTTPHEADER, array('Content-Type: application/json,application/octet-stream'));
curl_setopt($curl, CURLOPT_SSLCERTTYPE, "P12");
curl_setopt($curl, CURLOPT_SSLCERT, 'homologacao-
');
// curl_setopt($curl, CURLOPT_SSLCERTPASSWD, 'senha do certificado');
// curl_setopt($curl, CURLOPT_SSLKEYPASSWD, 'senha do certificado');

$resp = curl_exec($curl);

# pix
Avatar discord do usuario marcelo_efi

marcelo_efi

Bom dia <@!749415525175656458> , tudo bem ? Sim é possível criar QrCodes dinâmicos através da API, com valores a partir de R$0,01. Com relação ao consumo através do nodejs, não só é possível, como nós também já possuímos uma SDK desenvolvida para ele, segue o link:https://github.com/gerencianet/gn-api-sdk-node.
Nossa documentação:https://dev.gerencianet.com.br/docs.

# pix
Avatar discord do usuario 54694

54694

Essa api fornece QR Code com X valor? E com ela tem como utilizar na linguagem nodejs? Quero criar um bot de pagamentos.

# pix
Avatar discord do usuario _brunofelipe

_brunofelipe

Ver Respostas

Boa noite pessoal
Estou com problemas ao gerar pix em produção, quando publico em meu servidor retorna a seguinte mensagem, quando gero o pix :
Error reading JObject from JsonReader. Path ''''
Executando exatamente o mesmo código localmente funciona normalmente, alguém pode me ajudar?!
Estou usando o SDK em .Net.Core

# pix
Avatar discord do usuario rubenskuhl

rubenskuhl

Pessoal, um adendo a uma sugestão que já dei neste canal: mesmo colocando um hostname aleatório para receber o webhook, como dajsdasjkda.exemplo.com.br, o requisito de Certificate Transparency que as CAs tem que obedecer acaba fazendo vazar esse hostname quando se usa um proxy reverso como Cloudflare. Assim, o melhor mesmo é registrar outro domínio não correlacionável com o domínio principal (CPF/CNPJ diferente, e-mail diferente, ID diferente etc.) e esse domínio ser usado para o webhook.

# pix
Avatar discord do usuario hubner7903

hubner7903

Ver Respostas

parseJwt(token) {
var base64Url = token.split('.')[1];
var base64 = base64Url.replace(/-/g, '+').replace(/_/g, '/');
var jsonPayload = decodeURIComponent(atob(base64).split('').map(function (c) {
return '%' + ('00' + c.charCodeAt(0).toString(16)).slice(-2);
}).join(''));

return JSON.parse(jsonPayload);
}

# sugestões
Avatar discord do usuario pedrohenriquebufulin

pedrohenriquebufulin

Ver Respostas

Pessoal, gostaria de sugerir alguma documentação sobre testes automatizados.
Eu gostaria de mockar as chamadas de api da sdk nodejs da gerencianet, para conseguirmos escrever retornos de funções e validações mais facilmente.
Existe algum tutorial fazendo isso?
Estou suando o framework nestjs, mas algum mock provider convencional também serviria

# pix
Avatar discord do usuario hubner7903

hubner7903

let https = require('https');
let agent = new https.Agent({
pfx: certificado,
passphrase: ''
})

var axios = require('axios');
var data = JSON.stringify({ grant_type: 'client_credentials'});

var config = {
method: 'post',
url: 'https://api-pix-h.gerencianet.com.br/oauth/token',
headers: {
'Authorization':
Basic ${base64},
'Content-Type': 'application/json',

},
httpsAgent: agent,
data: data
};

try {
const response = await axios.request(config);
return response.data
} catch (error) {
console.error(error);
}