Desenvolvimento de sistema para validação de NF-e

Bom dia galera! Tudo bem?

Eu recebi uma proposta para um sistema de validação de NF-e na Receita Federal, porém, eu não faço ideia de como posso começar a fazer isto!
A única coisa que eu sei é que eu devo gerar um arquivo XML e enviar para a Receita, que responderá se está correto ou não.
Gostaria de saber qual é o processo, ou seja, quais são os passos que devem ser seguidos para que eu valide esta nota e saiba se ela existe ou não.

Alguém pode me ajudar com isto? Procurei na internet mas não achei nada muito claro :frowning:

Obrigado pela atenção de vocês!!

Se puder de uma olhada neste material que foi quando comecei com NF-e há um ano atrás, foi criado por mim e mim esclareceu muitas dúvidas.

http://www.javac.com.br/jc/posts/list/263.page

Muito obrigado pela ajuda!!

O artigo é muito bom!
Só tenho uma dúvida, meu aplicativo será somente de validação de NF-e, isto é, o usuário irá entrar com um arqvui em XML e eu enviarei para a Receita verificando se está correto ou não. Eu não vou precisar fazer mais nada além disso né (tipo a parte de geração de XML, cancelamento, inutilização)… somente validar mesmo né?

Obrigado

Você terá duas validações que é a validação local com os XSD que a Sefaz disponibiliza e terá a validação realizada pela SEFAZ.

A validação local irá verificar estrutura do XML.

A Validação da Sefaz irá validar os dados contidos na NF-e.

Lá no link que informei tem todos os passos e as classes prontas para cada passo e um projeto também já feito no eclipse somente para importar e usar.

Acho que estou começando a tomar gosto pela coisa hehehehe :stuck_out_tongue:

Eu entendi todo o processo então!
Agora, só mais uma dúvida.
Na verdade, isto é mais cheirando a dica do que dúvida!

Eu vou precisar guardar um back-up destas NF-e em um banco de dados. O que você me recomenda?

  1. Desmembrar o XML e armazenar campo-a-campo; ou
  2. Guardar o arquivo inteiro no banco de dados?

Ou ambas as soluções?

Obrigado!!

No sistema armazeno somente alguns campos mais usados no banco e guardo em uma pasta o XML a ser utilizado.

Deixo o arquivo físico em um diretório, mas é tranquilo fazer ambas as soluções que você questionou, depende muito de cada necessidade.