Falha na validação dos dados da nota XXXX


Este erro é uma falha que ocorre no software antes dele transmitir a nota, quando após assinar o xml ele cruza este xml com as regras de validação (schemas) da receita, para verificar se este xml está em conformidade.

imagem do sistema

A mensagem acima é um exemplo deste erro. Vamos analisar a mensagem em detalhes:

Falha na validação dos dados da nota 13
1824 - Element '{http://www.portalfiscal.inf.br/nfe}cEANTrib':
'845654165' is not a valid value os the local atomic type.

Neste exemplo, o 13 refere-se ao número da nota. O cEANTrib é o campo com problema, se procurar esta informação na internet talvez entenda um pouco o problema, mas para facilitarmos, neste erro refere-se ao código EAN, ou seja, o GTIN/EAN informado no produto. Por fim, o valor 845654165 refere-se ao valor errado informado, no caso, no campo GTIN/EAN. Ou seja, em resumo, este erro indica que em algum produto foi informado o GTIN/EAN 845654165 e ele não é válido, é preciso corrigi-lo. No caso específico do GTIN/EAN, se o produto não tem um pode deixar em branco.

Esta mensagem pode ter algumas variações, como esta abaixo:

Falha na validação dos dados da nota XXXX
'XXXX' violates pattern constraint of 'XXXX'.
The element '{http://www.portalfiscal.inf.br/nfe}XXXX with value 'XXXX' failed do parse.

Nesta mensagem, a informação que aparece em vermelho é o número da nota. A informação que aparece em verde é o valor que você preencheu, o valor errado. A informação que aparecem em laranja é o campo que você preencheu errado e a informação em azul é a regra de validação deste campo.

Aqui vale fazer duas observações: a primeira é que a mensagem naturalmente não vem com estas cores, apenas colorimos elas para facilitar o entendimento. A segunda é que quase sempre as informações não são muito claras, principalmente se não tiver familiaridade com o xml da nota. A regra de validação, que aparece em azul, tem um formato mais complicado de entender. Por exemplo, a regra de validação do código de barras do produto é esta: [0-9]{0}|[0-9]{8}|[0-9]{12,14}. Os valores indicados entre colchetes ([]) representam os valores que podem ser inseridos no campo, já o que aparece entre chaves ({}) é o tamanho máximo do campo, e as barras (|) indicam que existe mais de uma regra, ou seja, várias possibilidades de valores para o código de barras. Traduzindo literalmente esta regra [0-9]{0}|[0-9]{8}|[0-9]{12,14} ficaria assim:

-[0-9]{0} - preencher com 0 a 9, tamanho máximo 0 caracteres (ou seja, deixar em branco)
-[0-9]{8} - preencher com 0 a 9, tamanho 8 caracteres
-[0-9]{12,14} - preencher com 0 a 9, tamanho de 12 a 14 caracteres

Este erro infelizmente não é algo tão simples para que possamos criar um passo a passo de como resolver. Ele pode ocorrer se qualquer campo entre as centenas que uma nota pode ter estiver preenhido errado. O campo errado é sempre aquele que vem na frente de "The element '{http://www.portalfiscal.inf.br/nfe}", mas ele vem descrito com a tag do xml, e não com uma descrição clara. Se você não entender qual campo é, baseado nos destaques em laranja dos exemplos acima, então precisará enviar a mensagem ao nosso suporte para que o ajudemos.