Em algumas situações, as mensagens de erro são claras, como, por exemplo, a mensagem “Rejeicao: Sigla da UF do Emitente diverge da UF autorizadora” - facilmente um usuário saberia do que se trata o problema. No entanto, em algumas situações, a mensagem retornada, por exemplo, é “O campo ‘infNFe.dest.IM’ deve ter pelo menos 1 caractere(s)” - não deixando claro, para o usuário, que o problema é na inscrição municipal do destinatário. Por que há essa divergência na clareza das mensagens?
Note que o usuário da Nuvem Fiscal é o desenvolvedor. A mensagem “O campo ‘infNFe.dest.IM’ deve ter pelo menos 1 caractere(s)” me parece bem clara: o JSON enviado precisa ter uma propriedade infNFe com um objeto JSON. Esse objeto JSON precisa ter também uma propriedade dest com outro objeto JSON. Esse último objeto precisa ter uma propriedade IM com pelo menos um caracter. Essa estrutura está na documentação do endpoint também.
O JSON enviado pode ter diversas propriedades e com diversos tipos de inconsistências. Elas serão indicadas pelos nomes das propriedades.
Disse não ser claras do ponto de vista de um usuário que utiliza um sistema, que tem como integração, com a Sefaz, um sistema de terceiros, que, no caso, é a Nuvem Fiscal.
Resumindo: as mensagens de erro, retornadas pela Nuvem Fiscal, são exibidas diretamente aos usuários de nosso sistema. Gostaria de saber se precisarei fazer um tratamento dessas mensagens, ou se há um motivo para uma das mensagens ter claro que o problema é na “Sigla da UF do Emitente”, enquanto que, na outra, não há total clareza (para um leigo) que o problema é na inscrição municipal do destinatário (infNFe.dest.IM)? Ou erros do tipo “O campo ‘infNFe.dest.IM’ deve ter pelo menos 1 caractere(s)” são erros “destinados” ao desenvolvedor (por se tratar de erro no envio correto do campo), enquanto que “Sigla da UF do Emitente diverge da UF autorizadora” entende-se ser erro no preenchimento dos dados?
A primeira mensagem é retornada pela própria SEFAZ, e encaminhada para o cliente da Nuvem como resposta. Não temos controle das mensagens de erro da SEFAZ, pode ser que eles informem o erro detalhadamente ou não. Por exemplo, já recebemos de algumas Prefeituras erros internos do sistema deles, até mesmo em inglês, como “banco fora do ar” e coisas similares.
A segunda mensagem é da própria Nuvem Fiscal, é uma crítica ao JSON enviado pelo programador - você - informando detalhadamente quais partes do JSON foram enviadas incorretamente para a nossa API.