A Sefaz disponibiliza 3 tipos de NSU para que sejam realizadas consultas, são eles, distNSU, consNSU e consChNfe, eles deverão ser usados conforme as orientações a seguir.
1 - distNSU
A aplicação deve informar o último número sequencial único (ultNSU) que possui, e o Ambiente Nacional deve fornecer todos os documentos (NF-e e eventos) disponíveis para o interessado a partir do NSU informado.
Para usuário de componente tecnospeed: Link
Delphi:
spdNFe.ConsultarDistribuicaoDFe('41','11111111111111','000000000000001',nkUltimo);
C#
spdNFe.ConsultarDistribuicaoDFe("41", "11111111111111", "000000000000001", TipoNSU.nkUltimo);
VB6
spdNFe.ConsultarDistribuicaoDFe "41", "11111111111111", "000000000000001", nkUltimo
Exemplo Xml de Envio
2 - consNSU:
Este processo de consulta DF-e a partir de um NSU permite que o interessado nos documentos fiscais consulte de maneira pontual um NSU que foi identificado como faltante em sua base de dados.
Para usuário de componente tecnospeed: Link
Delphi:
spdNFe.ConsultarDistribuicaoDFe('41','11111111111111','000000000000001',nkEspecifico);
C#
spdNFe.ConsultarDistribuicaoDFe("41", "11111111111111", "000000000000001", TipoNSU.nkEspecifico);
VB6
spdNFe.ConsultarDistribuicaoDFe "41", "11111111111111", "000000000000001", ,nkEspecifico
Exemplo Xml de Envio
3 - consChNFe
Este processo de consulta a partir de uma chave de acesso permite que o interessado na NF-e consulte de maneira pontual uma chave de acesso e obtenha o documento relativo à esta chave.
Para usuário de componente tecnospeed: Link
Delphi:
spdNFe.ConsultarDistribuicaoDFeChave('41', '12345678900', '00000000000000000000000000000000000000000000');
C#
spdNFe.ConsultarDistribuicaoDFeChave("41", "12345678900", "00000000000000000000000000000000000000000000");
VB6
spdNFe.ConsultarDistribuicaoDFeChave "41", "12345678900", "00000000000000000000000000000000000000000000"
Exemplo Xml de Envio
Situações onde poderá ocorrer consumo indevido
- Não há mais documentos disponíveis e usuário continua consultando
Se não existir mais documentos a serem retornados (cStat=137) o usuário deve aguardar uma hora para realizar nova consulta. A realização de novas consultas em 1h, após receber a mensagem cStat137, gerará o uso indevido, retornando cStat=656. Nesse caso, o CNPJ é bloqueado por 1 hora, sendo impedido de realizar novas consultas nesse intervalo. Decorrido o intervalo de tempo, o desbloqueio será automático.
Observação: Importante que seja implementada uma validação de dateTime no software utilizado pelo cliente final, visando impossibilitar consultas antes que o prazo termine, o dateTime, deve capturar o horário em que ocorreu a rejeição pela primeira vez, e posteriormente sempre que o cliente tentar usar a consulta ao webservice verificar se já se passou uma hora após a ultima rejeição.
- Usuário não está consultando NSU de forma sequencial
A consulta sempre deverá ser baseada no ultNSU retornado na consulta anterior, o ultNSU corresponde ao ponto em que a leitura deve continuar.
Quando ultNSU for igual ao maxNSU, significa que não existem mais documentos para serem recuperados, quando ocorrer, deve ser aguardado uma hora para que não ocorra consumo indevido.
O campo xMotivo traz a seguinte mensagem: “Rejeição: Consumo Indevido. Deve ser utilizado o ultNSU nas solicitações subsequentes. Tente apos 1 hora”.
Observação: Se diversas aplicações efetuarem consultas por NSU ao mesmo tempo, estas devem seguir a sequencia de numeração de NSU ascendente, do contrario será retornado consumo indevido.
- Consultas com tag consChNFe e consNSU
As consultas por chave de acesso(consChNfe) e por NSU(consNSU), devem ser usadas para consultas pontuais em notas especificas, e somente retornaram notas com período retroativo de no máximo 90 dias.
- Consulta de NFe ou NSU superior ao limite permitido por hora
Será permitido um número limitado a 20 consultas por chave de acesso ou NSU em um período de uma hora, caso o o usuário ultrapasse este número será retornado consumo indevido.
Observação: Importante que seja implementado um contador de consultas, incrementando o mesmo até que complete 20 consultas em uma hora, caso ocorra devolver uma mensagem amigável ao cliente que foi excedido o numero de consultas, evitando assim consumo indevido.
Referência
Comentários
0 comentário
Por favor, entre para comentar.