lealhugui/node-dfe

utilização do módulo

Closed this issue · 8 comments

Opa tudo bem ?, sou novo na área de programação e na parte de geração de notas fiscais, eu estou com uma duvida sobre as importações para utilizar seu módulo, no arquivo test.js, na na sua variavel objeto

  key: fs.readFileSync("C:\\cert3\\server.key"),
  pem: fs.readFileSync("C:\\cert3\\keymail.pem"), //private key
  pfx: fs.readFileSync("C:\\cert3\\certificado.pfx"), //certificado
  password: "12345678" //fs.readFileSync("C:\\cert\\senha.txt")
};

meu arquivo .pfx é meu certificado e para gerar os outros como o pem (que até então eu tenho como nome é chave privada).
e por estes passos eu estou gerando os os respectivos arquivos:
1- Mover o ficheiro exportado (ex: file.pfx) para um servidor onde se encontre instalado o OpenSSL.
Nota: O ficheiro pfx está em formato PKCS#12 e inclui o certificado e a chave privada.
Para exportar a chave privada deve correr-se o seguinte comando:
openssl pkcs12 -in certname.pfx -nocerts -out key.pem -nodes
2- De forma a exportar o certificado o comando a executar é o seguinte:
openssl pkcs12 -in certname.pfx -nokeys -out cert.pem
3- O seguinte comando deve ser executado para remover a palavra passe da chave privada:
openssl rsa -in key.pem -out server.key

e utilizando os arquivos gerados, quando executo a função testeEmissaoNFCe();
ela me retorna o seguinte resposta

[xmldom warning]        attribute "Attributes" missed value!! "Attributes" instead!! 
@#[line:124,col:17]
[xmldom warning]        unclosed xml attribute 
@#[line:124,col:17]
[xmldom warning]        attribute "Attributes" missed value!! "Attributes" instead!! 
@#[line:164,col:17]
[xmldom warning]        unclosed xml attribute 
@#[line:164,col:17]
...
family: 4 }
null
-----> 400
-----> undefined
[node-dfe][retornoEnvio]->ja deu erro pra logar.......TypeError: Cannot read property 'toString' of undefined
...

poderia me ajudar na geração ou tem algum tutorial ? desde já agradeço.

Boa tarde @Andersonfrfilho !
Qual versao de NodeJS voce esta utilizando? Qual sistema operacional?

Boa tarde ^^.
Windows 10,
nodeJs version:10.16.0
lealhugui, até me desculpa a duvida mas andei pesquisando sobre os tipos de arquivo porque sou novo ainda na área e tenho que gerar nf-e no app.
mas já vi que temos dois tipos de certificado digital que é o .pfx e o .pem (que distingue a chave privada), se não me engano. mas mesmo gerando e separando estes arquivo para seu módulo ainda deu o erro que citei acima.

tudo bem @Andersonfrfilho ? ainda precisando de ajuda?

@lealhugui, sim, e você ? Eu precisava sim, eu queria integra-lo em uma aplicação de backend, porém ainda não consegui utiliza-lo, não sei se estou errando no formato das chaves ou nas informações que envio, ah algum material que você recomenda para que posso consultar ou um exemplo, sou novo nessa área de nfe. obrigado.

@Andersonfrfilho , no arquivo test.js tem um exemplo completo de uso da biblioteca. Tu pode começar por ele, acompanhado do manual da NFe.

Qualquer coisa que puder te ajudar, pode chamar.

@lealhugui, sobre as chaves lá ele pede 4 chaves

    key: fs.readFileSync('C:\\cert\\newKey.key'),
    pem: fs.readFileSync('C:\\cert\\test.pem'),
    pfx: fs.readFileSync('C:\\cert\\certificado.pfx'),//certificado em formato .pfx
    password: fs.readFileSync('C:\\cert\\senha.txt')//password do certificado

o .key, e .pem eu devo gera-los ?, a partir do .pfx ?
vendo alguns tutoriais eu acabei gerando mas quando abro eles, vem alguns escritos da microsoft e não somente a chave creio que eu deva estar fazendo errado.

@Andersonfrfilho , tu terá que "abrir" o certificado.
A "explosão" do certificado PFX vem como dependência do uso da lib xml-cripto.
Pode consultar na documentação deles (procure por "Converting .pfx certificates to pem").

Estou fechando a Issue por inatividade. Se ainda houver problema, pode abrir nova issue.