Depois de nos matarmos para entender o funcionamento, noites em claro para testes e mais testes, a SEFAZ - Salvador disponibilizou uma DLL e um conjunto de códigos-fonte para realizar todo o processo de assinatura e envio. Agora é mão na roda para quem irá começar a implementar. Para quem já passou por esse sofrimento agora é só descanço... Para mais informações acesse aqui. Abaixo tem os links dos principais arquivos para o utilitário, documentos e XMLs de exemplo:
NfseUtil - Utilitário e Código-fonte de Aplicativo que Assina e Envia os XMLs para emissão da Nota Fiscal Eletrônica
Postado por
Thiago Marçal
on quinta-feira, 1 de julho de 2010
/
Marcadores:
nfe,
nota fiscal eletrônica,
salvador,
xml
18 comentários:
Funciona p/ Curitiba - PR?
Se for para o município talvez venha a funcionar se aceitar no padrão da ABRASF e seguirem as mesmas normas que a da Bahia (creio que em um teste rápido no ambiente de homologação você terá uma resposta mais precisa - pegue alguns XML's de Curitiba e faça um envio para verificação). Contudo, não serve para NF-e do estado.
Thiago,
Estou desenvolvendo em Delphi e quando utilizo o método de enviar ele dá o seguinte erro: "Could not establish trust relationshipfor the SSL/TLS secure channel with authority 'nfsehml.sefaz.salvador.ba.gov.br'"
Você já passou por isso ou tem ideia do que seja?
Antecipadamente agradeço a ajuda.
Yelken,
Veja nesse link a correção do problema: http://www.codemeit.com/wcf/wcf-could-not-establish-trust-relationship-for-the-ssltls-secure-channel-with-authority.html
Veja em Delphi o similar. Pelo visto deve ser algum problema na autenticação antes de efetivar a conexão.
Thiago,
Estou desenvolvedo um sistema para emissão de NFe, no sefaz de Salvador, já baixei todo o pacote NfseUtil, já compilei, porém qndo tento validar está apresentando a msg "O certificado o nome 'Equipe de Desenvolvimento NFS-e' não foi encontrado no repositório 'My' do sistema."
Josy,
Verifique se o nome correto da empresa que está no certificado é realmente esse. Veja também que a forma de buscar o certificado via token (plug) é diferente daquela que é instalada diretamente no servidor. Em Iniciar, Executar, digite certmgr.msc . Na tela que se abre, siga em Pessoal > Certificados. Veja o nome correto do certificado lá. Verifique se está corretamente instalado o token e se está disponível.
Thiago,
Estou desenvolvendo um módulo para poder gerar a NFSe Salvador, ja instalei as dll's, componentes, ja verifiquei o certificado Token. O arquivo xml que gerei é igual o servico_enviar_lote_rps_envio.xml e estou tentando validar e esta dando esse erro "O certificado o nome 'Equipe de Desenvolvimento NFS-e' não foi encontrado no repositório 'My' do sistema". Como posso resolver isso por favor ?
Substitua o nome "Equipe de Desenvolvimento NFS-e" pelo nome da sua empresa na qual foi registrado o certificado.
Thiago,
Problema "5 de junho de 2012 14:12" resolvido.
Muito Obrigado.
Agora ta dando o erro de "Object reference not set to an instance of an object", isso seria os CNPJ e IE invalidos ?
O erro é porque o objeto não foi carregado corretamente. Se foi depois de capturar o certificado, pode ser que não carregou corretamente. Verifique o nome correto e aplique o debug para ver se é depois do carregamento do certificado.
Existe algo a mais que deva ser feito com o certificado além de configurá-lo no repositório My?
Não é necessário. Os certificaods do tipo A4, token, quando espetados já ficam disponíveis no repositório My. Se não tiver aparecendo, veja a compatibilidade.
Estou usando certificado do tipo A3, fiz a configuração no repositório My, mas contitua dando erro de "Object reference not set to an instance of an object". Já passou por isso? Sabe o que pode estar acontecendo? Desde já agradeço.
Bem, nesse caso é porque o código não está conseguindo capturar corretamente o certificado. Poderia colocar um trecho do seu código e qual a linha que está dando esse erro?
Estou usando o programa de testes para Delphi7 que a própria prefeitura de Salvador disponibilizou juntamente com a dll.
Thiago, realmente era isso! corrigi aqui e agora funcionou! obrigado!
Estou tendo sempre este retorno:
O certificado o nome 'xxxxxx' não foi encontrado no repositório 'My' do sistema
Já tentei usar o nome amigável, o nome da empresa do certificado o subjectname completo, e sempre retorna esta mensagem.
Alguma sugestão?
Em alguns SO o certificado mesmo que instalado não tem compatibilidade então é preciso instalar todas as cadeias. Verifique no site da certificadora esses certificados e instale-os. Veja também se é compatível com seu sistema operacional.
Postar um comentário