Eu acho que você pode simplificar só verificando o tamanho e se inclui caracteres com acentos e disparar uma exceção com isso.
O resto, o programador se vira.
Eu nunca vi um banco usar esse dado, mas por vias das dúvidas, ele tá lá.
Outra coisa: o tipo da chave pix é omitido no payload final. Você usa ele para o que? Validar key
? Ou tem outra utilidade?