All posts tagged NFe

Salve, salve galera,

Atualmente temos visto que muitos órgãos do governo e outras entidades tem adotado o envio de documentos digitais, tais como NF-e, CT-e, SPED, etc, visando uma maior eficiência na apuração e identificação de fraudes. Existe um assunto que é comum em todos esses tramites de dados, o arquivo enviado geralmente (não sempre) é um arquivo XML, e na maioria das vezes é um documento assinado digitalmente com o certificado digital do emissor.

Nesse post, vou mostrar de uma maneira bem simplista e prática como assinar o conteúdo de uma TAG XML e adiciona-la ao respectivo arquivo para fazer o envio do mesmo. Vale lembrar pessoal que a forma que vou mostrar aqui utiliza o certificado A1, e é aceito pelos serviços relacionados a NF-e, se existem variantes desse ou se outros órgãos tem outras restrições é uma questão de analise de caso-a-caso.

Bom mais vamos deixar de bla-bla-bla e vamos por a mão na massa.

Read more


Salve, salve galera,

Muita gente já precisou em algum momento gerar um classe que representasse um schema XML para poder utiliza-la como Model em alguma aplicação. Hoje em dia com a crescente demanda por emissão de documentos fiscais eletrônicos  (NFe, CTe, MDFe) a implementação nos sistemas legados tem se tornado alta.

Porem temos um problema muito grande, o schema XML da NFe por exemplo , tem muitas tags, e tipos complexos, o que demanda muito tempo de escrita de codigo, para minimizar (nao eliminar :D) esse problema, temos um recurso muito interessante no Visual Studio que nos permite criar uma classe apartir de um schema XML. Vamos ver ???

Primeiramente precisamos de um schema XML para trabalhar, nesse caso vou utilizar o schema atual da NFe.

Schema1

Tendo escolhido nosso schema, precisaremos abrir o Prompt de Comando do Visual Studio e nos dirigirmos ate a pasta onde se encontram esses schemas, no meu caso, esta nesse caminho

C:ProgramDataMicrosoftWindowsStart MenuProgramsMicrosoft Visual Studio 2012Visual Studio Tools

Schema2

Agora, para criarmos nossa classe basta utilizarmos o seguinte comando:


xsd.exe xmldsig-core-schema_v1.01.xsd nfe_v2.00.xsd /c

Teremos o seguinte resultado.

Schema3

Agora basta adicionarmos a classe gerada (que fica a principio com o mesmo nome do schema utilizado) e utiliza-la.

Segue um printzinho para termos uma ideia.

Schema4

 

Pessoal de uma maneira bem simples , temos uma classe Model do nosso schema, lembrando que, poderemos ter diferenças de funcionamento a cada conteúdo de schema (tipos complexos, e tudo mais). Mas isso já ajuda bastante.

Por hoje paro por aqui, espero ter ajudado.