Mas essa é uma extensão proprietária da GN. O que padrão prevê é você incorporar no seu código uma biblioteca de EMV e QR-Code para gerar você mesmo a imagem com base no location.
Termos mais procurados:
Termos mais procurados:
Mas essa é uma extensão proprietária da GN. O que padrão prevê é você incorporar no seu código uma biblioteca de EMV e QR-Code para gerar você mesmo a imagem com base no location.
eu vi aqui que eu tenho que gerar o qr-code com o id do location neh... blz!
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?
Segue o exemplo:
Array
(
[calendario] => Array
(
[criacao] => 2022-03-30T21:18:09.000Z
[expiracao] => 20511
)
[txid] => 46816OJw3pou7GTOoyKYPc1OiU1Hn7p
[revisao] => 0
[loc] => Array
(
[id] => 111
[location] => qrcodes-pix.gerencianet.com.br/v2/e8ece7faaf214b5399bdc673095841a0
[tipoCob] => cob
[criacao] => 2022-03-30T21:18:09.000Z
)
[location] => qrcodes-pix.gerencianet.com.br/v2/e8ece7faaf214b5399bdc673095841a0
[status] => ATIVA
[valor] => Array
(
[original] => 85.00
)
[chave] => e59363b2-a467-4f0b-8239-7d32b4894bbd
[solicitacaoPagador] => Provedor Internet
)
Bom dia, <@!719753221832179763>! Tudo bem?
Sim, a Gerencianet disponibiliza um endpoint que já monta e lhe entrega Pix Copia e Cola e a imagem do QrCode em base64, se caso precisar.
Para isso, após ter criado a cobrança dinâmica (veja como fazer em nossa documentação técnica: https://dev.gerencianet.com.br/docs/api-pix-endpoints#section-criar-cobran-a-imediata-sem-txid-), 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:
No meu não consta essas partes
Está parecido com isto a conf. ? O que tem de diferente ?
server {
ssl_client_certificate /etc/pix-certificate/chain-pix-prod.crt;
ssl_verify_client optional;
ssl_verify_depth 3;
location /webhook {
if ($ssl_client_verify != SUCCESS) {
return 403;
}
rewrite ^(.)$ /webhook;
}
}
Esse rewrite ^(.)$ /checkoutPix é desnecessário em boa parte dos setups. E falta repetir os mesmos proxy no location do checkoutPix:
proxy_pass http://localhost:3333/;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
location /webhook {
if ($ssl_client_verify != SUCCESS) {
return 403;
}
rewrite ^(.)$ /webhook;
}
Você chegou a configurar um location?
Para quem estiver com a mesma dificuldade
Cadastro de webhook retornando erro 500 com o nginx.
Sua configuração de servidor está parecida com esta ?
ustilizo curl_setopt_array($curl, array(
CURLOPT_URL => $vrota,
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'],
CURLOPT_SSLCERTPASSWD => "",
CURLOPT_HTTPHEADER => array(
"Authorization: Basic $autorizacao",
"Content-Type: application/json"
),
));
Lembrando que é necessário informar o ID do location retornado no json de quando a cobrança foi criada.
Boa tarde, Celson!
No procedimento de criação é retornado pra você informações da cobrança. Para criar o QrCode / Copia e cola dela, é necessário utilizar esse exemplo: https://github.com/gerencianet/gn-api-sdk-flutter-examples/blob/main/lib/screens/pix/location/pix_generate_qrcode.dart
se a requisição chegou no seu app, aparentemente tá passando pelo location / em vez de ser barrado no /webhook.
não seria o caso de inverter a ordem deles na config do nginx? não me recordo se é relevante a ordem
No exemplo do nginx tem o location, segue: