Closed jeffersoncbd closed 4 years ago
Tudo bem Jefferson?
A principio, nada em particular. O unico requisito, é ter um certificado valido.
Tudo certo, e contigo?
Cara, tentei fazer uma implementação rápida, mas travei na configuração dos arquivos .key e .pem, eu possuo um .pfx válido, achei que iria conseguir somente com ele. como faço para gerar este outros dois?
Aparentemente consegui resolver o .pem usando o módulo "@chilkat/ck-node10-linux64". meu código ficou assim:
const chilkat = require("@chilkat/ck-node10-linux64");
const pfx = new chilkat.Pfx();
const certPath = path.resolve(__dirname, "..", "certificate.pfx");
const success = pfx.LoadPfxFile(certPath, "password");
if (!success) {
console.log(pfx.LastErrorText);
return;
}
const stringPem = pfx.ToPem();
let cert = {
key: "",
pem: stringPem,
pfx: fs.readFileSync(certPath),
password: "password"
};
Agora só falta o .key
créditos: https://www.example-code.com/nodejs/pfx_convert_to_pem.asp
@jeffersoncbd , 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).
O .pem consegui resolver como escrevi no meu ultimo comentário. Faltava só o .key, mas olhando na documentação do xml-cripto, verifiquei que a propriedade sign.signingKey pode ser resolvida com o Buffer do arquivo .pem tornando o arquivo .key desnecessário. Estou fazendo um pull request.
Olá, gostaria de contribuir com a emissão de DF-e modelo 55, há algo que preciso saber?