Ir para conteúdo
  • Cadastre-se

dev botao

Erro PIX - PIXCD_GerarQRCodeEstatico


Ver Solução Respondido por EliasCesar,

Recommended Posts

  • Membros Pro
Postado

Boa tarde.

O que mais devo passar para o PIXCD_GerarQRCodeEstatico além do "txId" e "valor"?

Gerei um método onde a sequencia é (exibo abaixo apenas os mais importantes):
ACBrPixLib.
INSTANCE.PIXCD_Inicializar(eArqConfig, eChaveCrypt);
ACBrPixLib.
INSTANCE.PIXCD_ConsultarCobrancaImediata(toUTF8(ATxId), ARevisao, buffer, bufferLen);

ACBrPixLib.INSTANCE.PIXCD_GerarQRCodeEstatico(AValor, toUTF8(AinfoAdicional), toUTF8(ATxID), bufferbufferLen);

Os dois primeiros comandos funcionam normalmente. No comando de gerar qrCode eu passo apenas o valor e o txId. Mas surge uma exception dizendo que:
java.lang.Exception:
Nome do Recebedor não informado
Cidade do Recebedor não informada

Como passo estes valores para conseguir recuperar o qrCode desta consulta?

Att

  • Membros Pro
Postado
7 minutos atrás, Daniel InfoCotidiano disse:

Boa tarde !
Na configuração do pix, olhe minha tela de exemplo:
Infomo o nome do recebedor e a cidade, qual PSP vou utilizar.. o ambiente.. etc
image.png

Ahhh perfeito. Então eu devo informar sim estes dois dados.
Como passo isto via .ini? Tem algum GRUPO específico para estes dois dados? E qual o nome correto de cada atributo no ini?

  • Consultores
Postado

            acbrPIXCD.configGravarValor(ACBrSessao.PIXCD, "CidadeRecebedor", txtCidadeRecebedor.getText());
            acbrPIXCD.configGravarValor(ACBrSessao.PIXCD, "NomeRecebedor", txtNomeRecebedor.getText());
            acbrPIXCD.configGravarValor(ACBrSessao.PIXCD, "UFRecebedor", txtUFRecebedor.getText());

Se precisar de mais informações, tem aqui no exemplo:
https://svn.code.sf.net/p/acbr/code/trunk2/Projetos/ACBrLib/Demos/Java/PIXCD/

https://acbr.sourceforge.io/ACBrLib/ConfiguracoesdaBiblioteca23.html

Consultor SAC ACBr

Daniel de Morais (Infocotidiano)
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.  Discord

  • Membros Pro
Postado
4 minutos atrás, Daniel InfoCotidiano disse:

            acbrPIXCD.configGravarValor(ACBrSessao.PIXCD, "CidadeRecebedor", txtCidadeRecebedor.getText());
            acbrPIXCD.configGravarValor(ACBrSessao.PIXCD, "NomeRecebedor", txtNomeRecebedor.getText());
            acbrPIXCD.configGravarValor(ACBrSessao.PIXCD, "UFRecebedor", txtUFRecebedor.getText());

Se precisar de mais informações, tem aqui no exemplo:
https://svn.code.sf.net/p/acbr/code/trunk2/Projetos/ACBrLib/Demos/Java/PIXCD/

https://acbr.sourceforge.io/ACBrLib/ConfiguracoesdaBiblioteca23.html

Muito obrigado pela ajuda e agilidade Daniel.

  • Membros Pro
Postado
41 minutos atrás, Daniel InfoCotidiano disse:

            acbrPIXCD.configGravarValor(ACBrSessao.PIXCD, "CidadeRecebedor", txtCidadeRecebedor.getText());
            acbrPIXCD.configGravarValor(ACBrSessao.PIXCD, "NomeRecebedor", txtNomeRecebedor.getText());
            acbrPIXCD.configGravarValor(ACBrSessao.PIXCD, "UFRecebedor", txtUFRecebedor.getText());

Se precisar de mais informações, tem aqui no exemplo:
https://svn.code.sf.net/p/acbr/code/trunk2/Projetos/ACBrLib/Demos/Java/PIXCD/

https://acbr.sourceforge.io/ACBrLib/ConfiguracoesdaBiblioteca23.html

Apenas mais uma pergunta:
Ao tentar passar meu txId, surge uma mensagem de erro dizendo que meu txId não pode ter mais de 25 caracteres.

Mas o Cielo aceita. Quando gero, inclusive sem fornecer txId, onde eles me retornam 1 txId ele vem acima de 25.

Este que envio abaixo acabou de ser gerado por eles: 

CIELO202409110000000000000000000173
  • Membros Pro
Postado
25 minutos atrás, Messias Bittencourt disse:

Apenas mais uma pergunta:
Ao tentar passar meu txId, surge uma mensagem de erro dizendo que meu txId não pode ter mais de 25 caracteres.

Mas o Cielo aceita. Quando gero, inclusive sem fornecer txId, onde eles me retornam 1 txId ele vem acima de 25.

Este que envio abaixo acabou de ser gerado por eles: 

CIELO202409110000000000000000000173

E quando eu tento gerar um txId com 25 ou menos me é retornado um erro dizendo:
"detail":"A requisição que busca alterar ou criar uma cobrança para pagamento imediato não respeita o _schema_ ou está semanticamente errada.","violations":[{"reason":"O parâmetro txid informado é inválido. Informe um txid com no mínimo 26 e no máximo 35 caracteres.","property":"txid"

Ou seja: na hora de criar tenho de informar txId com 26 ou mais. Mas na hora do qrCode ele diz que tem de ser menos ou igual à 25 caracteres.
Como proceder?

  • 2 semanas depois ...
  • Consultores
  • Solution
Postado
Em 11/09/2024 at 18:41, Messias Bittencourt disse:

Ou seja: na hora de criar tenho de informar txId com 26 ou mais. Mas na hora do qrCode ele diz que tem de ser menos ou igual à 25 caracteres.
Como proceder?

Olá @Messias Bittencourt

Creio que vc está confundindo os tipos de QRCode. 

- QRCode ESTÁTICO: Deve possuir um tamanho ATÉ 25 caracteres
Esse tipo de qrcode não faz acesso nenhum à API. Ele apenas possui a chave PIX e o valor(não obrigatório) no QRCode. 

- QRCode DINÂMICO: Deve possuir um tamanho entre 26 a 35 caracteres.
Esse qrcode faz acesso à API de algum PSP e permite apenas um pagamento.

Nesse vídeo detalhamos melhor a explicação:
https://www.youtube.com/watch?v=VRydAYu7tXI&t=1s

  • Curtir 1
Consultor SAC ACBr

Elias César Vieira
Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil
Assine o
SAC

 
  • Membros Pro
Postado
Em 23/09/2024 at 17:01, EliasCesar disse:

Olá @Messias Bittencourt

Creio que vc está confundindo os tipos de QRCode. 

- QRCode ESTÁTICO: Deve possuir um tamanho ATÉ 25 caracteres
Esse tipo de qrcode não faz acesso nenhum à API. Ele apenas possui a chave PIX e o valor(não obrigatório) no QRCode. 

- QRCode DINÂMICO: Deve possuir um tamanho entre 26 a 35 caracteres.
Esse qrcode faz acesso à API de algum PSP e permite apenas um pagamento.

Nesse vídeo detalhamos melhor a explicação:
https://www.youtube.com/watch?v=VRydAYu7tXI&t=1s

Muito obrigado pelos esclarecimentos @EliasCesar.

Realmente eu estava achando que era a geração do qrCode para pagamento.

Att

Visitante
Este tópico está agora fechado para novas respostas
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.

The popup will be closed in 10 segundos...
The popup will be closed in 10 segundos...