Só trazendo aqui uma outra implementação que eu fiz para a nota carioca (prefeitura RJ) utilizando basicamente só o axios (envelopado pela lib easy-soap-request).
Espero que traga alguma alternativa pra quem estava com o problema. Lidar com esses sistemas antigos pode ser uma dor de cabeça, principalmente pra quem tá usando linguagens mais atuais.
Olá, Pablo.
Eu estou fazendo um método parecido para CTe, mas estou sempre tendo este erro:
Error: unable to get local issuer certificate
at TLSSocket.onConnectSecure (_tls_wrap.js:1497:34)
at TLSSocket.emit (events.js:315:20)
at TLSSocket._finishInit (_tls_wrap.js:932:8)
at TLSWrap.ssl.onhandshakedone (_tls_wrap.js:706:12) {
code: ‘UNABLE_TO_GET_ISSUER_CERT_LOCALLY’,
…
Estou tentando executar esse exemplo e recebo a seguinte mensagem:
Error: unable to get issuer certificate
at TLSSocket.onConnectSecure (node:_tls_wrap:1530:34)
at TLSSocket.emit (node:events:390:28)
at TLSSocket._finishInit (node:_tls_wrap:944:8)
at TLSWrap.ssl.onhandshakedone (node:_tls_wrap:725:12) {
Tentei instalar certificados e o problema continua.
Existe alguma configuração para fazer no firefox ?
Esse ano eu tive que fazer a integração de um sistema em Node com os WS da Sefaz de Distribuição de DF-e e Evento de Manifestação do Destinatário, então acabei criando uma biblioteca e publiquei no NPM. Para quem quiser testar na sua aplicação ou olhar o código para desenvolver uma solução própria, vou deixar o repositório do GitHub.