Voltar para base de conhecimento

Erro E1226: Estrutura descompactada mal formada

Atualizado há cerca de 22 horas1 visualizações0 acharam útil
NFSeDPSTransmissaoXMLErroFiscal

O pacote abriu, mas o que havia dentro não é um XML válido.

O Erro E1226 acontece quando o conteúdo foi decodificado e descompactado, mas o que havia dentro não é um XML bem formado.

Abrir NFS-e

Por que acontece o Erro E1226

A DPS não trafega como XML puro. Antes de sair, ela passa por duas etapas:

EtapaO que acontece
1. CompressãoO XML é comprimido em GZip, para reduzir o tamanho
2. CodificaçãoO resultado é convertido para base64, para caber num campo de texto

Do outro lado, o Sistema Nacional desfaz o caminho: decodifica o base64, descomprime o GZip e só então lê o XML. Um erro em qualquer dessas etapas barra a nota antes de o conteúdo dela ser avaliado — não há nada de errado com o que você declarou, apenas com o pacote que o transportou.

Este erro vem depois do anterior: o pacote abriu, e o problema está no conteúdo. Bem formado é um conceito estrutural, anterior a qualquer regra fiscal — significa que o XML obedece à sintaxe da linguagem.

ProblemaExemplo
Tag aberta e não fechada<vServ>100.00
Aninhamento cruzado<a><b></a></b>
Caractere especial não escapado& solto no meio do texto
Conteúdo antes da declaração XMLUm espaço ou um BOM no início

As causas mais comuns:

Caractere &, < ou > no meio de um texto — num nome de empresa como "Silva & Filhos", por exemplo — sem ser escapado.

XML montado por concatenação de strings, sem uma biblioteca que garanta a estrutura.

Conteúdo truncado por limite de tamanho, cortando o documento no meio.

BOM ou espaço antes da declaração <?xml.

No Berga

DFe › NFSe — a montagem do XML é responsabilidade do sistema.

Deixa que o Berga resolve gerando o XML de forma estruturada: caracteres especiais em razão social e endereço são tratados na origem. "Silva & Filhos" não quebra a nota. Conheça o Berga.

Como resolver o Erro E1226

  1. 1
    Valide o XML descompactado num validador de sintaxe antes de enviar.
  2. 2
    Confira se há &, < ou > não escapados em nomes e descrições.
  3. 3
    Confirme que não há espaço nem BOM antes de <?xml.
  4. 4
    Reenvie.

Como evitar o Erro E1226

Não monte XML por concatenação de texto. Caractere especial em nome de cliente é questão de tempo, e é ele que quebra a estrutura.

Se o Erro E1226 continuar

Erros vizinhos: falha na decodificação base64, prefixo de namespace não permitido e falha no esquema XML.

Persistindo, abra um chamado informando o horário do envio.

Referência: Anexo I do leiaute da DPS e da NFS-e (SEFIN/ADN), Sistema Nacional NFS-e.

Este artigo foi útil?