Skip to content

Instantly share code, notes, and snippets.

@hprange
Created March 15, 2013 16:57
Show Gist options
  • Save hprange/5171368 to your computer and use it in GitHub Desktop.
Save hprange/5171368 to your computer and use it in GitHub Desktop.
Exemplo de preenchimento de uma NF-e usando o easy-nfe-model
// 35 é o código de SP
Integer codigoUf = 35;
// 2 é o código de outros
Integer formaPagamento = 2;
// Está sendo emitido nesse instante
DateTime dataEmissao = new DateTime();
// Série da nota fiscal
Integer serie = 1;
// Código formato retrato
Integer tipoImpressao = 1;
// Emissão normal
Integer tipoEmissao = 1;
// Código para NF-e normal
Integer finalidade = 1;
// Descrição da natureza de operação
String naturezaOperacao = "Venda de mercadoria";
// Operação de saída
Integer tipoOperacao = 1;
// Código do município da empresa (neste caso São Paulo).
Integer codigoMunicioFatoGerador = 3550308;
Ide ide = new Ide(codigoUf, naturezaOperacao, formaPagamento, serie, dataEmissao, null, null, tipoOperacao, codigoMunicioFatoGerador, tipoImpressao, tipoEmissao, finalidade, 0);
Endereco enderecoEmitente = new Endereco("rua 15 de novembro", "123", null, "centro", 1231234, "Sao Paulo", "SP", "09800000", 1058, "BRASIL", null);
Emitente emitente = new Emitente("04.192.889/0001-07", "acme", enderecoEmitente, "ISENTO", 1);
Endereco enderecoDestinatario = new Endereco("rua 25 de março", "1232", null, "centro", 1231534, "Sao Paulo", "SP", "09800000", 1058, "BRASIL", null);
Destinatario destinatario = new Destinatario(null, "222.333.444-05", "Fulano", enderecoDestinatario, null);
Produto produto = new Produto("123", "descr prod", "99", 1201, "pc", "1", new BigDecimal("100"), new BigDecimal("100"), "1", "1", new BigDecimal("0"), null, null, 1, null, null, null);
// Essa parte pode variar bastante de acordo com o tipo de produto, natureza da operação e regime tributário da empresa
Imposto imposto = new Imposto(
new ICMS(new ICMS40(1, "40")),
null,
new PIS(new PISNaoTributado("04")),
new COFINS(new COFINSNaoTributado("06"))
);
Detalhamento detalhamento = new Detalhamento(1, produto, imposto);
List <Detalhamento> detalhamentos = Arrays.asList(detalhamento);
BigDecimal baseCalculo = new BigDecimal("1");
BigDecimal totalICMS = new BigDecimal("2");
BigDecimal baseCalculoICMSST = new BigDecimal("3");
BigDecimal totalICMSST = new BigDecimal("4");
BigDecimal totalProdutos = new BigDecimal("5");
BigDecimal totalFrete = new BigDecimal("6");
BigDecimal totalSeguro = new BigDecimal("7");
BigDecimal totalDesconto = new BigDecimal("8");
BigDecimal totalII = new BigDecimal("9");
BigDecimal totalIPI = new BigDecimal("10");
BigDecimal valorPIS = new BigDecimal("11");
BigDecimal valorCOFINS = new BigDecimal("12");
BigDecimal valorOutrasDespesas = new BigDecimal("13");
BigDecimal totalNF = new BigDecimal("14");
Total total = new Total(new Total.ICMSTotal(baseCalculo, totalICMS,baseCalculoICMSST, totalICMSST, totalProdutos, totalFrete, totalSeguro, totalDesconto, totalII, totalIPI, valorPIS, valorCOFINS, valorOutrasDespesas, totalNF));
// Pode incluir as informações de transportadora, mas não é obrigatório
Transporte transporte = new Transporte(1, null, null);
InformacoesAdicionais informacoesAdicionais = new InformacoesAdicionais("extra info", "fisco");
InfNFe infNFe = new InfNFe(ide, emitente, destinatario, detalhamentos, total, transporte, informacoesAdicionais);
NFe nfe = new NFe(infNFe);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment