Quobit

Cultura Digital, Tutoriales, tecnología y gadgets

Factura Electrónica – ¿Cómo Validar un CFDI con PHP y OpenSSL?

Validar un CFDI

Les comparto un método sencillo para validar un CFDI. Sé que les será de gran ayuda al momento de recibirlos o enviarlos para que su PAC los timbre.

Lo primero que necesitas es contar con tu archivo CFDI sin timbrar y con éste archivo que nos proporciona el SAT podrás ejecutarlo para leer el contenido del XML. Y al final con la clase gratuita de PHP XSLTProcessor podrás saber si es válido o no tu XML.

Los comandos que necesitas son:

mb_check_encoding($nombre_tu_xml, «UTF-8»); //validar que este en formato UTF-8

$tu_instancia_del_DOM->schemaValidate(‘UBICACION-DEL-cfdv3.xsd’)

$xslt = new XSLTProcessor();
$XSL = new DOMDocument();
$XSL->load( ‘UBICACION-cadenaoriginal_3_0.xslt’, LIBXML_NOCDATA);
$cadena = $xslt->transformToXML( );

Para instalar la clase XSLTProcessor solamente necesitas ejecutar en consola el siguiente comando:

apt-get install php5-xsl

 No olvides que el SAT también proporciona su lista de validadores para aquellos que no son desarrolladores. De cualquier forma puedes consultar todas mis memorias de Facturación Electrónica entrando en el enlace

Cualquier duda en los comentarios.