Automatización · 11 min

Automatización de facturación electrónica con AFIP en 2026

Emitir facturas manualmente en Argentina en 2026 es trabajo de robots. Así se automatiza.

Carlos Copisrad · 8 mayo 2026

El stack de facturación en Argentina

AFIP (ahora ARCA) ofrece servicios web para emisión de comprobantes electrónicos. El más usado es WSFE (Web Service de Facturación Electrónica) para facturas A, B y C. La autenticación usa certificados digitales y el servicio WSAA.

Flujo de autenticación

  1. Generar un certificado X.509 y clave privada
  2. Solicitar el certificado de producción en el portal AFIP
  3. Usar WSAA para obtener un ticket de acceso (TA) válido por 12 horas
  4. Usar el TA para llamar a WSFE
import zeep, datetime
from lxml import etree

def obtener_ticket_acceso(cert_path, key_path, servicio='wsfe'):
    tra = etree.Element('loginTicketRequest', version='1.0')
    header = etree.SubElement(tra, 'header')
    etree.SubElement(header, 'uniqueId').text = str(int(datetime.datetime.now().timestamp()))
    etree.SubElement(header, 'generationTime').text = (datetime.datetime.utcnow() - datetime.timedelta(minutes=10)).isoformat()
    etree.SubElement(header, 'expirationTime').text = (datetime.datetime.utcnow() + datetime.timedelta(hours=12)).isoformat()
    service_elem = etree.SubElement(tra, 'service')
    service_elem.text = servicio
    return etree.tostring(tra, xml_declaration=True, encoding='UTF-8')

Emitir una factura B

factura = {
    'CbteTipo': 6,
    'PtoVta': 1,
    'Concepto': 1,
    'DocTipo': 96,
    'DocNro': 12345678,
    'ImpTotal': 1210.00,
    'ImpNeto': 1000.00,
    'ImpIVA': 210.00,
    'MonId': 'PES',
    'MonCotiz': 1
}

Integración con n8n

En n8n, usar el nodo HTTP Request para llamar a un microservicio Python que maneja el certificado y las llamadas SOAP a AFIP. No exponer el certificado directamente en n8n: usar un servicio intermedio que lo gestione de forma segura.

¿Querés implementar esto en tu empresa? Escribinos. Diagnóstico de 30 minutos sin compromiso.