Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- /**
- * Desarrollado por Novatech Digital SA de CV - www.facturadigital.com.mx
- * soporte@facturadigital.com.mx
- * Descripción: Clase helper para realizar el timbrado
- * de facturas electrónicas CFDI en la versión 3.2 utilizando como input
- * plantillas de texto en formato UTF-8 que están disponibles por solicitud
- * a través del correo soporte@facturadigital.com.mx
- * VERSIÓN DE LA LIBRERÍA: 1.0
- *
- * REQUISITOS: PHP >= 5, OpenSSL, NUSOAP
- *
- * Referencias de descarga librerias externas:
- * NUSOAP: http://sourceforge.net/projects/nusoap/
- */
- require_once ("nusoap/nusoap.php");
- class TimbradoFacturaDigital {
- public $urlFacturaDigital = 'https://www.facturadigital.com.mx/sistemacfdi32/webservices/TimbradoWS.php?wsdl';
- /**
- * Genera y timbra un archivo XML, y devuelve un arreglo conteniendo la información necesaria para proveer la factura timbrada al cliente
- * @param string $usuario nombre de usuario username
- * @param string $password password de la cuenta
- * @param string $layout texto que contiene los datos del comprobante a generar, basado en la plantilla.
- * @return boolean si el timbrado es correcto
- */
- public function generarCFDI($usuario, $password, $layout) {
- try {
- $client = new SoapClient( $this->urlFacturaDigital, array (
- 'cache_wsdl' => WSDL_CACHE_NONE,
- 'trace' => TRUE
- ));
- $cfdi = $client->generarCFDIPorTexto ( $usuario, $password, $layout );
- return $cfdi;
- } catch ( Exception $e ) {
- throw new Exception ( $e->getMessage(), $e->getCode() );
- return false;
- }
- }
- /**
- * Llama al método de cancelacion de folios UUID – La cancelación se realiza directamente en el servidor del SAT
- * @param string $usuario
- * @param string $password
- * @param string $uuid es el folio fiscal UUID del CFDI proporcionado por el SAT
- * @return boolean si la cancelación es correcta
- */
- public function cancelarCFDI($usuario, $password, $uuid) {
- try {
- $client = new SoapClient( $this->urlFacturaDigital, array (
- 'cache_wsdl' => WSDL_CACHE_NONE,
- 'trace' => TRUE
- ));
- $cancelacion = $client->cancelarCFDI( $usuario, $password, $uuid );
- return $cancelacion;
- } catch ( Exception $e ) {
- throw new Exception ( $e->getMessage(), $e->getCode() );
- return false;
- }
- }
- /**
- * Consulta la cantidad de créditos (timbres) disponibles para el usuario y contraseña proporcionados.
- * @param string $usuario
- * @param string $password
- * @return array $ws que contiene la cantidad de timbres disponibles.
- */
- public function consultarCreditos($usuario, $password) {
- try {
- $client = new SoapClient ( $this->urlFacturaDigital, array (
- 'cache_wsdl' => WSDL_CACHE_NONE,
- 'trace' => TRUE
- ) );
- $ws = $client->consultarCreditos( $usuario, $password );
- return $ws;
- } catch ( Exception $e ) {
- throw new Exception ( $e->getMessage(), $e->getCode() );
- return false;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement