Cómo integrar tu software de facturación con ARCA (ex AFIP)
Una guía práctica para el equipo que tiene que conectar un sistema propio (ERP, e-commerce, software de gestión o plataforma) con la facturación electrónica de ARCA: qué necesitas antes de empezar, qué datos tiene que mandar tu sistema, cómo manejar las respuestas y qué revisar antes de salir a producción.
- Guía paso a paso
- Checklist de producción
- Errores frecuentes
¿Cómo se integra un software de facturación con ARCA?
Hay dos caminos: conectar tu sistema directamente con los web services de ARCA (WSAA para la autenticación y WSFE para los comprobantes) o usar una API intermedia que ya resuelve esa capa. En los dos casos, el proceso es el mismo: tu sistema arma los datos del comprobante, los envía, recibe el CAE y lo guarda junto con la factura. Lo que cambia es cuánto de la parte fiscal y técnica tenes que construir y mantener vos.
Si todavía estás evaluando qué camino tomar, mirá la comparación en integrar ARCA por tu cuenta o usar una API de facturación. Esta guía se enfoca en cómo hacer la integración una vez decidido.
Requisitos para integrar tu sistema con ARCA
Conviene tener esto resuelto antes de escribir la primera línea de código.
Del lado fiscal
- CUIT del emisor y clave fiscal con el nivel de seguridad que pide ARCA.
- Condición frente al IVA del emisor definida (Responsable Inscripto, Monotributo o Exento).
- Un punto de venta habilitado para factura electrónica por web service, distinto del que se usa en el portal.
- Saber qué comprobantes vas a emitir (según tu condición frente al IVA).
Del lado técnico
- Un lugar donde tu sistema guarde, por cada venta, el número de comprobante, el CAE, su vencimiento y el PDF.
- Si vas a usar emisión asíncrona, una URL pública para recibir webhooks.
- Un entorno de prueba separado del de producción.
- Una persona de administración o el contador para validar los primeros comprobantes.
Cómo integrar tu software de facturación con ARCA usando la API de TusFacturasAPP
El recorrido completo, desde la cuenta de prueba hasta el primer comprobante real.
-
1
Creá una cuenta API DEV
Es un entorno de prueba sin cargo y sin conexión con ARCA. No hace falta vincular la clave fiscal para empezar a desarrollar.
-
2
Obtené tus credenciales y leé la documentación
En el portal para desarrolladores están los endpoints, los webhooks y los ejemplos JSON de cada tipo de comprobante.
-
3
Elegí el modo de emisión
Asíncrono, instantáneo individual o instantáneo por lote. Más abajo te dejamos una guía para decidir según tu caso.
-
4
Mapeá los datos de tu sistema al comprobante
Es el paso que más tiempo lleva: definir de dónde sale cada dato que pide la factura. Abajo está el detalle.
-
5
Programá el manejo de respuestas
Guardar el CAE y el PDF cuando sale bien, y registrar y mostrar el error cuando ARCA rechaza el comprobante.
-
6
Probá con comprobantes de test
Las respuestas tienen el mismo formato que en producción, pero sin CAE ni QR y sin validez fiscal.
-
7
Pasá a producción
Contratás un plan con API, enlazás el CUIT con ARCA y configurás el punto de venta. Toma menos de 15 minutos.
¿Qué modo de emisión conviene según tu caso?
La elección depende de si tu usuario necesita ver el CAE en el momento o si la factura puede llegar unos minutos después.
| Si tu sistema… | Modo recomendado |
|---|---|
| Emite mucho volumen y no necesita mostrar el CAE en pantalla (suscripciones, marketplaces, delivery) | Asíncrono + webhook |
| Tiene que entregar la factura en el momento (punto de venta, checkout, mostrador) | Instantáneo individual |
| Factura por tandas en un horario fijo (cierre del día, abonos del mes) | Instantáneo por lote o asíncrono |
| No puede depender de que ARCA esté disponible en ese momento | Asíncrono + webhook |
Capacidades, límites diarios y reintentos de cada modo: ver la ficha técnica de la API.
Qué datos tiene que enviar tu sistema en cada comprobante
Antes de programar, armá una tabla con cada dato que pide la factura y de qué parte de tu sistema sale. La mayoría de los errores de integración vienen de acá.
Emisor y comprobante
- Punto de venta.
- Tipo de comprobante (A, B, C, E, M, MiPyme, nota de crédito o débito).
- Fecha de emisión.
- Concepto: productos, servicios o ambos.
- Si son servicios: período facturado y fecha de vencimiento del pago.
Receptor
- Tipo y número de documento (CUIT, DNI o consumidor final).
- Condición frente al IVA del cliente.
- Razón social y domicilio.
- E-mail, si querés que la factura le llegue automáticamente.
Tip: con el endpoint de constancia de inscripción podes traer los datos fiscales a partir del CUIT.
Importes
- Detalle de ítems con cantidad y precio unitario.
- Alícuota de IVA de cada ítem (si corresponde).
- Percepciones u otros tributos.
- Moneda y cotización, si Facturas en dólares (la API devuelve la cotización oficial).
Para notas de crédito y débito, tu sistema tiene que guardar la referencia a la factura original (tipo, punto de venta y número), porque se informa al emitirlas.
Estructuras JSON de ejemplo para cada comprobante: Factura A, Factura B, Factura C, Factura E y Factura MiPyme.
Cómo manejar el CAE y los errores en tu sistema
- Si sale bien: guardá el número de comprobante, el CAE, su vencimiento y el link al PDF asociados a la venta. Es lo que vas a necesitar para reimprimir, reenviar o emitir una nota de crédito.
- Si ARCA rechaza: guardá el mensaje de error y mostráselo al usuario de forma entendible. La venta no queda facturada hasta corregirlo.
- En modo asíncrono: marcá la venta como «pendiente de CAE» y actualizala cuando llegue el webhook.
- Evitá duplicados: no reenvíes una venta que ya tiene CAE o que está pendiente. Un estado por venta en tu base alcanza para controlarlo.
Errores más comunes al integrar la facturación con ARCA
Los que más vemos en integraciones nuevas, y cómo evitarlos.
Tipo de comprobante incorrecto
El tipo depende de la condición frente al IVA del emisor y del receptor. Definí la regla en tu sistema y no lo dejes librado al usuario.
Fechas fuera de rango
ARCA limita cuántos días hacia atrás se puede facturar: hasta 10 días para servicios y hasta 5 para productos, contados desde el último comprobante emitido.
Datos del receptor incompletos
CUIT mal cargado o condición frente al IVA equivocada. Validar el CUIT contra la constancia de inscripción antes de emitir evita la mayoría de los rechazos.
Usar el mismo punto de venta del portal
El punto de venta para web service tiene que ser propio. Si compartís numeración con otro sistema o con el portal de ARCA, la correlatividad se rompe.
Totales que no cierran
Los importes de IVA y tributos tienen que coincidir con la suma de los ítems. Redondeá siempre de la misma forma en tu sistema.
Consumidor final sin identificar
Por encima de cierto monto, ARCA exige identificar al consumidor final. Mirá el límite vigente.
Checklist para pasar tu integración a producción
- Probaste cada tipo de comprobante que vas a emitir, incluidas las notas de crédito.
- Probaste ventas en pesos y, si aplica, en moneda extranjera.
- Tu sistema guarda CAE, vencimiento y PDF de cada venta.
- Los errores se registran y se muestran al usuario.
- Si usas webhooks, tu endpoint responde y procesa reintentos sin duplicar.
- Administración o el contador revisó los primeros comprobantes de prueba.
- El CUIT está enlazado con ARCA y el punto de venta de web service está dado de alta.
Después de salir a producción
Con la API, los cambios de normativa los resolvemos del lado de TusFacturasAPP, con el respaldo de un estudio contable impositivo. Para enterarte de lo que cambia, seguí el changelog de la API y la normativa vigente.
Preguntas Frecuentes
¿Cómo integro mi software de facturación con ARCA (ex AFIP)?
Podes conectarte directamente con los web services de ARCA (WSAA y WSFE) o usar una API intermedia. Con la API de TusFacturasAPP el recorrido es: crear una cuenta API DEV, leer la documentación, elegir el modo de emisión, mapear los datos de tu sistema al comprobante, programar el manejo de respuestas, probar con comprobantes de test y pasar a producción.
¿Qué necesito para empezar la integración?
CUIT y clave fiscal del emisor, su condición frente al IVA, un punto de venta habilitado para web service y, del lado técnico, un lugar donde tu sistema guarde el CAE, su vencimiento y el PDF de cada venta. Para desarrollar en el entorno de prueba no hace falta vincular la clave fiscal.
¿Puedo usar el mismo punto de venta que uso en el portal de ARCA?
No es recomendable. El punto de venta para facturar por web service tiene que ser propio, para que la numeración sea correlativa y no se mezcle con la del portal o con la de otro sistema.
¿Qué datos tiene que enviar mi sistema en cada factura?
Punto de venta, tipo de comprobante, fecha, concepto (productos, servicios o ambos), datos del receptor (documento, condición frente al IVA, razón social), detalle de ítems con alícuotas de IVA, tributos y, si corresponde, moneda y cotización. En notas de crédito y débito, además, la referencia a la factura original.
¿Qué tengo que guardar después de emitir?
El número de comprobante, el CAE, su fecha de vencimiento y el link al PDF, asociados a la venta. Los vas a necesitar para reenviar la factura, reimprimirla o emitir una nota de crédito.
¿Cuánto tarda pasar de pruebas a producción?
Una vez terminada la integración en el entorno de prueba, pasar a producción toma menos de 15 minutos: contratás un plan con API, enlazás el CUIT con ARCA y configurás el punto de venta.
¿En qué lenguaje tengo que programar?
En cualquiera que pueda enviar JSON por REST, como PHP, Python, JavaScript, Java o C#. Hay un SDK oficial para PHP.