/cfdi-certificate

Librería para decodificar los Certificados de Sello Digital (CSD) del Servicio de Administración Tributaria (SAT)

Primary LanguagePHPMIT LicenseMIT

Kinedu

Travis StyleCI Quality Score Total Downloads License

Instalación

Instalar el paquete mediante Composer.

composer require kinedu/cfdi-certificate

Uso

Obtener Certificado Decodificado

Se pueden decodificar dos tipos de archivo creando una instancia de Certificate, estos pueden ser los archivos .cer y .key para obtener el resultado de dichos archivos solo es necesario mandar la ruta del archivo en la instancia y mandar a llamar el método decode() en el caso de los archivos .key es necesario mandar la contraseña como segundo parametro.

use Kinedu\CFDI\Certificate\Certificate;

$cerFile  = 'CSD01_AAA010101AAA.cer';
$keyFile  = 'CSD01_AAA010101AAA.key';
$password = '12345678a';

$cer = new Certificate($cerFile);
$cer->decode();

$key = new Certificate($keyFile, $password);
$key->decode();

Número de Certificado

use Kinedu\CFDI\Certificate\Certificate;

$cerFile = 'CSD01_AAA010101AAA.cer';

$cer = new Certificate($cerFile);
$cer->getCertificateNumber();

Fecha Inicio de Vigencia

use Kinedu\CFDI\Certificate\Certificate;

$cerFile = 'CSD01_AAA010101AAA.cer';

$cer = new Certificate($cerFile);
$cer->getInitialDate();

Fecha de Expiración

use Kinedu\CFDI\Certificate\Certificate;

$cerFile = 'CSD01_AAA010101AAA.cer';

$cer = new Certificate($cerFile);
$cer->getExpirationDate();

Guardar Certificado Decodificado

Para guardar el Certificado de Sello Digital (CSD) decodificado es necesario utilizar el método save(string $filename) con el nombre y la dirección donde se quiere guardar el archivo.

use Kinedu\CFDI\Certificate\Certificate;

$cerFile  = 'CSD01_AAA010101AAA.cer';
$keyFile  = 'CSD01_AAA010101AAA.key';
$password = '12345678a';

$cer = new Certificate($cerFile);
$cer->save('./CSD');

$key = new Certificate($keyFile, $password);
$key->save('./CSD', 'CSD01_AAA010101AAA');

Licencia

CFDI Certificate esta bajo la Licencia MIT, si quieres saber más al respecto puedes ver el archivo de Licencia que se encuentra en este mismo repositorio.