1.2.1 • Published 5 years ago

nfe-xml v1.2.1

Weekly downloads
5
License
GNU3
Repository
github
Last release
5 years ago

nfe-xml

JavaScript Style Guide

Módulo para manipular XML de NFe, baseado em regex. Indicado para grandes processamentos em massa pela sua velocidade de processamento.

Instalação

NPM

npm install nfe-xml

Exemplos de uso

Ler o arquivo e instanciar o módulo

const fs = require('fs');
const file = fs.readFileSync('/path/to/xml', 'utf-8');
const NFe = require('nfe-xml');
const xml = new NFe(file);

xml.produtos().select(0).valor().done(); //ex. 250.65

Iterar sobre produtos do xml

//...
xml.produtos().each(produto => console.log(`${produto.icms().done()} - `)); //ex. 254.55 - 658.54 - 856.65
//...

Mapear produtos

//...
xml.produtos().map(produto => ({ valor: produto.valor().toNumber().done() })); // [{ valor: 255.50 }, { valor: 265.78 }]
//...

Filtrar produtos

//...
xml.produtos().filter(produto => produto.valor().toNumber().done() > 400); // [ NFe {}, NFe {} ]
//...

Reduzir produtos para um valor

//...
xml.produtos().reduce(produto => produto.valor().toNumber().done() + acc, 0); // 500.56
//...

Pegar o nome do emitente e destinatário

//...
xml.emitente().nome().done(); //ex. Foo ltda

xml.destinatario().nome().done(); //ex. Bar ltda
//...