Ir para conteúdo
  • Cadastre-se

dev botao

Utilizar componente pix num PDV


Ver Solução Respondido por gutopmc,
  • Este tópico foi criado há 240 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Saudações colegas! Estou querendo implementar num cliente a utilização do pix no caixa para quando o mesmo escolher o pagamento em pix, gerar um qrcode e so confirmar o recebimento se o pix entrar na conta. Alguem tem um exemplo de uma sequencia de comandos para fazer isso? Já tenho a chave pix e client id e client secret para fazer os testes! No caso uso o sicredi

Editado por gutopmc
Link para o comentário
Compartilhar em outros sites

Fiz um pagamento pelo qrcode gerado pelo componente e deu certo, mas quando tento consultar os pix por periodo retorna o erro abaixo no log:

ConsultarPixRecebidos( 30/08/2023 00:00:00, 30/08/2023 23:59:59, , , 1, 10 )
PrepararHTTP
Autenticar
LimparHTTP
TransmitirHttp( POST, https://api-pix-h.sicredi.com.br/oauth/token )
ConfigurarHTTP
ConfigurarProxy
ConfigurarTimeOut
ConfigurarHeaders( POST, https://api-pix-h.sicredi.com.br/oauth/token )
  Req.Headers:
Authorization: Basic TVRNd016TTJNVFl3TURBeE1EQTZNREF3TkRvMlJISTpVaWx6S21VMU9TdGFhaWd6SkVwdA==
Accept-Encoding: gzip, compress, deflate

  Req.Body:
grant_type=client_credentials&scope=cob.write%20cob.read%20pix.write%20pix.read
  ResultCode: 500 - 
  Resp.Headers:
POST /oauth/token HTTP/1.0
Host: api-pix-h.sicredi.com.br
Keep-Alive: 300
Connection: keep-alive
User-Agent: Mozilla/4.0 (compatible; Synapse)
Content-Type: application/x-www-form-urlencoded
Content-Length: 79
Authorization: Basic TVRNd016TTJNVFl3TURBeE1EQTZNREF3TkRvMlJISTpVaWx6S21VMU9TdGFhaWd6SkVwdA==
Accept-Encoding: gzip, compress, deflate


Resp.Body:

EACBrPixHttpException: Erro HTTP: 500, Metodo: POST, URL: https://api-pix-h.sicredi.com.br/oauth/token

***************EACBrPixHttpException***************
Erro HTTP: 500, Metodo: POST, URL: https://api-pix-h.sicredi.com.br/oauth/token

Link para o comentário
Compartilhar em outros sites

13 minutos atrás, EliasCesar disse:

Configurou corretamente as credenciais (Client ID / Client Secret), Chave Privada e Certificado?

Em qual aba do demo vc fez a geração do QRCode para pagamento?

Aba qrcode estático. Estou suspeitando que seja o arquivo .key. O Client Id e Client secret tenho certeza que estão certos. Arquivos .cer recebi 3 do cliente. CadeiaCompletaSicredi.cer, cnpjdocliente.cer e webhook-sicredi (5) (1).cer . Estou usando o cadeiacompletasicredi.cer na demo. O arquivo .key tentei usar o que usei para gerar o .csr e na demo não aceitou. Ai digitei a frase que usei na aba gerar chave/csr e salvei como .key para fazer o teste.

Link para o comentário
Compartilhar em outros sites

  • Consultores

O QRCode estático não faz acesso nenhum à API do PSP. Ele só cria uma imagem qrcode com as informações da chave.

Vc NÃO irá utilizar a cadeia completa no demo.

As credenciais e arquivos necessários são:

  • Client ID
  • Client Secret
  • Chave Privada (Precisa ser EXATAMENTE o mesmo arquivo usado pra gerar o CSR);
  • Certificado (No seu caso aparentemente é o arquivo CNPJ.cer)
Consultor SAC ACBr

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

 
Link para o comentário
Compartilhar em outros sites

47 minutos atrás, EliasCesar disse:

O QRCode estático não faz acesso nenhum à API do PSP. Ele só cria uma imagem qrcode com as informações da chave.

Vc NÃO irá utilizar a cadeia completa no demo.

As credenciais e arquivos necessários são:

  • Client ID
  • Client Secret
  • Chave Privada (Precisa ser EXATAMENTE o mesmo arquivo usado pra gerar o CSR);
  • Certificado (No seu caso aparentemente é o arquivo CNPJ.cer)

image.thumb.png.48785a37e6708dc7d3822ab5a23084a2.png

Quando escolho o arquivo .key que usei para gerar o csr na demo ocorre o erro acima!

Link para o comentário
Compartilhar em outros sites

50 minutos atrás, EliasCesar disse:

Sua chave privada não está com o conteúdo criptografado?

Ela precisa estar nesse formato:

image.png

 

O arquivo .key gerei no openssl com o comando fornecido pelo sicredi, acredito que ele é gerado num formato não legível diferente do que vc enviou. No caso, acredito, teria que converter ele para o formato usado na demo. Qual o comando ou programa que faz isso?

Editado por gutopmc
Link para o comentário
Compartilhar em outros sites

Outra dúvida, o txId tem que ter um tamanho especifico no sicredi? tentei criar uma cobranca na aba cob e retornou erro do tamanho invalido do TxId.

 

Resp.Body:
{"type":"https://pix.bcb.gov.br/api/v2/error/CobOperacaoInvalida","title":"Cobrança inválida.","status":400,"detail":"A requisição que busca alterar ou criar uma cobrança para pagamento imediato não respeita o schema ou está semanticamente errada.","correlationId":"56f9e72c-305537","violacoes":[{"razao":"TXID Com o formato ou tamanho incorreto.","propriedade":"cobTxidPut.txid"}]}
ChamarEventoQuandoReceberRespostaEndPoint( /cob, PUT )
  ResultCode:400
  RespostaHttp: {"type":"https://pix.bcb.gov.br/api/v2/error/CobOperacaoInvalida","title":"Cobrança inválida.","status":400,"detail":"A requisição que busca alterar ou criar uma cobrança para pagamento imediato não respeita o schema ou está semanticamente errada.","correlationId":"56f9e72c-305537","violacoes":[{"razao":"TXID Com o formato ou tamanho incorreto.","propriedade":"cobTxidPut.txid"}]}
TratarRetornoComErro( 400 )
 

Editado por gutopmc
Link para o comentário
Compartilhar em outros sites

  • Este tópico foi criado há 240 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • 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.