PHP code example of aeunius / laravel-catalogos-sunat

1. Go to this page and download the library: Download aeunius/laravel-catalogos-sunat 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/ */

    

aeunius / laravel-catalogos-sunat example snippets


use Aeunius\CatalogosSunat\Facades\Catalogos;

Catalogos::descripcion('01', '01');   // "Factura"
Catalogos::existe('06', '6');         // true
Catalogos::existe('51', '0102');      // false: código de 2017, ya no vigente

$pen = Catalogos::buscar('02', 'PEN');
$pen->descripcion;                    // "sol peruano"
$pen->get('simbolo');                 // "S/"
$pen->get('decimales');               // 2

Catalogos::buscar('22', '01')->get('porcentaje');      // 2
Catalogos::buscar('51', '0112')->get('comprobantes');  // ["factura"]

$catalogo = Catalogos::get('53');
$catalogo->nombre;                    // "Códigos de cargos, descuentos y otras deducciones"
count($catalogo);                     // 22

$globales = $catalogo->items()
    ->filter(fn ($item) => $item->get('nivel') === 'global');

return Catalogos::get('02');
// {"numero":"02","nombre":"Código de tipo de monedas","fuente":"…",
//  "items":[{"codigo":"AED","descripcion":"dírham de los Emiratos Árabes Unidos",…},…]}

Catalogos::descripcion('25', '10101502');            // "Perros"
Catalogos::descripcion('25-jerarquia', '10101500');  // "Animales de granja"

$error = Catalogos::buscar('codigos-retorno', $cdr->codigo);
$error->descripcion;                  // "El documento ya fue presentado anteriormente."
$error->get('tipo');                  // "observacion": el comprobante quedó aceptado

use Aeunius\CatalogosSunat\Enums\Moneda;
use Aeunius\CatalogosSunat\Enums\TipoAfectacionIgv;
use Aeunius\CatalogosSunat\Enums\TipoDocumento;
use Aeunius\CatalogosSunat\Enums\TipoDocumentoIdentidad;

TipoDocumento::Factura->value;                // "01"
TipoDocumento::from('07');                    // TipoDocumento::NotaCredito
TipoDocumento::NotaCredito->esNota();         // true
TipoDocumento::Factura->descripcion();        // "Factura"

TipoDocumentoIdentidad::Ruc->value;           // "6"

TipoAfectacionIgv::GravadoOneroso->esGravado();   // true
TipoAfectacionIgv::GravadoIvap->tributos();       // ["1016", "9996"]

Moneda::PEN->simbolo();                       // "S/"
Moneda::PEN->decimales();                     // 2

use Aeunius\CatalogosSunat\Rules\CodigoCatalogo;

$request->validate([
    'tipo_doc'  => ['be cumplir una propiedad del catálogo:
    // un tipo de operación que admita boletas, un descuento a nivel global…
    'operacion' => ['

use Aeunius\CatalogosSunat\Rules\CodigoCatalogo;
use Aeunius\PeruRules\Rules\DocumentoIdentidad;

$request->validate([
    'tipo_doc' => ['

use Aeunius\CatalogosSunat\Catalogos;

$catalogos = new Catalogos;
$catalogos->descripcion('06', '6');   // "Registro Unico de Contribuyentes"