🧾 ARCA (AFIP) API

API de Facturación Electrónica para Argentina

📡 API Endpoints

GET /health - Health check
GET /api/accounts - Listar cuentas
POST /api/accounts - Agregar cuenta
GET /api/invoices/types - Tipos de comprobante
POST /api/invoices/create - Crear factura
POST /api/invoices/create-with-pdf - Crear factura con PDF

🔐 Cómo Obtener Certificados de AFIP

Requisitos Previos

1 Generar Clave Privada y CSR

Abrí una terminal y ejecutá:

# Crear directorio para los certificados
mkdir -p ~/afip-certs && cd ~/afip-certs

# Generar clave privada (GUARDAR ESTE ARCHIVO - ES SECRETO)
openssl genrsa -out private.key 2048

# Generar CSR (Certificate Signing Request)
openssl req -new -key private.key -out request.csr \
  -subj "/C=AR/O=TU_RAZON_SOCIAL/CN=TU_NOMBRE/serialNumber=CUIT TU_CUIT"

Ejemplo real:

openssl req -new -key private.key -out request.csr \
  -subj "/C=AR/O=BAUX SRL/CN=Santiago Herzfeld/serialNumber=CUIT 20123456789"

2 Acceder a AFIP

  1. Ir a www.afip.gob.ar
  2. Click en "Acceso con clave fiscal"
  3. Ingresar CUIT y clave fiscal

3 Administrador de Relaciones de Clave Fiscal

  1. En el menú principal, buscar "Administrador de Relaciones de Clave Fiscal"
  2. Click en "Adherir Servicio"
  3. Buscar: "AFIP → Servicios Interactivos → Administración de Certificados Digitales"
  4. Confirmar la adhesión

4 Generar Certificado

  1. Volver al menú principal de AFIP
  2. Entrar a "Administración de Certificados Digitales"
  3. Click en "Agregar Alias / Nuevo Certificado"

Completar el formulario:

CampoValor
AliasUn nombre para identificarlo (ej: facturacion-api)
Nombre del DNTu razón social o nombre
CUIT representadoTu CUIT (sin guiones)
TipoSeleccionar "CSR"

En el campo de texto grande, pegar el contenido del archivo request.csr:

cat request.csr

5 Descargar el Certificado

  1. El certificado aparecerá en la lista con estado "Activo"
  2. Click en "Ver" o "Descargar"
  3. Guardar como certificate.crt

6 Verificar los Archivos

# Estos dos comandos deben dar el mismo hash
openssl rsa -noout -modulus -in private.key | openssl md5
openssl x509 -noout -modulus -in certificate.crt | openssl md5

7 Habilitar Servicios Web

  1. En AFIP, ir a "Administrador de Relaciones de Clave Fiscal"
  2. Click en "Nueva Relación"
  3. Buscar: "AFIP → WebServices → Facturación Electrónica"
  4. Confirmar

8 Asociar Certificado al Servicio

  1. Ir a "Administración de Certificados Digitales"
  2. Buscar tu certificado
  3. Click en "Relaciones"
  4. Agregar relación con "ws - Factura Electrónica"

9 Usar con la API

curl -X POST https://afip.baux.ar/api/accounts \
  -H "Content-Type: application/json" \
  -d '{
    "name": "mi-empresa",
    "cuit": "20123456789",
    "certPath": "./certs/certificate.crt",
    "keyPath": "./certs/private.key",
    "businessName": "MI EMPRESA SRL",
    "address": "Av. Ejemplo 123, CABA",
    "ivaCondition": "Responsable Inscripto",
    "startDate": "01/01/2020",
    "production": false
  }'

📋 Referencias

Tipos de Comprobante

IDTipoUso
1Factura AVentas a Responsable Inscripto
6Factura BVentas a Consumidor Final (por RI)
11Factura CVentas por Monotributista

Alícuotas de IVA

IDAlícuota
30%
410.5%
521%
627%

Tipos de Documento

IDTipo
80CUIT
86CUIL
96DNI
99Consumidor Final
⚠️ IMPORTANTE - Seguridad
  • NUNCA compartas tu private.key
  • NUNCA subas la clave privada a repositorios públicos
  • Usá permisos restrictivos: chmod 600 private.key
  • Hacé backup de la clave privada en un lugar seguro