1. Go to this page and download the library: Download christiancastrorios/cfdi library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
use Charles\CFDI\CFDI;
use Charles\CFDI\Node\Relacionado;
$cfdi = new CFDI([...]);
$cfdi->add(new Relacionado([
'UUID' => 'XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX',
], [
'TipoRelacion' => '01',
]));
use Charles\CFDI\CFDI;
use Charles\CFDI\Node\Emisor;
$cfdi = new CFDI([...]);
$cfdi->add(new Emisor([
'Rfc' => 'XAXX010101000',
'Nombre' => 'Florería SA de CV',
'RegimenFiscal' => '601',
]));
use Charles\CFDI\CFDI;
use Charles\CFDI\Node\Receptor;
$cfdi = new CFDI([...]);
$cfdi->add(new Receptor([
'Rfc' => 'XEXX010101000',
'Nombre' => 'Orlando Charles',
'ResidenciaFiscal' => 'USA',
'NumRegIdTrib' => '121585958',
'UsoCFDI' => 'G01',
]));
use Charles\CFDI\CFDI;
use Charles\CFDI\Node\Impuesto\Retencion;
$cfdi->add(new Retencion([
'Impuesto' => '002',
'Importe' => '35000',
]));
use Charles\CFDI\CFDI;
use Charles\CFDI\Node\Concepto;
use Charles\CFDI\Node\Impuesto\Retencion;
$cfdi = new CFDI([...]);
$concepto = new Concepto([
'ClaveProdServ' => '10317331',
'NoIdentificacion' => 'UT421511',
'Cantidad' => '24',
'ClaveUnidad' => 'H87',
'Unidad' => 'Pieza',
'Descripcion' => 'Arreglo de 24 tulipanes rosadas recién cortados',
'ValorUnitario' => '56.00',
'Importe' => '1344.00',
'Descuento' => '10.00',
]);
$concepto->add(new Retencion([
]));
$cfdi->add($concepto);
use Charles\CFDI\CFDI;
use Charles\CFDI\Node\Impuesto\TrasladoTotal;
use Charles\CFDI\Node\Impuesto\TotalImpuestosTraslado;
$impuesto = new TotalImpuestosTraslado([
'TotalImpuestosTrasladados' => '420.64'
]);
$traslado = new TrasladoTotal([
'Importe' => '420.64',
'TasaOCuota' => '0.160000',
'TipoFactor' => 'Tasa',
'Impuesto' => '002'
]);
$impuesto->add($traslado);
$cfdi->add($impuesto);
use Charles\CFDI\CFDI;
use Charles\CFDI\Node\Concepto;
use Charles\CFDI\Node\Impuesto\Traslado;
$cfdi = new CFDI([...]);
$concepto = new Concepto([
'ClaveProdServ' => '10317331',
'NoIdentificacion' => 'UT421511',
'Cantidad' => '24',
'ClaveUnidad' => 'H87',
'Unidad' => 'Pieza',
'Descripcion' => 'Arreglo de 24 tulipanes rosadas recién cortados',
'ValorUnitario' => '56.00',
'Importe' => '1344.00',
'Descuento' => '10.00',
]);
$concepto->add(new Traslado([
]));
$cfdi->add($concepto);
use Charles\CFDI\CFDI;
use Charles\CFDI\Node\Concepto;
use Charles\CFDI\Node\InformacionAduanera;
$cfdi = new CFDI([...]);
$concepto = new Concepto([
'ClaveProdServ' => '10317331',
'NoIdentificacion' => 'UT421511',
'Cantidad' => '24',
'ClaveUnidad' => 'H87',
'Unidad' => 'Pieza',
'Descripcion' => 'Arreglo de 24 tulipanes rosadas recién cortados',
'ValorUnitario' => '56.00',
'Importe' => '1344.00',
'Descuento' => '10.00',
]);
$concepto->add(new InformacionAduanera([
'NumeroPedimento' => '00 00 0000 0000000',
]));
$cfdi->add($concepto);
use Charles\CFDI\CFDI;
use Charles\CFDI\Node\Concepto;
use Charles\CFDI\Node\CuentaPredial;
$cfdi = new CFDI([...]);
$concepto = new Concepto([...]);
$concepto->add(new CuentaPredial([
'Numero' => '00000',
]));
$cfdi->add($concepto);