Funcionando
Showing
... | ... | @@ -28,101 +28,133 @@ PASSWORD_FACTURA_DIGITAL=password |
# Como utilizar la libreria: | ||
Registrar los datos generales de la factura | ||
> $factura = FacturaDigital::setSerie('F') | ||
> ->setFolio('71278') | ||
> ->setFecha('AUTO') | ||
> ->setFormaPago('01') | ||
> ->setCondicionesDePago('CONDICIONES') | ||
> ->setSubTotal('200'.00) | ||
> ->setDescuento('50.00') | ||
> ->setMoneda('MXN') | ||
> ->setTipoCambio('1') | ||
> ->setTotal('174.00') | ||
> ->setTipoDeComprobante('I') | ||
> ->setMetodoPago('PUE') | ||
> ->setLugarExpedicion('67150') | ||
> ->setLeyendaFolio('Factura'); | ||
Configurar regimen del emisor | ||
> $emisor = FacturaDigital::emisor() | ||
> ->setRegimenFiscal('612') | ||
> ->getData(); | ||
Configurar datos del receptor | ||
> $receptor = FacturaDigital::receptor() | ||
> ->setRfc('NDI120326HF5') | ||
> ->setNombre('Novatech Digital SA de CV') | ||
> ->setNumRegIdTrib('') | ||
> ->setUsoCFDI('G03') | ||
> ->setCalle('Palmas') | ||
> ->setNoExt('129') | ||
> ->setColonia('Centro') | ||
> ->setMunicipio('Guadalupe') | ||
> ->setEstado('Nuevo León') | ||
> ->setPais('Mexico') | ||
> ->setCodigoPostal('98000') | ||
> ->getData(); | ||
Registrar los conceptos a facturar | ||
> $concepto = FacturaDigital::concepto() | ||
> ->setClaveProdServ('01010101') | ||
> ->setNoIdentificacion('01') | ||
> ->setCantidad('1.00') | ||
> ->setClaveUnidad('KGM') | ||
> ->setUnidad('Kilo') | ||
> ->setDescripcion('Pantalla LSC Sharp') | ||
> ->setValorUnitario('100.00') | ||
> ->setImporte('100') | ||
> ->setDescuento('25') | ||
> ->setImpuestoBase('75.00') | ||
> ->setImpuesto('002') | ||
> ->setImpuestoTipoFactor('Tasa') | ||
> ->setImpuestoTasaOCuota('0.160000') | ||
> ->setImpuestoImporte('12.00') | ||
> ->getData(); | ||
> $concepto2 = FacturaDigital::concepto() | ||
> ->setClaveProdServ('01010101') | ||
> ->setNoIdentificacion('02') | ||
> ->setCantidad('1.00') | ||
> ->setClaveUnidad('KGM') | ||
> ->setUnidad('PZA') | ||
> ->setDescripcion('Memoria USB') | ||
> ->setValorUnitario('100.00') | ||
> ->setImporte('100.00') | ||
> ->setDescuento('25.00') | ||
> ->setImpuestoBase('75.00') | ||
> ->setImpuesto('002') | ||
> ->setImpuestoTipoFactor('Tasa') | ||
> ->setImpuestoTasaOCuota('0.16000') | ||
> ->setImpuestoImporte('12.00') | ||
> ->getData(); | ||
Agregar los conceptos a la lista | ||
> $lista = FacturaDigital::listaConceptos() | ||
> ->setConceptos(array($concepto, $concepto2)) | ||
> ->getData(); | ||
Agregar información del impuesto | ||
> $impuesto = FacturaDigital::impuesto() | ||
> ->setTotalImpuestosTrasladados('24.00') | ||
> ->setImpuesto('002') | ||
> ->setTipoFactor('Tasa') | ||
> ->setTasaOCuota('0.16000') | ||
> ->setImporte('24.00') | ||
> ->getData(); | ||
Agregar los atributos anteriores a la factura final | ||
Configurar regimen fiscal del emisor | ||
> $emisor = FacturaDigital::emisor() | ||
> ->setRegimenFiscal('612') | ||
> ->getData(); | ||
Configurar la información del receptor | ||
> $receptor = FacturaDigital::receptor() | ||
> ->setRfc('NDI120326HF5') | ||
> ->setNombre('Novatech Digital SA de CV') | ||
> //->setNumRegIdTrib('') | ||
> ->setUsoCFDI('G03') | ||
> ->setCalle('Palmas') | ||
> ->setNoExt('129') | ||
> ->setColonia('Centro') | ||
> ->setMunicipio('Guadalupe') | ||
> ->setEstado('Nuevo León') | ||
> ->setPais('Mexico') | ||
> ->setCodigoPostal('98000') | ||
> ->getData(); | ||
Registrar los conceptos de la factura | ||
> $concepto = FacturaDigital::concepto() | ||
> ->setClaveProdServ('01010101') | ||
> ->setNoIdentificacion('01') | ||
> ->setCantidad('3.00') | ||
> ->setClaveUnidad('KGM') | ||
> ->setUnidad('Kilo') | ||
> ->setDescripcion('Coca cola') | ||
> ->setValorUnitario('15') | ||
> ->getData(); | ||
> $concepto2 = FacturaDigital::concepto() | ||
> ->setClaveProdServ('01010101') | ||
> ->setNoIdentificacion('02') | ||
> ->setCantidad('2') | ||
> ->setClaveUnidad('KGM') | ||
> ->setUnidad('PZA') | ||
> ->setDescripcion('Hamburgruesa') | ||
> ->setValorUnitario('70') | ||
> ->getData(); | ||
> $concepto3 = FacturaDigital::concepto() | ||
> ->setClaveProdServ('01010101') | ||
> ->setNoIdentificacion('03') | ||
> ->setCantidad('3') | ||
> ->setClaveUnidad('KGM') | ||
> ->setUnidad('PZA') | ||
> ->setDescripcion('Alitas Personal') | ||
> ->setValorUnitario('50') | ||
> ->getData(); | ||
Agregar a la lista de los conceptos | ||
> $lista = FacturaDigital::listaConceptos(); | ||
> $lista->setConceptos(array($concepto, $concepto2, $concepto3)); | ||
Obtener los totales (Impuestos y conceptos libres de impuestos) | ||
> $totales = $lista->getTotalConceptos(); | ||
> retorna ['totalConceptos', 'totalImpuestos'] | ||
Registrar datos generales de la factura | ||
> $factura = FacturaDigital::setSerie('F') | ||
> ->setFolio('71278') | ||
> ->setFecha('AUTO') | ||
> ->setFormaPago('01')//01 Efectivo | ||
> ->setCondicionesDePago('Pago de contado') | ||
> ->setMoneda('MXN') | ||
> ->setTipoCambio('1') | ||
> ->setTipoDeComprobante('I') | ||
> ->setMetodoPago('PUE') | ||
> ->setLugarExpedicion('67150') //C.P. | ||
> ->setLeyendaFolio('Factura') | ||
> ->setSubTotal($totales['totalConceptos']) | ||
> //->setDescuento('30.00') | ||
> ->setTotal($totales['totalConceptos'] + $totales['totalImpuestos'] ); | ||
Registrar impuesto total | ||
> $impuesto = FacturaDigital::impuesto() | ||
> ->getData($totales['totalImpuestos']); | ||
Agregar todos los datos a la factura | ||
> $factura->setEmisor($emisor); | ||
> $factura->setReceptor($receptor); | ||
> $factura->setConceptos($lista); | ||
> $factura->setConceptos($lista->getData()); | ||
> $factura->setImpuestos($impuesto); | ||
Leer datos de la factura | ||
> $factura->getData(); | ||
Enviar la factura | ||
> $factura->enviar(); | ||
\ No newline at end of file | ||
Generar factura | ||
> $factura_final = $factura->enviar(); | ||
retorna el siguiente arreglo | ||
> { | ||
> mensaje: "Timbrado exitoso", | ||
> codigo: 200, | ||
> cfdi: | ||
> { | ||
> NoCertificado: "", | ||
> UUID: "", | ||
> FechaTimbrado: "2018-06-28T16:33:27", | ||
> RfcProvCertif: "FEL100622S88", | ||
> SelloCFD:"", | ||
> NoCertificadoSAT: "20001000000300022323", | ||
> SelloSAT: "", | ||
> CadenaOrigTFD: "", | ||
> CadenaQR: "", | ||
> XmlBase64: "", | ||
> PDF: "", | ||
> XML: "" | ||
> } | ||
> } | ||
Enviar factura por correo | ||
> $enviar = $factura->enviarCorreo($uuid, '[email protected]'); | ||
Esto retorna un booleano | ||
> if ($enviar) { | ||
> return "Factura enviada por correo"; | ||
> } else { | ||
> return "Errorsillo"; | ||
> } | ||
Para cancelar un CFDI | ||
> $cancela = $factura->cancelarCFDI('UUID'); | ||
\ No newline at end of file |
This diff is collapsed.
Click to expand it.
Please
register
or
sign in
to comment