Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/ivansotelo/cfdistate

Consulta el estado de un cfdi en el webservice del SAT
https://github.com/ivansotelo/cfdistate

cfdi laravel sat

Last synced: 3 months ago
JSON representation

Consulta el estado de un cfdi en el webservice del SAT

Awesome Lists containing this project

README

        

# CfdiState
Consulta el estado de un cfdi en el webservice del SAT


Build Status
Coverage Status
Total Downloads
Latest Stable Version
License

### Instalación

Ejecutar en la terminal:

```sh
composer require ivansotelo/cfdistate
```

Agregar el Service Provider en `config/app.php`

```php
'providers' => [
...
IvanSotelo\CfdiState\CfdiStateServiceProvider::class,
];
```

### Configuración

```shell
php artisan vendor:publish --provider="IvanSotelo\CfdiState\CfdiStateServiceProvider" --tag=config
```

En el archivo .env asignar el modo produccion.

```.env
CFDI_STATE_PRODUCTION_MODE=true
```

### Leer XML del CFDI

Podemos recuperar la información del XML con la ayuda de nuestra clase \IvanSotelo\CfdiState\CFDIState, con el que podras acceder a los nodos y atributos. ya sea con los nombres originales o con su traducción a ingles.

Ejemplo:

```php
use IvanSotelo\CfdiState\CFDIState;

...
$cfdi = new CFDIState('/path/to/CFDI.xml');
// Obtener información de un atributo (Con los nombres originales)
echo $cfdi->Emisor->Rfc;
// Ahora en ingles, minúsculas y en snake_case:
echo $cfdi->transmitter->rfc;
// Otras funciones:
echo $cfdi->toJson();
```

### Obtener estado del CFDI ante el SAT

El servicio entrega cuatro valores: estado de la consulta, estado del cfdi, estado de cancelabilidad y estado de cancelación.

Ejemplo:

```php
use IvanSotelo\CfdiState\CFDIState;

...
$cfdi = new CFDIState('/path/to/CFDI.xml');
// Obtener información de un atributo (Con los nombres originales)
echo $cfdi->getSatStatus();

```