Pular para o conteúdo
Fiscal ProBiblioteca
Rejeição 402 · Regra D03

Rejeição 402: XML de dados com codificação diferente de UTF-8

Revisão editorial em 16 de out. de 2026. Confira as versões e condições das regras nas fontes do artigo.

A rejeição 402, regra D03, trata da codificação da área de dados XML. O padrão fiscal exige UTF-8. Escrever UTF-8 na declaração não converte, sozinho, os bytes que o aplicativo efetivamente transmitiu.

Nesta página:

Como conferir a codificação efetiva?

Compare a declaração XML, os bytes produzidos pelo serializador e a leitura desses bytes como UTF-8. A configuração de gravação ou do cliente de comunicação pode converter o conteúdo depois da validação local. Mantenha identificada a etapa em que ocorre a diferença.

D03 é obrigatória. O MOC exige o padrão UTF-8 e orienta uma única declaração XML no documento. Quando o lote contém outros documentos, não se devem concatenar declarações internas como se cada nota fosse um arquivo independente.

Fontes: MOC Anexo I, regra D03.

Exemplo: acentos alterados na passagem pelo arquivo

Em um cenário hipotético, o gerador trabalha corretamente em memória, mas a rotina de gravação usa outra codificação. O texto com acentos chega com bytes incompatíveis com a declaração. Trocar somente o rótulo da declaração ou eliminar os acentos não preserva o conteúdo real.

Corrija a codificação no ponto de gravação ou transmissão responsável. Compare o texto de origem com o texto lido do arquivo final em UTF-8. Se os dados já foram corrompidos antes dessa etapa, recupere a origem legítima em vez de substituir caracteres por aproximação.

Fontes: MOC Anexo I, regra D03.

A conversão pode afetar a assinatura?

Sim, quando altera o conteúdo ou a representação relevante para sua verificação. A assinatura deve ser gerada e conferida sobre a mensagem final conforme o padrão. Não converta ou remende manualmente um arquivo já assinado para tentar resolver D03.

Faça o ajuste no fluxo de geração, regenere e valide sintaxe, XSD e assinatura. Um editor que abre o arquivo sem erro pode estar escolhendo automaticamente outra codificação; isso não prova que os bytes atendem ao contrato fiscal.

Fontes: MOC Anexo I, regra D03.

402, 243 e 225 exigem a mesma correção?

Não. A 402 identifica codificação; a 243, XML malformado; a 225, schema do lote de autorização. Problemas de codificação podem impedir outras verificações, mas cada camada tem evidência própria.

Resposta síncrona e tipo de evento são verificações distintas da codificação. Identifique qual etapa produziu o retorno recebido. Confirme o resultado fiscal de tentativas incertas antes de nova ação; a correção de UTF-8 não representa autorização.

Fontes: MOC Anexo I, regra D03.

Limite do exemplo e preservação dos dados

O diagnóstico depende dos bytes originais protegidos, que uma renderização textual não preserva integralmente. O exemplo descreve a conversão sem fabricar XML fiscal ou assinatura. A conferência deve preservar o original e ocorrer em ambiente protegido; não publique certificado, senha, chave privada ou dados fiscais de clientes.

Fontes oficiais