Erro E1228: Uso de prefixo de namespace não permitido na área de dados descompactada
O XML precisa vir sem prefixos como ns1: nas tags.
O Erro E1228 acontece quando o XML enviado usa prefixos de namespace nas tags e o Sistema Nacional não os aceita.
Por que acontece o Erro E1228
Um namespace é o que evita conflito entre tags de vocabulários diferentes num mesmo XML. Ele pode ser declarado de duas formas:
| Forma | Como fica |
|---|---|
| Padrão, sem prefixo | <DPS xmlns="http://www.sped.fazenda.gov.br/nfse"> |
| Com prefixo | <ns1:DPS xmlns:ns1="http://www.sped.fazenda.gov.br/nfse"> |
As duas são tecnicamente equivalentes e válidas em XML. Mas o Sistema Nacional exige a primeira: namespace padrão, sem prefixo em tag nenhuma.
A razão é a assinatura digital. O cálculo do resumo é feito sobre a forma canônica do documento, e prefixos diferentes produzem bytes diferentes para o mesmo conteúdo. Fixar uma forma única elimina uma classe inteira de divergências.
A causa é quase sempre a biblioteca. Ferramentas de geração de XML e clientes SOAP costumam acrescentar prefixos como ns1:, soap: ou tns: automaticamente, sem que o desenvolvedor peça.
As outras causas comuns:
Cliente SOAP gerado a partir de um WSDL, que prefixa tudo por padrão.
Biblioteca de serialização com configuração de namespace ativa.
XML montado a partir de um modelo copiado de outro documento fiscal.
No Berga
DFe › NFSe — a geração do XML é responsabilidade do sistema.
Deixa que o Berga resolve gerando o XML no formato exato que a norma pede, sem prefixos. É o tipo de detalhe que só aparece quando a nota é recusada, e que não deveria ocupar o seu tempo. Conheça o Berga.
Como resolver o Erro E1228
- 1Confira o XML gerado e procure por prefixos como
ns1:,soap:outns:. - 2Configure a biblioteca para usar namespace padrão, sem prefixo.
- 3Confirme que a assinatura foi feita sobre o XML já sem prefixos.
- 4Reenvie.
Como evitar o Erro E1228
Não gere o XML fiscal com o mesmo cliente SOAP usado em outras integrações. Ele prefixa por padrão, e a norma não aceita.
Se o Erro E1228 continuar
Erros vizinhos: estrutura mal formada, falha no esquema XML e erro na assinatura, que o prefixo também derruba.
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.