O que causa a Rejeição 243
⚠ Causa do erro
A Rejeição 243 ocorre quando o XML enviado à SEFAZ possui erros de sintaxe que impedem sua leitura (parsing). Os erros mais comuns são:
- Tags não fechadas: uma tag aberta sem a correspondente tag de fechamento.
- Caracteres especiais não codificados: uso de
&,<,>sem a devida codificação em entidades XML. - Encoding incorreto: declaração de UTF-8 mas com caracteres em outro encoding (ISO-8859-1, por exemplo).
- Tags aninhadas incorretamente: tags que se cruzam ao invés de se aninhar corretamente.
Tags XML envolvidas
Como esta rejeição se refere à estrutura geral do XML, pode ocorrer em qualquer parte:
| Elemento | Descrição |
|---|---|
<?xml?> | Declaração XML (encoding, versão) |
<NFe> | Elemento raiz da NF-e |
<infNFe> | Informações da NF-e |
<xNome> | Campos de texto (frequentes com caracteres especiais) |
<xEnder> | Endereço (frequente fonte de caracteres inválidos) |
Exemplo prático
Um XML com o caractere & não codificado no nome do emitente:
<emit>
<xNome>João & Maria Ltda</xNome> <!-- & não codificado! -->
<CNPJ>12345678000190</CNPJ>
</emit>
Como resolver passo a passo
✔ Solução
- Valide o XML com um parser: use uma ferramenta de validação XML para localizar exatamente a linha e coluna do erro.
- Corrija caracteres especiais: substitua
&por&,<por<,>por>. - Verifique o encoding: garanta que o encoding declarado na tag
<?xml?>corresponde ao encoding real do arquivo. - Feche todas as tags: certifique-se de que toda tag aberta possui seu fechamento correspondente.
- Reenvie o documento após as correções.
Correção do exemplo acima — codificando o caractere especial:
<emit>
<xNome>João & Maria Ltda</xNome> <!-- & codificado como & -->
<CNPJ>12345678000190</CNPJ>
</emit>
Como prevenir
🛡 Prevenção
- Sanitize dados de entrada: trate caracteres especiais nos campos de texto antes de montar o XML.
- Use bibliotecas XML confiáveis: evite montar o XML por concatenação de strings — use bibliotecas que fazem o escape automaticamente.
- Mantenha o encoding consistente: use UTF-8 em todo o fluxo, desde o banco de dados até a geração do XML.
- Valide antes de enviar: o Gálago faz validação de estrutura XML antes da transmissão.
Referência técnica
Documentação oficial
MOC 7.0 — Manual de Orientação do Contribuinte:
confaz.fazenda.gov.br/legislacao/arquivo-manuais/moc7-visao-geral.pdf
W3C XML Specification:
w3.org/TR/xml/
Perguntas frequentes
Quais caracteres especiais precisam ser codificados no XML?
Os cinco caracteres que devem ser codificados como entidades XML são: & (&), < (<), > (>), " (") e ' (').
Meu sistema gera o XML automaticamente. Por que recebo 243?
Provavelmente o sistema está fazendo concatenação de strings sem tratar caracteres especiais nos dados cadastrais. Informe o suporte para que utilizem uma biblioteca XML adequada.
Qual a diferença entre Rejeição 242 e 243?
A 242 indica um elemento no lugar errado (estrutura lógica), enquanto a 243 indica que o XML não é sequer um documento XML válido (erro de sintaxe).
Cansado de lidar com rejeições?
O Gálago valida os dados antes de transmitir, evitando a maioria das rejeições. Experimente grátis por 21 dias.
Teste Grátis