Problema para generar primera factura

76 views
Skip to first unread message

rosa...@gmail.com

unread,
Sep 19, 2019, 2:37:12 PM9/19/19
to Afip.php - SDK para los Web Services de Afip en PHP
Hola!

Acabo de generar un certificado y acabo de autorizarlo desde _WSASS Autoservicio de Acceso a WebServices_ en AFIP.

La autorización la generé para _wsfe - Facturación electrónica_ y me dijo
OK. Autorización fue creada [...]

En mi script tengo una carpeta includes y allí metí en la carpeta afip toda la aplicación descargada de Github.
Metí en el archivo `key` la key generada desde mi máquina y en el archivo `cert` el resultado que me tiró la aplicación de AFIP. No toqué los nombres originales de los archivos.

Mi problema es que no logro conectarme, ni generar nada y no entiendo porqué.

En mi script puse esto:


include $_SERVER['DOCUMENT_ROOT'].'/includes/afip/Afip.php';

$afip
= new Afip(
    array
(
       
'CUIT' => "20123456789",
       
'production' => FALSE
   
)
);

$data
= array(
   
'CantReg'     => 1,  // Cantidad de comprobantes a registrar
   
'PtoVta'     => 1,  // Punto de venta
   
'CbteTipo'     => 6,  // Tipo de comprobante (ver tipos disponibles)
   
'Concepto'     => 1,  // Concepto del Comprobante: (1)Productos, (2)Servicios, (3)Productos y Servicios
   
'DocTipo'     => 99, // Tipo de documento del comprador (99 consumidor final, ver tipos disponibles)
   
'DocNro'     => 0,  // Número de documento del comprador (0 consumidor final)
   
'CbteDesde'     => 1,  // Número de comprobante o numero del primer comprobante en caso de ser mas de uno
   
'CbteHasta'     => 1,  // Número de comprobante o numero del último comprobante en caso de ser mas de uno
   
'CbteFch'     => intval(date('Ymd')), // (Opcional) Fecha del comprobante (yyyymmdd) o fecha actual si es nulo
   
'ImpTotal'     => 121, // Importe total del comprobante
   
'ImpTotConc'     => 0,   // Importe neto no gravado
   
'ImpNeto'     => 100, // Importe neto gravado
   
'ImpOpEx'     => 0,   // Importe exento de IVA
   
'ImpIVA'     => 21,  //Importe total de IVA
   
'ImpTrib'     => 0,   //Importe total de tributos
   
'MonId'     => 'PES', //Tipo de moneda usada en el comprobante (ver tipos disponibles)('PES' para pesos argentinos)
   
'MonCotiz'     => 1,     // Cotización de la moneda usada (1 para pesos argentinos)  
   
'Iva'         => array( // (Opcional) Alícuotas asociadas al comprobante
        array
(
           
'Id'         => 5, // Id del tipo de IVA (5 para 21%)(ver tipos disponibles)
           
'BaseImp'     => 100, // Base imponible
           
'Importe'     => 21 // Importe
       
)
   
),
);

$res
= $afip->ElectronicBilling->CreateVoucher($data);

echo $res
['CAE']; //CAE asignado el comprobante
echo $res
['CAEFchVto']; //Fecha de vencimiento del CAE (yyyy-mm-dd)



No imprime nada, y el error log muestra:

 [19-Sep-2019 18:13:55 UTC] PHP Fatal error:  Uncaught Exception: Failed to open /home/public_html/includes/afip/Class/ElectronicBilling.php
 in /home/public_html/includes/afip/Afip.php:249
 Stack trace:
 #0 /home/public_html/demo.php(45): Afip->__get('ElectronicBilli...')
 #1 {main}
  thrown in /home/public_html/includes/afip/Afip.php on line 249


En Afip.php la línea en cuestión que tira la excepción está aquí:


   
public function __get($property)
   
{
       
if (in_array($property, $this->implemented_ws)) {
           
if (isset($this->{$property})) {
               
return $this->{$property};
           
} else {
                $file
= __DIR__.'/Class/'.$property.'.php';
               
if (!file_exists($file))
                   
throw new Exception("Failed to open ".$file."\n", 1);

                include_once $file
;

               
return ($this->{$property} = new $property($this));
           
}
       
} else {
           
return $this->{$property};
       
}
   
}
}

Es algo que me está faltando hacer o completar?

Mario Olivera

unread,
Oct 4, 2019, 10:35:07 AM10/4/19
to Afip.php - SDK para los Web Services de Afip en PHP
ya publique en la libreria y no hacen caso, esta re hardcodeado el xml, ese array CUIT pasalo a int

Mario Olivera

unread,
Oct 4, 2019, 2:05:57 PM10/4/19
to Afip.php - SDK para los Web Services de Afip en PHP
En los xml por ejemplo: wsfe busca donde aparece el cuit como int y ponelo como string

<s:element minOccurs="1" maxOccurs="1" name="Cuit" type="s:string"/>
Reply all
Reply to author
Forward
0 new messages