Rejeição 225: Falha no Schema XML do lote de NFe
Descrição oficial da SEFAZ: Falha no Schema XML do lote de NFe
O que significa
O XML do lote não passou na validação do schema (XSD) da SEFAZ. A nota nem chegou a ser analisada quanto ao conteúdo fiscal: ela foi barrada na conferência de estrutura — tags, ordem, tamanho e formato dos campos.
Por que acontece
A regra é objetiva: o XML precisa obedecer exatamente ao XSD da versão declarada. A causa concreta depende de qual campo saiu errado — pode ser tag fora da sequência prevista, campo obrigatório ausente, valor com mais casas decimais ou mais caracteres que o permitido, caractere inválido no texto, ou campo vazio quando o schema não aceita vazio.
Como resolver
Pegue a mensagem completa do retorno: a SEFAZ costuma indicar o elemento que falhou, e é por aí que se começa. Valide o XML rejeitado contra o XSD oficial da versão que você declarou — isso aponta o campo exato. Corrija a origem do dado (o cadastro ou o campo do pedido que gerou o valor inválido), gere e assine o XML de novo e retransmita. Não tente ajustar o XML na mão, porque a assinatura quebra.
Como evitar
Valide o XML contra o XSD localmente antes de transmitir, e trate na entrada os dados que costumam sujar o arquivo (texto com caractere de controle, campos numéricos com máscara).