ARCA {API}
CUITs y certificados

Listar y obtener

Consultá los CUITs de la cuenta con su certificado, su CSR pendiente, su estado y los pasos que le faltan.

Listar CUITs

GET /api/cuits

Devuelve los CUITs activos de la cuenta, ordenados por fecha de alta. Funciona con cualquier scope de key.

curl https://arca.api.com.ar/api/cuits \
  -H "Authorization: Bearer ak_TuSecretoAqui"

Filtros

Query paramValoresDescripción
environmenthomologacion | produccionSólo los CUITs de ese entorno
estadoUno o más estados, separados por comaSólo los CUITs en alguno de esos estados
# Qué certificados hay que renovar
curl "https://arca.api.com.ar/api/cuits?environment=produccion&estado=por_vencer,vencido" \
  -H "Authorization: Bearer ak_TuSecretoAqui"

Un valor desconocido en cualquiera de los dos filtros responde 400.

Respuesta

Status: 200

{
  "data": [
    { "cuit": "20123456789", "environment": "produccion", "estado": "vigente", "...": "..." }
  ]
}

Cada elemento de data es un objeto CUIT completo. La respuesta no está paginada.

Obtener un CUIT

GET /api/cuits/{cuit}/{environment}
curl https://arca.api.com.ar/api/cuits/20123456789/produccion \
  -H "Authorization: Bearer ak_TuSecretoAqui"
Parámetro de rutaDescripción
cuit11 dígitos, sin guiones
environmenthomologacion o produccion

Status: 200 · El objeto CUIT.

Un CUIT que no existe en ese entorno, que es de otra cuenta o que fue dado de baja responde 404, siempre con el mismo mensaje: nunca distinguimos "no existe" de "es de otra cuenta".

El objeto CUIT

Es la misma representación que devuelven todas las operaciones de /api/cuits y las tools cuits_listar / cuits_obtener del servidor MCP.

{
  "cuit": "20123456789",
  "environment": "produccion",
  "alias": "facturacion-acme",
  "businessName": "ACME S.R.L.",
  "estado": "vigente",
  "pasosPendientes": ["delegar_constancia"],
  "certificado": {
    "serialNumber": "5f3a9c1e2b7d4a60",
    "subjectCn": "facturacion-acme",
    "validFrom": "2026-10-01T12:00:00.000Z",
    "validTo": "2028-09-30T12:00:00.000Z",
    "fingerprintSha256": "AB:CD:...:EF",
    "issuerEnvironment": "produccion"
  },
  "csrPendiente": null,
  "ptoVta": 4,
  "ptoVtaOrigen": "arca",
  "ptoVtaHabilitado": true,
  "constanciaAutorizada": false,
  "datosFiscales": {
    "condicionFiscal": "responsable_inscripto",
    "categoriaMonotributo": null,
    "inicioActividades": "2019-03-01",
    "domicilioFiscal": null
  },
  "createdAt": "2026-10-01T11:58:40.120Z"
}
CampoTipoDescripción
cuitstringNúmero de CUIT, 11 dígitos
environmentstringhomologacion o produccion
aliasstring | nullAlias del certificado. Es el CN del CSR: el nombre con el que el certificado aparece en ARCA como computador fiscal
businessNamestring | nullRazón social
estadostringEstado del CUIT
pasosPendientesstring[]Lo que falta para que pueda emitir sin avisos, por prioridad. Ver Pasos pendientes
certificadoobject | nullCertificado activo, o null si no hay
certificado.serialNumberstringNúmero de serie
certificado.subjectCnstringCN del certificado: el alias que ARCA muestra al delegar servicios
certificado.validFrom / validTostring (ISO 8601)Vigencia
certificado.fingerprintSha256stringHuella SHA-256
certificado.issuerEnvironmentstring | nullEntorno de la autoridad de ARCA que lo emitió; null si no se reconoce
csrPendienteobject | nullCSR esperando el .crt de ARCA, o null
csrPendiente.csrPemstringEl CSR en PEM, listo para pegar en ARCA. Podés volver a mostrárselo a tu cliente las veces que haga falta
csrPendiente.createdAtstring (ISO 8601)Cuándo se generó
ptoVtanumber | nullPunto de venta con el que se emite. null es resolución automática contra ARCA al emitir
ptoVtaOrigenstring | nullarca si lo detectamos nosotros, manual si lo fijó alguien
ptoVtaHabilitadoboolean | nullSi ARCA lo habilitaba la última vez que se verificó. null es "nunca se verificó"
constanciaAutorizadaboolean | nullSi ARCA autorizaba la constancia de inscripción para el certificado de producción de este CUIT. null es "nunca se verificó"
datosFiscalesobjectSólo lectura. Se resuelven solos desde el padrón al activar el certificado de producción
createdAtstring (ISO 8601)Alta del CUIT

La respuesta nunca incluye la clave privada, ni en claro ni cifrada.

Estado

estadoSignificado
sin_certificadoNo tiene certificado ni CSR pendiente
pendienteTiene un CSR esperando el .crt de ARCA. Todavía no puede emitir
activo_renovandoTiene certificado activo y un CSR nuevo pendiente: está renovando y sigue emitiendo con el actual
vigenteCertificado activo, vence en más de 30 días
por_vencerCertificado activo que vence en 30 días o menos
vencidoEl certificado activo ya venció. ARCA lo rechaza

Errores

StatusDescripción
400CUIT o entorno de la ruta con formato inválido, o filtro desconocido
401API key ausente, inválida o revocada
404El CUIT no existe en ese entorno, es de otra cuenta o fue dado de baja

No consume cuota.

En esta página