La versión de su navegador no está debidamente actualizada. Le recomendamos actualizarla a la versión más reciente.

NUEVO : Envío de la factura al WhatsAPP del Cliente

Como crear una factura tasa cero exento y tasa 16 en PHP SDK

Como crear una factura tasa cero exento y tasa 16 en PHP SDK

Publicado 22/09/2023

A continuación se muestra un ejemplo de factura tasa cero exento y tasa 16 en PHP SDK

Ejemplo de factura tasa cero exento y tasa 16 en PHP SDK

 

 

<?php
// Se desactivan los mensajes de debug
error_reporting(~(E_WARNING|E_NOTICE));
//error_reporting(E_ALL);

//phpinfo();

// Se especifica la zona horaria
date_default_timezone_set('America/Mexico_City');


// Se incluye el SDK
require_once '../../sdk2.php';

// Se especifica la version de CFDi 4.0
$datos['version_cfdi'] = '4.0';
$datos['validacion_local'] = 'NO';
// Ruta del XML Timbrado
$datos['cfdi']='../../timbrados/cfdi_ejemplo_factura_tasa_cero_exento_16.xml';

// Ruta del XML de Debug
$datos['xml_debug']='../../timbrados/sin_timbrar_cfdi_ejemplo_factura_tasa_cero_exento_16.xml';

// Credenciales de Timbrado
$datos['PAC']['usuario'] = 'DEMO700101XXX';
$datos['PAC']['pass'] = 'DEMO700101XXX';
$datos['PAC']['produccion'] = 'NO';

// Rutas y clave de los CSD
$datos['conf']['cer'] = '../../certificados/EKU9003173C9.cer.pem';
$datos['conf']['key'] = '../../certificados/EKU9003173C9.key.pem';
$datos['conf']['pass'] = '12345678a';

// Datos de la Factura
$datos['factura']['condicionesDePago'] = 'CONTADO';
$datos['factura']['descuento'] = '0.00';
$datos['factura']['fecha_expedicion'] = date('Y-m-d\TH:i:s', time() - 120);
$datos['factura']['folio'] = '659155';
$datos['factura']['forma_pago'] = '04';
$datos['factura']['LugarExpedicion'] = '77712';
$datos['factura']['metodo_pago'] = 'PUE';
$datos['factura']['moneda'] = 'MXN';
$datos['factura']['serie'] = 'A';
$datos['factura']['subtotal'] = 286.21;
$datos['factura']['tipocambio'] = 1;
$datos['factura']['tipocomprobante'] = 'I';
$datos['factura']['total'] = 300.00;
$datos['factura']['Exportacion'] = '01';
// Datos del Emisor
$datos['emisor']['rfc'] = 'EKU9003173C9'; //RFC DE PRUEBA
$datos['emisor']['nombre'] = 'ESCUELA KEMPER URGATE'; // EMPRESA DE PRUEBA
$datos['emisor']['RegimenFiscal'] = '603';

// Datos del Receptor
$datos['receptor']['rfc'] = 'URE180429TM6';
$datos['receptor']['nombre'] = 'UNIVERSIDAD ROBOTICA ESPAÑOLA';
$datos['receptor']['UsoCFDI'] = 'G01';
//opcional
$datos['receptor']['DomicilioFiscalReceptor'] = '65000';
//$datos['receptor']['ResidenciaFiscal']= 'MEX';
//$datos['receptor']['NumRegIdTrib'] = 'B';
$datos['receptor']['RegimenFiscalReceptor'] = '601';

// Se agregan los conceptos

//PRODUCTO CON IMPUESTO EXENTO
$datos['conceptos'][0]['cantidad'] = 1.00;
$datos['conceptos'][0]['unidad'] = 'PIEZA';
$datos['conceptos'][0]['ID'] = "M7390Z";
$datos['conceptos'][0]['descripcion'] = "PRODUCTO EXENTO DE IMPUESTOS";
$datos['conceptos'][0]['valorunitario'] = 100.00;
$datos['conceptos'][0]['importe'] = 100.00;
$datos['conceptos'][0]['ClaveProdServ'] = '53102700';
$datos['conceptos'][0]['ClaveUnidad'] = 'H87';
$datos['conceptos'][0]['ObjetoImp'] = '02';

$datos['conceptos'][0]['Impuestos']['Traslados'][0]['Base'] = 100;
$datos['conceptos'][0]['Impuestos']['Traslados'][0]['Impuesto'] = '002';
$datos['conceptos'][0]['Impuestos']['Traslados'][0]['TipoFactor'] = 'Exento';

//PRODUCTO CON TASA CERO
$datos['conceptos'][1]['cantidad'] = 1.00;
$datos['conceptos'][1]['unidad'] = 'PIEZA';
$datos['conceptos'][1]['ID'] = "M7390Z";
$datos['conceptos'][1]['descripcion'] = "PRODUCTO CON TASA CERO";
$datos['conceptos'][1]['valorunitario'] = 100.00;
$datos['conceptos'][1]['importe'] = 100.00;
$datos['conceptos'][1]['ClaveProdServ'] = '53102700';
$datos['conceptos'][1]['ClaveUnidad'] = 'H87';
$datos['conceptos'][1]['ObjetoImp'] = '02';

$datos['conceptos'][1]['Impuestos']['Traslados'][0]['Base'] = 100.00;
$datos['conceptos'][1]['Impuestos']['Traslados'][0]['Impuesto'] = '002';
$datos['conceptos'][1]['Impuestos']['Traslados'][0]['TipoFactor'] = 'Tasa';
$datos['conceptos'][1]['Impuestos']['Traslados'][0]['TasaOCuota'] = '0.000000';
$datos['conceptos'][1]['Impuestos']['Traslados'][0]['Importe'] = 0.00;

//PRODUCTO CON TASA CERO
$datos['conceptos'][2]['cantidad'] = 1.00;
$datos['conceptos'][2]['unidad'] = 'PIEZA';
$datos['conceptos'][2]['ID'] = "M7390Z";
$datos['conceptos'][2]['descripcion'] = "producto con tasa 16";
$datos['conceptos'][2]['valorunitario'] = 86.21;
$datos['conceptos'][2]['importe'] = 86.21;
$datos['conceptos'][2]['ClaveProdServ'] = '53102700';
$datos['conceptos'][2]['ClaveUnidad'] = 'H87';
$datos['conceptos'][2]['ObjetoImp'] = '02';

$datos['conceptos'][2]['Impuestos']['Traslados'][0]['Base'] = 86.21;
$datos['conceptos'][2]['Impuestos']['Traslados'][0]['Impuesto'] = '002';
$datos['conceptos'][2]['Impuestos']['Traslados'][0]['TipoFactor'] = 'Tasa';
$datos['conceptos'][2]['Impuestos']['Traslados'][0]['TasaOCuota'] = '0.160000';
$datos['conceptos'][2]['Impuestos']['Traslados'][0]['Importe'] =13.79;

$datos['impuestos']['TotalImpuestosTrasladados'] = 13.79;

// Se agregan los Impuestos SOLO EL QUE TIENE TASA > 0

$datos['impuestos']['translados'][0]['Base'] = 86.21;
$datos['impuestos']['translados'][0]['impuesto'] = '002';
$datos['impuestos']['translados'][0]['tasa'] = '0.160000';
$datos['impuestos']['translados'][0]['importe'] = 13.79;
$datos['impuestos']['translados'][0]['TipoFactor'] = 'Tasa';

$datos['impuestos']['translados'][1]['Base'] = 100.00;
$datos['impuestos']['translados'][1]['impuesto'] = '002';
$datos['impuestos']['translados'][1]['tasa'] = '0.000000';
$datos['impuestos']['translados'][1]['importe'] = 0.00;
$datos['impuestos']['translados'][1]['TipoFactor'] = 'Tasa';


// Se ejecuta el SDK
$res = mf_genera_cfdi4($datos);

foreach ($res AS $variable => $valor) {
$valor = htmlentities($valor);
$valor = str_replace('<br/>', '<br/>', $valor);
echo "<b>[$variable]=</b>$valor<hr>";
}