Integración de Facturear con ERP
Integrar Facturear a tu sistema ERP permite emitir facturas electrónicas directamente desde tu sistema de gestión, sin entrar al portal de ARCA. Esta guía cubre los patrones de integración más comunes.Arquitectura de integración
POST https://www.facture.ar/api/invoices. Facturear la encola, se comunica con ARCA y obtiene el CAE; tu sistema consulta el resultado con el batchId que recibió al enviarla.
Flujo de integración típico
Datos mínimos para la integración
Tu ERP debe proveer estos datos para cada factura. Van todos en el primer nivel, con los nombres que usa ARCA (ver Primera factura con Facturear para el detalle de cada campo):ptoVta, invoiceType y concepto pueden salir de los defaults del CUIT, y si mandás un array de hasta 500 facturas se procesan como un lote.
Integración con sistemas comunes
Odoo
Odoo tiene un módulo de facturación electrónica argentina. Podés usar la API de Facturear como backend de facturación creando un módulo personalizado:Tango Gestión
Para Tango, la integración se hace mediante:- El módulo de Exportación de Facturación de Tango
- Un script que lee los archivos exportados y llama a la API de Facturear
- Un script que importa los resultados (CAE) de vuelta a Tango
SAP
Para SAP (B1 o S/4HANA), la integración se implementa mediante:- Un Add-on o extensión de SAP
- O un proceso de middleware (usando herramientas como MuleSoft, Boomi, o un servicio propio)
Manejo de errores en la integración
Hay dos momentos en que una factura puede fallar: al enviarla (la API responde400 si los datos no son válidos, o 403 con code: "SUBSCRIPTION_LIMIT_EXCEEDED" si superaste el límite de tu plan) y al procesarla (el ítem del lote queda en error con los mensajes de ARCA en responseBody).
Cola de trabajo para alta disponibilidad
Para producción, implementá un sistema de cola:- El ERP encola la factura en lugar de llamar directamente a la API
- Un worker procesa la cola y llama a Facturear
- Si falla, el worker reintenta con backoff exponencial, mandando siempre el mismo header
Idempotency-Keypara esa factura: si el primer intento sí había llegado, Facturear devuelve el mismobatchIden vez de encolarla otra vez. Ver Reintentar sin duplicar facturas - El ERP consulta el lote con
GET /api/invoices/batches/{batchId}o recibe el resultado por webhook (invoice.completed/invoice.failed) - Si un ítem falló por un error transitorio (ARCA caído, timeout), reintentalo con
POST /api/invoices/batches/{batchId}/items/{itemId}/retry
Notificaciones asíncronas
Consultá el lote o suscribite ainvoice.completed/invoice.failed con webhooks: el ERP recibe el CAE (o los errores de ARCA) apenas la factura se procesa, sin hacer polling. Con batch.completed te enterás cuando termina un lote entero. Verificá la firma de cada envío y usá el id del evento para no procesarlo dos veces.
Recursos relacionados
Integrá tu ERP con Facturear
Conectá tu sistema de gestión a la API de Facturear y automatizá la facturación electrónica desde tu ERP.