Factura C funcionando, pero Factura A y B no me funcionan

55 views
Skip to first unread message

Hernán GM

unread,
Jul 30, 2022, 11:09:17 AM7/30/22
to Afip.php - SDK para los Web Services de Afip en PHP
Buenos días,
Estoy probando en el ambiente de homologación. Actualmente puedo generar facturas C correctamente. Pero cuando quiero generar una Factura A o B, no obtengo ningún resultado luego de llamar a CreateNextVoucher.
Sobre todo me interesa la B.
Probé los siguientes dos array para generar la factura B:

$data = array(
'CantReg' => 1, // Cantidad de comprobantes a registrar
'PtoVta' => 5, // 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' => 80, // Tipo de documento del comprador (ver tipos disponibles)(80 CUIT)(96 DNI)
'DocNro' => 23357753279, // Numero de documento del comprador
'CbteDesde' => 1, // Numero de comprobante o numero del primer comprobante en caso de ser mas de uno
'CbteHasta' => 1, // Numero de comprobante o numero del ultimo comprobante en caso de ser mas de uno
'CbteFch' => intval(date('Ymd')), // (Opcional) Fecha del comprobante (yyyymmdd) o fecha actual si es nulo
'ImpTotal' => 184.05, // Importe total del comprobante
'ImpTotConc' => 0, // Importe neto no gravado
'ImpNeto' => 150, // Importe neto gravado
'ImpOpEx' => 0, // Importe exento de IVA
'ImpIVA' => 26.25, //Importe total de IVA
'ImpTrib' => 7.8, //Importe total de tributos
'FchServDesde' => NULL, // (Opcional) Fecha de inicio del servicio (yyyymmdd), obligatorio para Concepto 2 y 3
'FchServHasta' => NULL, // (Opcional) Fecha de fin del servicio (yyyymmdd), obligatorio para Concepto 2 y 3
'FchVtoPago' => NULL, // (Opcional) Fecha de vencimiento del servicio (yyyymmdd), obligatorio para Concepto 2 y 3
'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)
);

Y este otro array:

$data = array(
'CantReg' => 1, // Cantidad de comprobantes a registrar
'PtoVta' => 5, // 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' => 80, // Tipo de documento del comprador (ver tipos disponibles)(80 CUIT)(96 DNI)
'DocNro' => 23357753279, // Numero de documento del comprador
'CbteDesde' => 1, // Numero de comprobante o numero del primer comprobante en caso de ser mas de uno
'CbteHasta' => 1, // Numero de comprobante o numero del ultimo 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
'FchServDesde' => NULL, // (Opcional) Fecha de inicio del servicio (yyyymmdd), obligatorio para Concepto 2 y 3
'FchServHasta' => NULL, // (Opcional) Fecha de fin del servicio (yyyymmdd), obligatorio para Concepto 2 y 3
'FchVtoPago' => NULL, // (Opcional) Fecha de vencimiento del servicio (yyyymmdd), obligatorio para Concepto 2 y 3
'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)
);

Sospecho que el error lo puedo tener en la ecuación:
ImpTotal = ImpTotConc + ImpNeto + ImpOpEx + ImpIVA + ImpTrib

O que me este faltando habilitar algo en homologación del AFIP? No obstante, generar Facturas C me deja perfectamente.

Desde ya muchas gracias

Ovejero

unread,
Aug 22, 2022, 4:23:36 PM8/22/22
to Afip.php - SDK para los Web Services de Afip en PHP
Hola Hernán,
lo más probable es que sea porque estás utilizando el mismo punto de venta para todas las letras.
Tenés que ir a la web de AFIP, y en la sección "Comprobantes en línea", generar un punto de venta para webservice por cada letra que utilices.
Luego, asociar ese punto de venta a la letra que corresponda dentro de tu script.

Espero haberte ayudado.

Saludos,
Claudio Rackauskas
Reply all
Reply to author
Forward
0 new messages