PHP code example of phpcfdi / ceutils

1. Go to this page and download the library: Download phpcfdi/ceutils 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/ */

    

phpcfdi / ceutils example snippets




use PhpCfdi\CeUtils\BalanzaCreator13;
use PhpCfdi\Credentials\Credential;

$creator = new BalanzaCreator13([
    'Mes' => '01',
    'Anio' => '2021',
    'TipoEnvio' => 'N',
    'FechaModBal' => '2015-01-01',
]);

$credential = Credential::openFiles(
    $this->filePath('fake-csd/EKU9003173C9.cer'),
    $this->filePath('fake-csd/EKU9003173C9.key'),
    trim($this->fileContents('fake-csd/EKU9003173C9-password.txt'))
);

$creator->addSello($credential);

$balanza = $creator->balanza();

$balanza->addCuenta([
    'NumCta' => '602.01.01',
    'SaldoIni' => '100.50',
    'Debe' => '40',
    'Haber' => '40',
    'SaldoFin' => '100.50'
]);

$balanza->addCuenta([
    'NumCta' => '602.01.02',
    'SaldoIni' => '200.00',
    'Debe' => '20',
    'Haber' => '20',
    'SaldoFin' => '200.00'
]);

$xml = $creator->asXml();



use PhpCfdi\CeUtils\CatalogoCreator13;
use PhpCfdi\Credentials\Credential;

$creator = new CatalogoCreator13([
    'Mes' => '01',
    'Anio' => '2021',
    'TipoEnvio' => 'N',
    'FechaModBal' => '2015-01-01',
]);

/** @var Credential $credential */

$creator->addSello($credential);

$catalogo = $creator->catalogo();

$catalogo->addCuenta([
    'CodAgrup' => '602',
    'NumCta' => '602.01.01',
    'Desc' => 'Account description',
    'SubCtaDe' => '602.01',
    'Nivel' => '3',
    'Natur' => 'A'
]);

$catalogo->addCuenta([
    'CodAgrup' => '602',
    'NumCta' => '602.01.02',
    'Desc' => 'Account description',
    'SubCtaDe' => '602.01',
    'Nivel' => '3',
    'Natur' => 'A'
]);

$xml = $creator->asXml();



use PhpCfdi\CeUtils\AuxiliarFoliosCreator13;
use PhpCfdi\Credentials\Credential;

$creator = new AuxiliarFoliosCreator13([
    'Mes' => '01',
    'Anio' => '2021',
    'TipoSolicitud' => 'AF',
    'NumTramite' => '123456',
]);

/** @var Credential $credential */

$creator->addSello($credential);

$reporteAuxiliarFolios = $creator->repAuxFol();

$detalleAuxiliarFolios = $reporteAuxiliarFolios->addDetalleAux([
    'NumUnIdenPol' => '194756',
    'Fecha' => '2021-03-25'
]);

$detalleAuxiliarFolios->addComprNal([
    'UUID_CFDI' => 'fake uuid',
    'MontoTotal' => '100',
    'RFC' => 'fake rfc',
    'MetPagoAux' => '',
    'Moneda' => 'MXN',
]);

$xml = $creator->asXml();



use PhpCfdi\CeUtils\AuxiliarCuentasCreator13;
use PhpCfdi\Credentials\Credential;

$creator = new AuxiliarCuentasCreator13([
    'Mes' => '01',
    'Anio' => '2021',
    'TipoSolicitud' => 'AF',
    'NumTramite' => '123456',
]);

/** @var Credential $crcedential */

$creator->addSello($crcedential);

$auxiliarCuentas = $creator->auxiliarCuentas();

$cuenta = $auxiliarCuentas->addCuenta([
    'NumCta' => '602.01.01',
    'DesCta' => 'descripción',
    'SaldoIni' => '100.00',
    'SaldoFin' => '100.00'
]);

$cuenta->addDetalleAux([
    'Fecha' => '2021-03-25',
    'NumUnIdenPol' => '123456',
    'Concepto' => 'concepto 1',
    'Debe' => '50',
    'Haber' => '0'
]);

$xml = $creator->asXml();



use PhpCfdi\CeUtils\PolizasCreator13;
use PhpCfdi\Credentials\Credential;

$creator = new PolizasCreator13([
    'Mes' => '01',
    'Anio' => '2021',
    'TipoSolicitud' => 'AF',
    'NumTramite' => '123456',
]);

/** @var Credential $credential */

$creator->addSello($credential);

$polizas = $creator->polizas();

$poliza = $polizas->addPoliza([
    'NumUnIdenPol' => '123456',
    'Fecha' => '2021-03-31',
    'Concepto' => 'Concepto póliza'
]);

$transaccion = $poliza->addTransaccion([
    'NumCta' => '123',
    'DesCta' => 'Descripción cuenta',
    'Concepto' => 'Concepto transacción',
    'Debe' => '100.00',
    'Haber' => '0.00',
]);

$transaccion->addCompNal([
    'UUID_CFDI' => 'adf9d1d2-574d-4781-8874-a9fb1e79930a',
    'RFC' => 'XAXX010101000',
    'MontoTotal' => '100.00',
    'Moneda' => 'MXN',
]);

$xml = $creator->asXml();



use PhpCfdi\CeUtils\BalanzaCreator13;

$creator = new BalanzaCreator13([]);
$asserts = $creator->validate();
if ($asserts->hasErrors()) {
    echo 'No se han encontrado errores', PHP_EOL;
} else {
    echo print_r($asserts->errors(), true), PHP_EOL;
}