Nfe - Nota Fiscal Eletronica

[quote=f-schmitt]essa nunca vi…

é um certificado válido ICP Brasil?[/quote]
Olha, é um certificado comprado só pra isso.
Como posso verificar essa informação? Tem isso dentro dele?

Edit: Foi comprado na CertiSign, é chamado de Certificado Digital NF-e Pessoal Juridiaca Tipo A1.

se é um certificado para NFe mesmo, então não deve haver erro,
você pode add ele no navegador e testar no site da Certisign

att
Fernando Schmitt Daufemback

aqui em SC quando da a msg de CNPJ do emitente não cadastrado, é porque ainda não foi feito o pedido de emissão de NFe junto a SEFAZ, aqui chamam de TTD, Tratamento Tributário Diferenciado.

att
Fernando Schmitt Daufemback

[quote=f-schmitt]aqui em SC quando da a msg de CNPJ do emitente não cadastrado, é porque ainda não foi feito o pedido de emissão de NFe junto a SEFAZ, aqui chamam de TTD, Tratamento Tributário Diferenciado.

att
Fernando Schmitt Daufemback
[/quote]

O mais estranho é que esse certificado já é utilizado por outro sistema para a emissão.
Eu to fazendo um client webservice para realizar consulta do cadastro.
Mas não tá rolando …

Galera to com um probleminha aqui na geração do digito verificador do código de barras do danfe, eu fiz os calculos e tal, mas quando divido o valor das operações por 11 sempre recebo uma dizima periodica, esta resultado creio eu que deva ser arredondado pra usar na subtração por 11 e obter o digito verificador…

alguem sabe qual o critério para arredondar esse número??

Eu criei esse método para calcular o dígito, eu passo a chave de acesso e ele retorna o dígito:

public static String getDigitosChaveAcessoNFe(String chave) { int peso[] = new int[]{2, 3, 4, 5, 6, 7, 8, 9}; char[] numeros = chave.toCharArray(); int totalNumeros = numeros.length; //System.out.println("quantos numeros = " + totalNumeros); int contaPeso = 0; int somaPonderacao = 0; for (int i = totalNumeros - 1; i >= 0; i--) { int numero = Integer.parseInt(numeros[i] + ""); //System.out.println("Numero = " + numero); int ponderacao = numero * (peso[contaPeso]); //System.out.println("Ponderacao = " + ponderacao); somaPonderacao = somaPonderacao + ponderacao; contaPeso++; if (contaPeso > 7) { contaPeso = 0; } } //System.out.println("Soma Ponderacao = " + somaPonderacao); int resto = (somaPonderacao % 11); //System.out.println("Resto = " + resto); int digito = 0; if (resto == 0 || resto == 1) { digito = 0; } else { digito = 11 - resto; } return digito + ""; }Veja se te ajuda, tente passar a chave de acesso e veja o resultado.

vlw amigo, amanha cedo quando chegar no trabalho irei testar seu algoritmo :smiley:

[quote=giu][quote=f-schmitt]aqui em SC quando da a msg de CNPJ do emitente não cadastrado, é porque ainda não foi feito o pedido de emissão de NFe junto a SEFAZ, aqui chamam de TTD, Tratamento Tributário Diferenciado.

att
Fernando Schmitt Daufemback
[/quote]

O mais estranho é que esse certificado já é utilizado por outro sistema para a emissão.
Eu to fazendo um client webservice para realizar consulta do cadastro.
Mas não tá rolando …
[/quote]

Será que seu Assinador não está com problema? a assinatura no xml deve conter o certificado…

agora preciso testar a jossa toda, o certificado digital para homologação no servidor da sefaz PR, eu vou ter que comprar isso, ou existe algum certificado pra testes de sistemas?

para fazer assinatura digital até pode usar um certificado que tem por ai, mas para testar o acesso ao webservice somente com certificado válido…

[size=9]att
Fernando Schmitt Daufemback[/size]

O pior é que isso é realmente a pura verdade, o que é um absurdo, uma vez que existe o ambiente de homologação então poderia poder usar o certificado de testes também para enviar, sendo que o ambiente apenas poderia dar uma “resposta” e descartar o que foi enviado.

Eu tenho alguns sistemas que vão precisar usar a NFe, estou com o módulo inteiro pronto mas ainda não testei o envio somente porque meus clientes ainda não me passaram o certificado digital.

aqui ta praticamente pronto, faltam alguns ajustes, e a integração com o erp visto que eu desenvolvi como uma biblioteca pra poder usar em outros projetos :D…

sacanagem comprar certificado pra testes :evil:

é verdade

Tenho um módulo pronto aqui tbm, fácil de integrar com qualquer ERP. Todas as funções da NFe, ficou show, já está rodando na Samsung e outras empresas, e em Software Houses tbm…

Meus caros, estou com um grande pepino.
Nunca utilizei o java para algo maior que um “Hello word”, mas tenho um bom conhecimento em php e python, e essa semana fui informado que deverei implementar a NFe em java, para integrar ao ERP da empresa. Como não estou ambientado ao mundo java estou passando um grande trabalho.

Com o ajuda do fórum já avancei bastante em relação a linguagem java e NFe.

Já consegui criar um xml, o cabeçalho. Para isso utilizei netbeans e Jabx, que criou automaticamente classes que estou utilizando para gerar os xmls .
Gostaria de saber se esse é o melhor caminho, se posso ter problemas se continuar neste caminho, ou se o idéia é utilizar o Xstream ou ainda fazer tudo no braço. Pergunto isso pq ví muita gente falando dos problemas dos shemas.

Grato.

cara, aqui pra geração do xml eu usei o xstream com annotations, foi super tranquilo :D, agora vou escrever uma versao em python, e irei usar um modulo python chamado de kid, que usa templates =D

Gente com Algum de vocês deu esse erro ?

10/12/2009 12:06:02 org.apache.axis.utils.JavaUtils isAttachmentSupported
WARNING: Unable to find required classes (javax.activation.DataHandler and javax.mail.internet.MimeMultipart). Attachment support is disabled.

AxisFault
faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException
faultSubcode:
faultString: javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
faultActor:
faultNode:
faultDetail:
{http://xml.apache.org/axis/}stackTrace:javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
at com.sun.net.ssl.internal.ssl.Alerts.getSSLException(Alerts.java:174)

Está faltando colocar os certificados do servidor em um truststore e adiciona-los como trusted antes de fazer a conexão…

att
Fernando Schmitt Daufemback

Mais Eu Fiz Isso. 

só que estou sem consegui executar a linha Security.addProvider

Será que pode ser isso
[code]
System.setProperty(“java.protocol.handler.pkgs”, “com.sun.net.ssl.internal.www.protocol”);
System.setProperty(“javax.net.ssl.trustStoreType”, “JKS”);

	//new com.sun.net.ssl.internal.ssl.Provider();
	
	//Security.addProvider(new com.sun.net.ssl.internal.ssl.Provider());

	System.setProperty("javax.net.ssl.trustStore", "C:\\certificado\\jssecacerts");    
	System.setProperty("javax.net.ssl.trustStorePassword", "changeit");

	System.setProperty("javax.net.ssl.keyStoreType", "PKCS12");    
	System.setProperty("javax.net.ssl.keyStore", "C:\\certificado\\MP.pfx");  // o arquivo com o certificado do emitente  
	System.setProperty("javax.net.ssl.keyStorePassword", "senha"); 

	System.out.println(" Propriedade KeyStore "+System.getProperty("javax.net.ssl.keyStore"));
	System.out.println("");
	System.out.println(" Propriedade TrustStore "+System.getProperty("javax.net.ssl.trustStore"));
	System.out.println("");

[/code]

Opa e ae pessoal. blz… meu primeiro post…

Estou desenvolvendo uma aplicação com Nfe…

eu baixei os schemas e extrai as classes java, criei o webservices, e usei jaxb para gerar o xml.

Por enquanto estou usando um certificado (associacao.pfx) de teste só para assinar… e criei a classe que assina a nota também.

Bom, mas meu xml esta com o cabeçalho incorreto por causa desse ******** jaxb!!

Queria saber se, tirar as anotações das classes dos schemas e tentar gerar o xml passando a classe para o Xtream daria certo??
Meu problema está so na geração do xml por enquanto…

bom cara, o eu nao sei como sao as classes geradas pelo jaxb, mas se forem um bean com annotations, você pode simplesmente adaptar as anotações para que sejam as do xstream…