UNPKG

@alexotano/cfdi-sat

Version:

Libreria para la generación y sellado de XML para facturación electrónica 4.0 en México (SAT)

132 lines (115 loc) 3.01 kB
'use strict' const CFDI = require('./index').CFDI const Emisor = require('./index').Emisor const Receptor = require('./index').Receptor const Concepto = require('./index').Concepto const CuentaPredial = require('./index').CuentaPredial const InformacionAduanera = require('./index').InformacionAduanera const CfdiRelacionado = require('./index').CfdiRelacionado const Traslado = require('./index').Traslado const Retencion = require('./index').Retencion const Parte = require('./index').Parte const cfdi = new CFDI({ //'Serie': 'A', //'Folio': '167ABC', 'Fecha': '2018-06-11T08:09:23', 'NoCertificado': '20001000000300022815', 'SubTotal': '1000', 'Moneda': 'MXN', 'Total': '1160', 'TipoDeComprobante': 'I', 'FormaPago': '01', 'MetodoPago': 'PUE', //'CondicionesDePago': 'CONDICIONES', 'TipoCambio': '1', 'LugarExpedicion': '45079', }); cfdi.cer = './test/resources/LAN7008173R5.cer.pem' cfdi.key = './test/resources/LAN7008173R5.key.pem' cfdi.withOutCerts = false /*cfdi.add(new CfdiRelacionado({ 'UUID': 'A39DA66B-52CA-49E3-879B-5C05185B0EF7' }, { 'TipoRelacion': '01' }))*/ /*cfdi.add(new CfdiRelacionado({ 'UUID': 'A39DA66B-52CA-49E3-879B-5C05185B0EF7' }, { 'TipoRelacion': '01' }))*/ cfdi.add(new Emisor({ 'Rfc': 'LAN7008173R5', 'Nombre': 'CESAR RENE AGUILERA ARREOLA', 'RegimenFiscal': '601' })) cfdi.add(new Receptor({ 'Rfc': 'HEPR930322977', //'Nombre': 'RAFAEL ALEJANDRO HERNÁNDEZ PALACIOS', //'ResidenciaFiscal': 'MEX', //'NumRegIdTrib': '0000000000000', 'UsoCFDI': 'G01' })) const concepto = new Concepto({ 'ClaveProdServ': '01010101', 'ClaveUnidad': 'F52', 'NoIdentificacion': '00001', 'Cantidad': '1', 'Unidad': 'TONELADA', 'Descripcion': 'ACERO', 'ValorUnitario': '1000', 'Importe': '1000' }) concepto.add(new Traslado({ 'Base': '1000', 'Impuesto': '002', 'TipoFactor': 'Tasa', 'TasaOCuota': '0.16', 'Importe': '160' })) /* concepto.add(new Retencion({ 'Base': '17000', 'TipoFactor': 'Tasa', 'TasaOCuota': '0.530000', 'Impuesto': '002', 'Importe': '2720' })) */ /*concepto.add(new CuentaPredial({ 'Numero': '00156789' })) const parte = new Parte ({ 'ClaveProdServ': '01010101', 'NoIdentificacion': '00001', 'Cantidad': '1.5', 'Unidad': 'TONELADA', 'Descripcion': 'ACERO', 'ValorUnitario': '1500000', 'Importe': '2250000' }) parte.add(new InformacionAduanera({ 'NumeroPedimento': '10 00 1231 0034567' })) */ //concepto.add(parte) cfdi.add(concepto) cfdi.add(new Traslado({ 'Impuesto': '002', 'TipoFactor': 'Tasa', 'TasaOCuota': '0.16', 'Importe': '160' }, {}, { 'TotalImpuestosTrasladados': '160.00' })) cfdi.getXml() .then(xml => console.log(xml)) .catch(e => console.log(e.toString(), '---> e')); /* cfdi.getCadenaOriginal() .then(data => { console.log('OK' + data) }) .catch(err => { console.log('ERR' + err) }) */