Rejeição 517: Falha no schema XML — inexiste atributo versao na tag raiz da mensagem
A mensagem não declara a versão do leiaute. Veja por que ela vem primeiro.
A Rejeição 517 acontece quando a marcação raiz do XML não traz o atributo de versão.
Por que acontece a Rejeição 517
Antes de ler o conteúdo, a SEFAZ precisa saber qual leiaute interpretar. É o atributo de versão, declarado na primeira marcação do arquivo, que informa isso.
Sem ele, a mensagem não pode ser validada contra nenhum schema — e por isso a recusa acontece antes de qualquer análise do conteúdo fiscal.
É a mesma lógica da versão do QR Code: declarar como ler vem antes de ler.
As causas mais comuns:
Montagem própria do XML. É a causa principal. O sistema constrói o arquivo por texto e esquece o atributo.
Envelope construído manualmente. A estrutura externa da mensagem foi montada sem o atributo.
Arquivo processado por transformação. Uma conversão removeu atributos da raiz.
Essa rejeição pertence ao mundo das integrações e da geração de XML fora do sistema.
Como resolver a Rejeição 517
- 1Identifique quem gerou o XML. Sendo emissão pelo próprio sistema, o caso é atípico e deve ser reportado.
- 2Sendo integração, a origem precisa declarar o atributo de versão na marcação raiz, com a versão vigente do leiaute.
- 3Reenvie.
Como evitar a Rejeição 517
Use biblioteca que implemente o perfil da NF-e. A montagem por concatenação de texto é onde esses detalhes se perdem.
Se a Rejeição 517 continuar
Rejeições vizinhas da mesma família: tag raiz ausente, e as versões dessas duas para o lote de NF-e — que têm códigos próprios.
Há também as que tratam de uso de prefixo de namespace, namespace fora do padrão, codificação diferente de UTF-8 e caracteres de edição.
Todas indicam problema na geração do arquivo, não no conteúdo fiscal.
Persistindo, abra um chamado informando o serviço acionado e qual sistema gerou o XML.
Referência: MOC 7.0 — Anexo I, regra de validação D01b.