renatomb / php_qrcode_pix

Implementação da geração de QRCode do Pix em PHP
https://dinheiro.tech/qr-code-pix
Creative Commons Zero v1.0 Universal
197 stars 72 forks source link

Correção CRC gerado com 3 comprimento #10

Closed lojadev5 closed 3 years ago

lojadev5 commented 3 years ago

Apenas deixar minha contribuição e meu agradecimento :D Me deparei com uma situação em que o CRC estava gerando uma hash de 3 de comprimento, assim dando inválido em todos os bancos, já que implicitamente está sendo colocando como 4 de comprimento na linha 90 do arquivo "exemplo.php"

A solução seria ou implementar para salvar numa variável o resultado da função "crcChecksum($str)" ou simplesmente indo na linha 94 do arquivo "funcoes_pix.php", e colocando um str_pad para gerar sempre com comprimento 4

Substituindo: return $hex;

Por: return str_pad($hex,4,'0',STR_PAD_LEFT);

Espero ter ajudado! Esta é uma ótima base para implementação Pix QR, fica meu agradecimento também!

renatomb commented 3 years ago

@lojadev5 Teria como passar um exemplo de um brcode onde acontece esse crc com 3 dígitos pra eu verificar?

lojadev5 commented 3 years ago

@lojadev5 Teria como passar um exemplo de um brcode onde acontece esse crc com 3 dígitos pra eu verificar?

Não consigo postar aqui pra ti porque são dados de um cliente meu, mas o CRC gerado foi o 0xFAA, por uma outra vez também foi gerado outro que não me lembro agora. Vou ver se consigo te mandar no privado.