Encontrei um problema na parte onde gera o CRC16 no final do pix copia e cola, identifiquei que se o CRC começar com um 0 a esquerda, ele simplesmente ignora esse zero, retornando um CRC de 3 ou menos caracteres, causando erros no pix gerado no final.
Eu trago uma solução bem simples para esse problema adicionando o z.fill(4) no final do retorno do get_crc16.
Pix.py (linha 118)
return hex(checksum)[2:].upper()
return hex(checksum)[2:].upper().zfill(4)

Encontrei um problema na parte onde gera o CRC16 no final do pix copia e cola, identifiquei que se o CRC começar com um 0 a esquerda, ele simplesmente ignora esse zero, retornando um CRC de 3 ou menos caracteres, causando erros no pix gerado no final.
Eu trago uma solução bem simples para esse problema adicionando o
z.fill(4)no final do retorno do get_crc16.Pix.py (linha 118)