Giter VIP home page Giter VIP logo

node-dfe's Introduction

Quality Gate Status

node-dfe

Biblioteca para geração/integração de NF-e/NFC-e em aplicações node.js

HELP WANTED!!

OSS no Brasil é incrivelmente dificil, especialmente com o volume de trabalho e as cargas horarias que o mercado de trabalho brasileiro acaba impondo sob nossas vidas. Isso faz com que o tempo que tenhamos para investir em manutençao de projetos OS como esse acabe sendo bem reduzido (especialmente pela natureza "non profit" deste projeto). Portanto, se voce gostou da lib, ou se tem interesse em contribuir para algum projeto OS e ganhar alguma experiencia, sinta-se livre para enviar uma PR, ou apenas ajudar com as discussoes nos Issues abertos.

Entre no grupo do Discord https://discord.gg/P8WthxdtNy

Instalação

A instalação pode ser feita diretamente via npm/yarn. Nao é requerido nenhum passo adicional.

npm install node-dfe

Requisitos

NodeJs v8+, e um certificado A1 válido. Certificados tipo A3 nao sao suportados (mas fica ai uma PR bem interessante ;) )

Exemplo

const { NFeProcessor } = require('node-dfe')
const dadosEmpresa = {...}
const dadosNFe = {...}
const nfeProcessor = new NFeProcessor(dadosEmpresa)
const docEmitido = await nfeProcessor.processarDocumento(dadosNFe)

if (!docEmitido.success) {
    throw new Exception(docEmitido.error)
} else {
    const env = docEmitido.envioNF
    console.log(env.xml_recebido)
    console.log(env.data.retEnviNFe.protNFe.infProt.nProt)
}

Exemplos completos da estrutura podem ser vistos em test.js

Releases

As releases do node-dfe seguem as liberações de versao/NT da SEFAZ, no formato [MAJOR].[MINOR].[FIX], sendo que:

  • Major: Atualização do formato geral da NFe: Atualmente com a NFe 4.0, a node-dfe segue na versão '0'.
  • Minor: Atualização de Nota Tecnica da NFe: a node-dfe contempla a partir da NT2018.005 v1.20 como versao '0'
  • Fix: Correções e implementações internas da node-dfe.

Estado Atual e Proximos Passos

Atualmente a biblioteca suporta eventos de emissao de DF-es modelo 55 e 65 (NF-e e NFC-e) para todos os estados, nos modelos sincrono e assincrono. Rotinas como: Cancelamento, Carta de Correção e Inutilização, devem ser testadas em outras UF, foram feitos testes apenas em SP.

node-dfe's People

Contributors

dmux avatar fnunezzz avatar gestefane avatar hugofialho avatar jeffersoncbd avatar lealhugui avatar lhfioravanso avatar samuelnovaes avatar tfiliano avatar vagnergon avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

node-dfe's Issues

Assinatura para Prefeitura de São Paulo

Estou tentando gerar o XML para a prefeitura de São Paulo e não consigo de maneira nenhuma, recebo sempre a mensagem:
"Rejeição: Assinatura difere do calculado."
Pelo xml-crypto ele gera um Id nas referências que precisei tirar manualmente, além disso é preciso mandar a tag do XML dentro do , ficando algo assim:
var xmlResult = '<?xml version="1.0" encoding="UTF-8"?>' + '<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">' + '<soap:Body>' + '<ConsultaNFeRecebidasRequest xmlns="http://www.prefeitura.sp.gov.br/nfe">' + '<VersaoSchema>1</VersaoSchema>' + '<MensagemXML>' + sig .getSignedXml() .replace('<?xml version="1.0" encoding="utf-8"?>', '') .replaceAll('<', '&lt;') .replaceAll('>', '&gt;') .replaceAll('Id="_0"', '') .replaceAll('#_0', '') + '</MensagemXML>' + '</ConsultaNFeRecebidasRequest>' + '</soap:Body>' + '</soap:Envelope>'

Alguém já desenvolveu esse layout na prefeitura em node e obteve sucesso?

Propriedades Obrigatórias

Olá, primeiramente gostaria de parabenizar pelo projeto, parece bastante promissor.

Estou tentando realizar testes utilizando o pacote instalado via npm em um aplicativo node com typescript, contudo, notei que as interfaces Empresa, Endereco, DocumentoFiscal, etc, tem suas propriedades obrigatórias (sem ?), sendo necessário informar todas, de modo que não consigo realizar os testes.

Ainda estou iniciando com nodejs, realizando testes aqui e ali para ver seu potencial, será que estou fazendo algo errado?

Essa Lib ainda funciona?

estou tentando fazer o teste, porem da erro, quando eu olho o codigo, por exemplo no arquivo signature ele pede no infoProvider o valor "pem" que é retirado de certificado, porém essa variavel se quer existe

Lib NPM

Pessoal no NPM não está atualizado, tem como atualizar? baixei lá e não consegui fazer funcionar, baixando esse código funcionou de primeira

Monitorar nota emitida para meu CNPJ

Boa tarde pessoal,

Poderiam me indicar alguma lib/sdk que permita via meu certificado digital que eu monitore as notas fiscais emitidas para o meu CNPJ?

Gostaria de saber quando alguém emitir uma nota fiscal de venda para o meu cnpj.

Pode ser em outra linguagem, não tem problemas.

Agradeço desde já qualquer contribuição,

Sobre integração com a Sefaz

Minha duvida é, onde aprender todo o fluxo da nota fiscal eletrônica? o que o governo espera que um sistema envie para a Sefaz? como entender tributações/impostos, para que serve cada atributo etc, sem precisar ser um contador formado?
Como entender Cancelamento, Carta de Correção e Inutilização e demais itens?

Sei que tem os documentos da Sefaz, mas parece ser tão complexo e confuso, são vários documentos com várias versões, alguns com centenas de páginas... Parece ser tão complexo para um mero mortal, que fica difícil despertar a vontade de colaborar nesse projeto open source.

O que acha de criar um Awesome Nota Fiscal Eletrônica para isso?

Obs.: Programo a um bom tempo já.

Erro de propriedade UF undefined no método NFeProcessor.processarDocumento.

Boa noite! Estou enviando um objeto mockado, o mesmo que está no arquivo "test.js", porém ao realizar o envio e buscar o retorno, estoura um erro de undefined na classe NFeProcessor no método processarDocumento().

Objeto empresa:
{ empresa: { razaoSocial: 'TESTE', nomeFantasia: 'TEST', cnpj: '', inscricaoEstadual: '', inscricaoMunicipal: '', codRegimeTributario: '3', endereco: { logradouro: 'Rua Teste', numero: 123, complemento: '', bairro: 'Bairro Teste', municipio: 'Cachoeirinha', codMunicipio: '4303004', uf: 'RS', cUf: '43', cep: '99999999', telefone: '999999999' }, certificado: { key: '', pem: '', pfx: '', password: '', rejectUnauthorized: false }, idCSC: '1', CSC: '' }, certificado: { key: '', pem: '', pfx: '', password: '', rejectUnauthorized: false }, geral: { ambiente: '2', modelo: '55', versao: '4.00' }, arquivos: { salvar: true, pastaEnvio: '', pastaRetorno: '', pastaXML: '' } }

Resultado do constructor da classe NFeProcessor:
NFeProcessor { empresa: { empresa: { razaoSocial: 'TESTE', nomeFantasia: 'TEST', cnpj: '', inscricaoEstadual: '', inscricaoMunicipal: '', codRegimeTributario: '3', endereco: [Object], certificado: [Object], idCSC: '1', CSC: '' }, certificado: { key: '', pem: '', pfx: '', password: '', rejectUnauthorized: false }, geral: { ambiente: '2', modelo: '55', versao: '4.00' }, arquivos: { salvar: true, pastaEnvio: '', pastaRetorno: '', pastaXML: '' } }, responsavelTecnico: undefined, webProxy: undefined }

Resposta do envio:
{ success: false, error: TypeError: Cannot read property 'uf' of undefined }

Método de envio:
` const nfeProcessor = new NFeProcessor(empresa, null);

const docEmitido = await nfeProcessor.processarDocumento(nfce);

if (!docEmitido.success) {
  throw new StandardError(502, docEmitido.error);
} else {
  const env = docEmitido.envioNF;
  console.log(env.xml_recebido);
  console.log(env.data.retEnviNFe.protNFe.infProt.nProt);
}`

Compatibilidade com SC

Gostaria de saber se é possivel fazer a compatibilidade para o estado de Santa Catarina.

Agradeço.

Dúvidas duvidosas

Gostaria de colocar as várias dúvidas que me veio ao tentar utilizar essa aplicação. Minha intenção é ajudar, levantando informações para melhorarmos a documentação, e me inteirar para também poder contribuir com o projeto.

Algumas perguntas podem ter relação à minha falta de conhecimento ao sistema de NF-e, caso seja complicado explicar, poderia apenas me direcionar aos documentos disponíveis pela SEFAZ ou ICP

Dúvidas

Certificados digitais

https://github.com/lealhugui/node-dfe/blob/master/test.js#L7

  1. Eu percebi que é necessário ter os arquivos .key, .pem e .pfx. Como são gerados esses arquivos? Existe uma maneira de gerar certificado sem a necessidade de comprar nas unidades certificadoras?
  2. De acordo com uma pesquisa que fiz, o arquivo .pfx é necessário somente para quem utiliza Windows, se for isso, poderia remover a importação deste arquivo se o SO for Unix por exemplo?
  3. O arquivo senha.txt seria somente inserir a senha na primeira linha do arquivo?

Responsável Técnico

https://github.com/lealhugui/node-dfe/blob/master/test.js#L38
Eu li sobre essa questão da necessidade de inserir o responsável técnico, que é a empresa responsável pelo software de emissão da NF-e. Porém, precisa ser gerado uma hash para o CSRT, certo? Ou seja, quem quiser utilizar essa ferramenta, precisa de um certo tipo de autorização da SEFAZ ou algo assim?

Sobre o arquivo de exemplo test.js

Este arquivo realmente é para teste? O que fico na dúvida é se realmente posso testar alterando este arquivo e executando-o, pois fico com receio de isto estar enviando para o ambiente de produção e não um ambiente de homologação.

No aguardo

De inicio essas são minhas dúvidas. Acredito que assim que me responder, já fico mais inteirado para poder ajudar, pois gostei muito da iniciativa deste projeto.

Gerar Schema

Como eu faço parar gerar o schema(XML) para o typescript ?

Estou querendo implementar o metodo NFeDistribuicaoDFe para consultar notas emitidas para um cnpj.

pelo que vi nos schemas que existem hoje no projeto são somente para o status e para a emissão da NFe

Contribuição

Olá, gostaria de contribuir com a emissão de DF-e modelo 55, há algo que preciso saber?

Erro na tentativa de realizar teste

Olá, estou tentando executar o test.js, fiz o apontamento do meu certificado .pfx, mas recebo essa mensagem de retorno, não estou familiarizado com requisições que utilização certificado digital, saberia me dizer como posso resolver isso?

Obrigado!

{ Error: unable to get local issuer certificate
at TLSSocket.onConnectSecure (_tls_wrap.js:1058:34)
at TLSSocket.emit (events.js:198:13)
at TLSSocket._finishInit (_tls_wrap.js:636:8) code: 'UNABLE_TO_GET_ISSUER_CERT_LOCALLY' }

utilização do módulo

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.

PDF DO DANFCE

Como vocês estão fazendo para gerar um PDF ou mesmo imprimir o DANFCE gerado por esta lib?
Eu ja possuo experiencia no dev de um fork do NfePHP. Estou migrando para o NODE.JS todos os meus serviços.

Erro ao acessar ws sefaz

alguem tem alguma ideia?

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 usando certificado pfx... ja tentei tmb exportar pra pem e key ... mesmo erro.
cadeia de certificados raiz instalada na maquina.

node v14.16.1, macOS

teste realizado:

let cert = {
key: null,
pem: null,
pfx: fs.readFileSync('/Users/juniorschroder/Downloads/xxxx.pfx'),
password: 'xxxx'
};

let dadosEmpresa: Empresa = {
razaoSocial: 'TESTE',
nomeFantasia: 'TEST',
cnpj: '',
CNAE: '',
inscricaoEstadual: '',
inscricaoMunicipal: '',
inscricaoEstadualST: '',
codRegimeTributario: '3',
endereco: {
logradouro: 'Rua Teste',
numero: '123',
complemento: '',
bairro: 'Bairro Teste',
municipio: 'Cachoeirinha',
codMunicipio: '4303004',
uf: 'RS',
cUf: '43',
cep: '99999999',
telefone: '999999999',
codPais: '1058',
pais: 'BRASIL'
},
certificado: cert,
idCSC: '1',
CSC: ''
};

const status = new StatusServicoProcessor(dadosEmpresa, "2", "55");

const retorno = await status.consultarStatusServico(status.gerarXmlStatusServico("1.07", "2", "43"), cert);

Evento cancelar

Rejeição: Chave de Acesso Invalida (Modelo diferente de 55)

Estou recebendo esse aviso quando tento usar o exemplo que está na nfetest.js com uma nota 65, como faço para arrumar? para conseguir cancelar nota 65

Compatibilidade com SP

Fala, pessoal! Excelente projeto, parabéns.

Notei que o projeto só é compatível com RS/PR. Rola liberar também para SP?

Andamento do projeto.

Olá, saudações!
Antes de mais nada, gostaria de dizer que acho muito bacana a iniciativa da lib, vai ajudar muita gente com certeza. 👏👏

Tenho interesse na lib e gostaria de saber se tem alguma previsão da liberação de emissão NFe(55).
Também me coloca a disposição para contribuir no desenvolvimento.

Error: unable to get local issuer certificate

Estou fazendo o teste de emissão e esta dando esse erro "Error: unable to get local issuer certificate".
Erro:

Error: unable to get local issuer certificate
    at TLSSocket.onConnectSecure (_tls_wrap.js:1364:34)
    at TLSSocket.emit (events.js:305:20)
    at TLSSocket._finishInit (_tls_wrap.js:825:8)
    at TLSWrap.ssl.onhandshakedone (_tls_wrap.js:621:12) {
  code: 'UNABLE_TO_GET_ISSUER_CERT_LOCALLY'
}

meu obj:

let cert = {
    pem: fs.readFileSync('rs/rs.pem'),
    pfx: fs.readFileSync('rs/rs.pfx'),
    key: fs.readFileSync('rs/rs.key'),
    crt: fs.readFileSync('rs/rs.crt'),
    password: "*******"
};

Nova release com bump das depencias

A versão 0.0.25 que está no npm está com dependencias diferentes do que está na branch principal do projeto.

Seria possível fazer o bump?

Nota de devolução

Não consegui descobrir como fazer nota de devolução.

pelo que andei pesquisando, só precisa adicionar uma chave dentro do grupo "ide"

<NFref>
      <refNFe>87594837485745849.........938475843847</refNFe>
</NFref>

É fácil de fazer isso e incluir em um update?

Rejeição 225: Alguns campos do XML estão com valores NaN

Estou tentando realizar um teste de emissão de NF baseado no arquivo teste.js.

Esse são meus dados:

const empresa = {
    razaoSocial: 'NOME EMPRESA',
      nomeFantasia: 'NOME EMPRESA',
      cnpj: '03976353050688',
      inscricaoEstadual: '310339411119',
      inscricaoMunicipal: '',
      codRegimeTributario: '1',
      endereco: {
          logradouro: 'Rua Teste',
          numero: 123,
          complemento: '',
          bairro: 'Bairro Teste',
          municipio: 'Franca',
          codMunicipio: '3516200',
          uf: 'SP',
          cUf: '35',
          cep: '14403500',
          telefone: '999999999'
      },
      certificado: cert,
      idCSC: '1',
      CSC: ''
  }
let responsavelTecnico = {
    cnpj: 'empresa teste',
    contato: 'teste',
    email: '[email protected]',
    fone: '999999999',
    idCSRT: '01',
    CSRT: 'G8063VRTNDMO886SFNK5LDUDEI24XJ22YIPO'
};
let documento = {
    dhEmissao: moment().format(),
    ambiente: '2',
    modelo: '65',
    numeroNota: randomInt(2, 9999),
    serie: '20',
    naturezaOperacao: 'VENDA',
    tipoDocumentoFiscal: '1',
    identificadorDestinoOperacao: '1',
    codUF: '35',
    codIbgeFatoGerador: '4303103',
    processoEmissao: '0',
    finalidadeEmissao: '1',
    indConsumidorFinal: '1',
    indPresenca: '1',
    tipoEmissao: '1',
    tipoImpressao: '4',
    versaoAplicativoEmissao: 'NODE-NFE TEST 1.0',
};
let dest = {
    indicadorIEDestinario: '9',
    documento: '41267310324',
    nome: 'DESTINATARIO TESTE',
    email: '[email protected]',
    isEstrangeiro: false,
    endereco: {
        logradouro: 'RUA TEST',
        numero: 1231,
        complemento: '',
        bairro: 'teste',
        municipio: 'Franca',
        codMunicipio: '4303103',
        cUf: '35',
        uf: 'SP',
        cep: '14403500',
        telefone: '5111111111'
    }
};


let transp = {
  modalidateFrete: '9'
};

let infoAdic = {
  infoComplementar: 'TESTTESTETSTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT'
};

let produtos = [];
let valorProduto = 31.80;
let valorTotalProdutos = 0;
for (let i = 1; i <= 1; i++) {
    valorTotalProdutos += valorProduto;
    produtos.push({
        prod: {
            codigo: '84233',
            cEAN: '7898221456293',
            descricao: 'PRODUTO TESTE',
            cest: '2104400',
            NCM: '85164000',
            CFOP: '5102',
            unidadeComercial: 'SAC',
            quantidadeComercial: '1.0000',
            valorUnitarioComercial: valorProduto.toFixed(2),
            valorTotal: valorProduto.toFixed(2),
            cEANTrib: '7898221456293',
            unidadeTributavel: 'SAC',
            quantidadeTributavel: '1.0000',
            valorUnitarioTributavel: valorProduto.toFixed(2),
            indicadorTotal: '1',
            valorFrete: '',
            valorSeguro: '',
            valorDesconto: '',
            valorOutro: '',
            numeroPedido: '123',
            numeroItemPedido: '1',
        },
        imposto: {
            valorAproximadoTributos: 0,
            icms: {
                CST: '00',
                orig: '0',
                modBC: '3',
                vBC: '629.90',
                vICMS: '113.40',
                pICMS: '18.00',
                aliquota: '0.00',
                valor: '0.00',
                vBCST: '0.00',
                valorST: '0.00',
                aliquotaST: '0.00',
                percentualReducaoBaseCalc: '0.00',
            }
        },
        //infoAdicional: 'TEST',
        numeroItem: i,
    });
}


let pagamento = {
  //valorTroco: '',
  pagamentos: [{
      indicadorFormaPagamento: '',
      formaPagamento: '01',
      valor: valorTotalProdutos.toFixed(2),
      dadosCartao: {
        tipoIntegracao: '1',
        cnpj: '99999999999999',
        bandeira: '01',
        codAutorizacao: '1321231231'
      }
  }]
};

let icmsTot = {
    vBC: '629.90',
    vICMS: '113.40',
    vICMSDeson: '0.00',
    //vFCPUFDest: '0.00',
    //vICMSUFDest:'0.00',
    //vICMSUFRemet: '0.00',
    vFCP: '0.00',
    vBCST: '0.00',
    vST: '0.00',
    vFCPST: '0.00',
    vFCPSTRet: '0.00',
    vProd: valorTotalProdutos.toFixed(2),
    vFrete: '0.00',
    vSeg: '0.00',
    vDesc: '0.00',
    vII: '0.00',
    vIPI: '0.00',
    vIPIDevol: '0.00',
    vPIS: '0.00',
    vCOFINS: '0.00',
    vOutro: '0.00',
    vNF: valorTotalProdutos.toFixed(2),
    //vTotTrib: '0.00',
};

let nfce = {
    docFiscal: documento,
    destinatario: dest,
    produtos: produtos,
    total: {icmsTot: icmsTot},
    transporte: transp,
    pagamento: pagamento,
    infoAdicional: infoAdic
};

E então eu recebo:

success: true,
    data: {
      retEnviNFe: {
        tpAmb: '2',
        verAplic: 'SP_NFCE_PL_009_V400',
        cStat: '225',
        xMotivo: 'Rejeição: Falha no Schema XML do lote de NFe',
        cUF: '35',
        dhRecbto: '2020-02-27T07:56:18-03:00'

Ao colocar o xml gerado no validador, eu percebi que vários campos estão com valor NaN, como:

infNFe: {
      '$': {
        versao: '4.00',
        Id: 'NFe352002039769530001-8865020000006937186499326**NaN**'
      },

<Reference URI="#NFe352002039769530001-8865020000006937186499326**NaN**">

<![CDATA[https://www.homologacao.nfce.fazenda.sp.gov.br/qrcode?p=352002039769530001-8865020000006937186499326**NaN**|2|2|1|B660CC2A687BEFDFE13B8651FBF2926ABFAE9EA5]]>

<cDV>NaN</cDV>

infNFeSupl: {
      qrCode: '<https://www.homologacao.nfce.fazenda.sp.gov.br/qrcode?p=352002039769530001-8865020000006937186499326**NaN**|2|2|1|B660CC2A687BEFDFE13B8651FBF2926ABFAE9EA5>',
      urlChave: 'https://www.homologacao.nfce.fazenda.sp.gov.br/consulta'
    }

Alguém poderia me ajudar?

Problema com a requisição.

Olá, estou tentando implementar a classe de testes para gerar uma nfce(PR), porém após fazer algumas modificações para gerar o xml da maneira necessária, o oo modulo me retorna status 200 e success true, mas não me retorna data e me diz apenas que ocorreu um erro na requisição. Testei o arquivo xml juntamente com o certificado no nosso sistema de emissão de nota fiscal, e ele conseguiu emitir a nota gerada pelo próprio modulo, porém quando o módulo tenta enviar ele me retorna isso.

message:"Erro ao realizar requisição"
stack:"Error: Erro ao realizar requisição\n at NFeProcessor.transmitirXml (c:\NodeJs\ComandaX Portal\v1.0 javascript\node_modules\node-dfe\lib\factory\processor\nfeProcessor.js:164:23)\n at process._tickCallback (internal/process/next_tick.js:68:7)"
proto:Object {constructor: , name: "Error", message: "", …}

Ajuda intalacao

Ola gostaria que algum pudesse ma ajudar estou com dificuldade em rodar o comando de instalação.

[liveuser@localhost-live tf-nfe]$ npm install node-dfe npm WARN deprecated [email protected]: request has been deprecated, see request/request#3142
npm WARN deprecated [email protected]: request has been deprecated, see request/request#3142
npm WARN deprecated [email protected]: this library is no longer supported
npm WARN deprecated [email protected]: This module moved to @hapi/hawk. Please make sure to switch over as this distribution is no longer supported and may contain bugs and critical security issues.
npm WARN deprecated [email protected]: Use uuid module instead
npm WARN deprecated [email protected]: ReDoS vulnerability parsing Set-Cookie https://nodesecurity.io/advisories/130
npm WARN deprecated [email protected]: This version has been deprecated in accordance with the hapi support policy (hapi.im/support). Please upgrade to the latest version to get the best features, bug fixes, and security patches. If you are unable to upgrade at this time, paid support is available for older versions (hapi.im/commercial).
npm WARN deprecated [email protected]: This module moved to @hapi/sntp. Please make sure to switch over as this distribution is no longer supported and may contain bugs and critical security issues.
npm WARN deprecated [email protected]: This version has been deprecated in accordance with the hapi support policy (hapi.im/support). Please upgrade to the latest version to get the best features, bug fixes, and security patches. If you are unable to upgrade at this time, paid support is available for older versions (hapi.im/commercial).
npm WARN deprecated [email protected]: This version has been deprecated in accordance with the hapi support policy (hapi.im/support). Please upgrade to the latest version to get the best features, bug fixes, and security patches. If you are unable to upgrade at this time, paid support is available for older versions (hapi.im/commercial).
npm WARN deprecated [email protected]: this library is no longer supported

[email protected] install /home/liveuser/Desktop/TF/tf-nfe/node_modules/node-expat
node-gyp rebuild

gyp ERR! build error
gyp ERR! stack Error: not found: make
gyp ERR! stack at getNotFoundError (/home/liveuser/.nvm/versions/node/v8.17.0/lib/node_modules/npm/node_modules/which/which.js:13:12)
gyp ERR! stack at F (/home/liveuser/.nvm/versions/node/v8.17.0/lib/node_modules/npm/node_modules/which/which.js:68:19)
gyp ERR! stack at E (/home/liveuser/.nvm/versions/node/v8.17.0/lib/node_modules/npm/node_modules/which/which.js:80:29)
gyp ERR! stack at /home/liveuser/.nvm/versions/node/v8.17.0/lib/node_modules/npm/node_modules/which/which.js:89:16
gyp ERR! stack at /home/liveuser/.nvm/versions/node/v8.17.0/lib/node_modules/npm/node_modules/isexe/index.js:42:5
gyp ERR! stack at /home/liveuser/.nvm/versions/node/v8.17.0/lib/node_modules/npm/node_modules/isexe/mode.js:8:5
gyp ERR! stack at FSReqWrap.oncomplete (fs.js:152:21)
gyp ERR! System Linux 5.8.15-301.fc33.x86_64
gyp ERR! command "/home/liveuser/.nvm/versions/node/v8.17.0/bin/node" "/home/liveuser/.nvm/versions/node/v8.17.0/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /home/liveuser/Desktop/TF/tf-nfe/node_modules/node-expat
gyp ERR! node -v v8.17.0
gyp ERR! node-gyp -v v5.0.5
gyp ERR! not ok
npm WARN [email protected] No description
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: [email protected] (node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for [email protected]: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})

npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! [email protected] install: node-gyp rebuild
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR! /home/liveuser/.npm/_logs/2021-02-22T17_50_08_990Z-debug.log

README.md mais claro

Encontrei a biblioteca navegando pelo NPM e necessito muuuuito de uma biblioteca que gere NFC-e para o meu sistema NodeJS, porém não consegui compreender bem quais informações devem ser enviadas para realizar o procedimento de criaçao da nota fiscal, também senti falta de detalhes sobre o cert, como obter, formatos..

Error: error:0909006C:PEM routines:get_name:no start line

Ola Pessoal!
Achei esse pacote ontem mas estou com dificuldade de testar.
Quando tento verificar o status do servico tudo vai bem, mas quando tento processar um documento recebo o erro abaixo:

nfeProcessor.executar: Erro ao realizar requisição { success: false, error: Error: error:0909006C:PEM routines:get_name:no start line at Sign.sign (internal/crypto/sig.js:110:29) at RSASHA1.getSignature (/home/nickael/NodeJS/teste-nfce/node_modules/xml-crypto/lib/signed-xml.js:91:22) at SignedXml.calculateSignatureValue (/home/nickael/NodeJS/teste-nfce/node_modules/xml-crypto/lib/signed-xml.js:456:32) at SignedXml.computeSignature (/home/nickael/NodeJS/teste-nfce/node_modules/xml-crypto/lib/signed-xml.js:814:10) at Function.signXmlX509 (/home/nickael/NodeJS/teste-nfce/node_modules/node-dfe/lib/factory/signature.js:35:13) at EnviaProcessor.executar (/home/nickael/NodeJS/teste-nfce/node_modules/node-dfe/lib/factory/processor/enviaProcessor.js:65:53) at NFeProcessor.executar (/home/nickael/NodeJS/teste-nfce/node_modules/node-dfe/lib/factory/processor/nfeProcessor2.js:55:48) at NFeProcessor.processarDocumento (/home/nickael/NodeJS/teste-nfce/node_modules/node-dfe/lib/factory/processor/nfeProcessor2.js:48:33) at Object.<anonymous> (/home/nickael/NodeJS/teste-nfce/src/index.ts:372:33) at Module._compile (internal/modules/cjs/loader.js:1085:14) { library: 'PEM routines', function: 'get_name', reason: 'no start line', code: 'ERR_OSSL_PEM_NO_START_LINE' } }

Alguem passou por isso?
Desde já obrigado pela atenção.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.