Nfe - Nota Fiscal Eletronica

cara… ai tem uns arquivos de exemplos…
mas sei se estão todos com layout atualizados… mas ajuda…
http://www.sefaz.rs.gov.br/Site/MontaMenu.aspx?MenuAlias=m_dwn_nfe_arq

Já tinha pego como exemplos esses arquivos
o meu xml ja está assinado e da td Ok na validação mais msm assim nao consigo enviar o arquivo

String nfeDadosMsg = “<?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?>”
+ "<enviNFe " + " versao=“1.10"”
+ " xmlns="http://www.portalfiscal.inf.br/nfe">"
+ “<idLote>000000120609347</idLote>” + str
+ “</enviNFe>”;

depois da tag </idLote> a variavel str tem todo o conteudo do meu xml , continua retornando Lote recebido com sucesso e qdo consulto essa NF nao consigo encontrar essa nota

alguem sabe se esse metodo funciona ou devo utilizar de outra maneira ?

Olá pessoal.

Já estudei todas as nove páginas desta thread e ainda não consegui fazer o envio de um arquivo xml.

Acredito que algumas pessoas tenham conseguido, e outras devem estar enfrentando o mesmo problema que eu.

Bem, não estou certo se meu problema é com o certificado digital ou com a assinatura digital. O fato é que não consigo nem mesmo visualizar o WSDL pelo browser (utilizo Linux/Firefox). Já tentei inclusive em máquinas com Windows e IE mas não rolou.

Encontrei um programa feito pelo pessoal do RS e nele existem dois certificados válidos (acredito eu), mas mesmo utilizando-os não consigo visualizar o WSDL via browser. Mesmo com os certificados instalados corretamente.

Para quem tiver interesse em utilizar os certificados, pode baixa-los por aqui: http://www.sefaz.rs.gov.br/Site/MontaMenu.aspx?MenuAlias=m_dwn_nfe_assDig. Após instalar, procure por dois certificados na pasta Certificados.

Pelo que consegui assimilar, preciso apenas definir algumas propriedades do sistema com as chaves corretas. E depois abrir o canal de comunicação para transferir os arquivos. É isso?

Por favor, me ajudem a compilar um pequeno manual com todos estes dados para que eu e, obviamente, outras pessoas possam utilizar.

  1. É necessário “instalar” a cadeia de certificados da Raiz da SEFAZ no KeyStore (local onde ficam armazenados os certificados). Onde para isto sugere-se utilizar o programa InstallCert.java construído por Andreas Sterbenz e explicado no post No more ‘unable to find valid certification path to requested target’.

1.1. Sua utilização, basicamente, concentra-se em executar o programa passando como parâmetro o URL do servidor. Exemplo:

    [i]java InstallCert nfe.fazenda.sp.gov.br[/i]

[list]O programa exibirá os certificados encontrados e você deverá decidir qual adicionar simplesmente pressionando o número de referência do certificado, neste caso específico da nfe.fazenda.sp.gov.br aparecem 3.[/list]
[list]Um arquivo com nome jssecacerts será criado, e este deverá ser utilizado como a cadeia dos certificados raiz.[/list]

1.2. Alternativamente pode-se utilizar a chave pública e cadeia de certificado disponibilizado pela SEFAZ/SP:
[list]Certificados Digitais dos Web Services da SEFAZ/SP (chave pública e cadeia de certificado)[/list]

  1. Você precisa comprar um certificado e-CNPJ ou e-NFe credenciado por uma das certificadoras indicadas pelo portal da NF-e, como por exemplo o SERASA.

2.1. Como alternativa pode-se utilizar um certificado sem validade jurídica para testes disponibilizado pela SEFAZ/RS:
[list]Assinatura Digital (AssinadorRS) (requer instalação do programa para extrair os certificados na pasta Certificados)[/list]

2.2. Como mais uma alternativa, anexei à este post o arquivo certificados_nfe.zip que contém os mesmos. Os arquivos são Associacao.pfx (senha associacao) e Condominio.pfx (senha condominio).

  1. Vamos ao Java!! O primeiro passo é definir as propriedades do ambiente com os certificados digitais:
System.setProperty("java.protocol.handler.pkgs","com.sun.net.ssl.internal.www.protocol");  
Security.addProvider(new com.sun.net.ssl.internal.ssl.Provider());   
  
System.setProperty("javax.net.ssl.trustStoreType", "JKS");  
System.setProperty("javax.net.ssl.trustStore", "jssecacerts");  // aquele gerado no passo 1.1
System.setProperty("javax.net.ssl.trustStorePassword", "changeit"); // esta senha está correta?
  
System.setProperty("javax.net.ssl.keyStoreType", "PKCS12");  
System.setProperty("javax.net.ssl.keyStore", "Associacao.pfx");  // o arquivo com o certificado do emitente
System.setProperty("javax.net.ssl.keyStorePassword", "associacao");  // a senha do arquivo
  1. Fazer a assinatura digital do arquivo XML já montado.
    [list]Uma boa referencia a respeito do tema pode ser encontrada em Programming With the Java XML Digital Signature API[/list]
    [list]Outra referência a respeito, e com código Assinador.java pode ser lida nesta thread http://www.guj.com.br/posts/list/52035.java#576483.[/list]

  2. Realizar a transmissão via web service.
    [list]Uma vez com o arquivo montado, bastará abrir o canal de comunicação pelo URL desejado e submeter o arquivo XML. Este trabalho pode ser feito por exemplo com o HttpURLConnection[/list]

------------- POSIÇÃO ATÉ O MOMENTO ------------

Bem pessoal, por enquanto foi isso que consegui compilar a respeito do tema, mas confesso que não consegui realizar a transmissão, nem consulta de arquivos e chaves.

Se alguém puder ajudar a melhorar este manual até que consigamos faze-lo funcionar, seria uma mão-na-roda para todos.

Um abraço e até mais!

henrique.

NOSSA! :shock: hahaha

seguinte, pra começar: os seus certificados não são válidos, eles não vão acessar os wsld da receita, nenhum deles…

[quote=f-schmitt]NOSSA! :shock: hahaha

seguinte, pra começar: os seus certificados não são válidos, eles não vão acessar os wsld da receita, nenhum deles…[/quote]

bom, já é alguma coisa. :!:

Você sabe me dizer pq não são válidos? No IE eles estão marcados com validade até 2010.

Existe alguma forma para que eu consiga solucionar este PRIMEIRO obstáculo? A única solução é mesmo adquirindo um e-CNPJ? Veja, não sou contribuinte do ICMS, posso mesmo assim ter um e-CNPJ válido para acessar os WSDL? Foi assim q vc conseguiu?

grato.

sim, mesmo sendo com validade

para acessar o wsdl da fazenda, é necessário pedir a autorizaçao do e-cnpj junto a sefaz do seu estado, ai sim voce conseguirar acessar

não é somente ter um e-cnpj

Ok, entendi! Já é um informação valiosa para atualizar o manual.

Agora para ficar mais claro:

O certificado que você utiliza é de algum cliente seu, ou você fez todo o processo de autorização junto à SEFAZ?

Na verdade a pergunta é: qualquer empresa, seja ela emitente ou não de nota fiscal modelo 1 ou 1A pode adquirir este certificado com as devidas autorizações?

Pelo que me informei é possível por exemplo conseguir o e-CNPJ no Correios. Certo?

sim, o dos correios eh um dos mais baratos e acessiveis…

voce pode fazer um e-cnpj de sua propria empresa e autorizar para acessar no ambiente de homologaçao…

Legal, já vi.

R$ 130,00 para o A1.

Bom, pelo que calculei levará umas 72hrs para concluir todo o processo. A terminar volto com mais detalhes e atualizamos o manual.

valeu !!

Para informar, você tinha razão.

Providenciei a compra do certificado digital para a empresa e já consigo visualizar os WSDL.

Agora vou retomar os testes e vê onde mais pode dar errado.

Pronto, funcionando.

Consegui, através do Netbeans, realizar a consulta do status do serviço.

Infelizmente [ainda] não consegui utilizar o HttpUrlConnection para fazer a comunicação crua. Tive que utilizar os recursos de importação do WSDL automático do Netbeans. Mas enfim, pelo menos funcionou.

Por quê diabos eu quero fazer a conexão crua? Explico: pelo que notei cada UF tem um WSDL próprio, e por isto vou ter que fazer o trabalho de importação do wsdl para cada um deles. O que começa a dispersar muito o trabalho.

Alguém sabe se é possível trabalhar simplesmente com a Sefaz Virtual? Pelo que pude notar ela é uma unificadora. Ou não?! Vou mesmo ter que tratar o WSDL de cada SEFAZ/UF ?

Opa… eae povo…

Nossa… gastei 1 horinha lendo os post… ^^
mas valeu… to entendo bem mais sobre a NFe… hehe

Bom… eu tb entrei nessa… vou começar agora um projeto com a NFe… e o meu primeiro trabalho eh gerar o XML… queria saber se estou começando certo:

1.To procurando o plugin para o eclipse que converta os WSDL para Java e vice-versa;
2.Ja passei para a emrpesa aki o ste do correio com o valor dos certificados;
3.Estou procurando os modelos XML para gerar;

Minha dúvida… no próprio site da sefaz acho os WSDL para converter ?? Faz tempo que não mexo com XML e to meio perdido por onde começar… =/

Vlw !!!

No eclipse eu não conheço! Mas há um post no GUJ a respeito. Lembro-me de ter lido sobre isto. É algo como File -> New -> Others então selecionar WebService Client e fazer o import do WSDL.

Para baixar o WSDL da SEFAZ/SP vc pode acessar o link:

http://www.fazenda.sp.gov.br/nfe/url_webservices/url_webservices.asp

Procure por: WSDL dos Web Services da SEFAZ/SP (Descrição dos Serviços)

Para contribuir um pouco e não ficar apenas sugando informação, segue uma dica:

Quem utiliza Netbeans e deseja fazer o download do WSDL direto pelo URL (na abinha Services -> Web Services, botão direito Add Web Service) deve adicionar nas propriedades da VM as variáveis com as respectivas definições dos certificados.

No arquivo netbeans.conf (que fica dentro do diretório etc da instalação do NB) adicione as seguintes informações na propriedade netbeans_default_options:

-J-Djava.protocol.handler.pkgs=“com.sun.net.ssl.internal.www.protocol”
-J-Djavax.net.ssl.trustStoreType=“JKS”
-J-Djavax.net.ssl.trustStore="/caminho/raiz/certificados/jssecacerts"
-J-Djavax.net.ssl.trustStorePassword=“changeit”
-J-Djavax.net.ssl.keyStoreType=“PKCS12”
-J-Djavax.net.ssl.keyStore="/caminho/seu/certificado/cert.pfx"
-J-Djavax.net.ssl.keyStorePassword=“sua_senha”

tudo isso em uma unica linha.

Desta maneira o NB poderá acessar a URL dos WSDL utilizando a autenticação mútua exigida por este webservice.

abraços.

[quote=dezpregos] No eclipse eu não conheço! Mas há um post no GUJ a respeito. Lembro-me de ter lido sobre isto. É algo como File -> New -> Others então selecionar WebService Client e fazer o import do WSDL.

Para baixar o WSDL da SEFAZ/SP vc pode acessar o link:

http://www.fazenda.sp.gov.br/nfe/url_webservices/url_webservices.asp

Procure por: WSDL dos Web Services da SEFAZ/SP (Descrição dos Serviços)[/quote]

Blza… peguei os arquivos WSDL:
.cadconsultacadastro.wsdl
.NfeCancelamento.wsdl
.NfeConsulta.wsdl
.NfeInutilizacao.wsdl
.NfeRecepcao.wsdl
.NfeRetRecepcao.wsdl
.NfeStatusServico.wsdl

Imagino que o proxima passo seja criar as classes java com base nesses WSDL para fazer as chamadas. E para isso to vendo como usar o Axis2 no eclipse.

Mas estou preocupado com uma etapa antes ainda… na forma como gerar o XML… devo usar o XTream mesmo para gerar desde o zero o XML me baseando no documento Manual_Integracao_Contribuinte_v_2.02a_2008_06_16.pdf ou a SEFAZ disponibiliza uma biblioteca com os elementos (TAG) do XML ??

Bom… andei lendo mais e encontrei alguns documentos e tb os arquivos XSD para SP.
http://www.fazenda.sp.gov.br/nfe/downloads/arquivos_vigentes.asp

Baixei os XSD e tb os manuais… so tomem cuidado com as compatibilidades entre as versões dos arquivos, coreções e tudo mais…

Ainda estou lendo como começar a montar os XML… ou mesmo exemplos de XML ja montados…

Você quer os schemas XSD?

Aqui vc encontra a relação mais atualizada:

http://www.nfe.fazenda.gov.br/PORTAL/schemas.aspx

Opa… vlw “10pregos”

Ja baixei os XSD e tb peguei a documentação atual da SEFAZ…

No momento estou lendo o manual do contribuiente e procurando por exemplos de XML…

Na duvida ja baixei as bibliotecas do XStream e ja fiz um projeto de teste para criar o primeiro XML de exemplo…

Se alguem tiver um exemplo de XML ou mesmo falar como que gerou… eu agradeço… não sei se devo investir no XStream mesmo ou procurar por algo pronto no site da SEFAZ…

Mas vou descobrir… claro que so depois do jogo ^^

Fui !!

Pior que está autorizado sim, tanto q o cliente ta usando o emissor da Sefaz em produção.
Quais certificados vc inclui no jks?[/quote]

Olá pessoal…

Eu não estou exatamente desenvolvendo um aplicativo, estou utilizando um que já está pronto. Porém estou tendo exatamente este problema. Fiz até um programinha Java para testar os Web Services e ele funciona bem com praticamente todos os estados, menos com BA e RS (e VRS). E o problema que eu tenho é exatamente este.

Xakkal, você já conseguiu alguma coisa sobre o assunto?

Muito obrigado…

cara… vai ter q ser para cada uf… mas verifique antes de sair criando um monte de ws… pq para alguns ws… basta apenas alterar a url do servidor da sefa… entende??
no Pr ja não funciona isso muito bem… pq tem o próprio e ainda é um pouco diferente as classes…
mas pelo que testei o SVRS é igual ao SCAN…

[quote=alves.Felipe][quote=dezpregos]
Alguém sabe se é possível trabalhar simplesmente com a Sefaz Virtual? Pelo que pude notar ela é uma unificadora. Ou não?! Vou mesmo ter que tratar o WSDL de cada SEFAZ/UF ?
[/quote]

cara… vai ter q ser para cada uf… mas verifique antes de sair criando um monte de ws… pq para alguns ws… basta apenas alterar a url do servidor da sefa… entende??
no Pr ja não funciona isso muito bem… pq tem o próprio e ainda é um pouco diferente as classes…
mas pelo que testei o SVRS é igual ao SCAN…[/quote]

Ok, valeu a dica !!

Antes da sua resposta eu havia atestado isto. E é fato! Não funcionam da mesma maneira. Exemplo: MG, a implementação é SOAP 1.1, e não 1.2 como “orienta” o manual de integração.

Desabafo: Que p#$@ sacanagem, não?! Um dos grandes problemas do nosso país é ser dividido em vários outros países ao invés de Estados. É a casa da mãe joana, cada um faz o que quer e o que bem entende.

henrique.