CAF

Listar CAF

Listar los CAF que el SII tiene autorizados para la empresa y el tipo de documento, en el ambiente pedido

POST
/v1/caf/{rut}/listar/{tipoDocumento}

Lista los CAF que el SII autorizó para la empresa y el tipo de documento, en el ambiente que indique ambiente: todos los que el SII lista, también los ya usados o anulados enteros. Para saber cuántos folios quedan en uno de ellos, consulte caf_v1_estado_folios con su rango. Es una lectura: no timbra ni anula nada, y repetirla no cambia nada en el SII.

Cuál usar. Reemplaza a caf_v1_anulacion_masiva_listar para listar CAF: el mismo modelo de respuesta, pero en el ambiente pedido y verificando el permiso del certificado. Para bajar uno de estos CAF, use caf_v1_reobtener con folioInicial, si está en la primera página del listado de reobtención del SII (ver folioInicial en caf_v1_reobtener).

Permisos. Además de validar el certificado en el ambiente pedido, verifica en el SII del mismo ambiente que su titular esté autorizado por la empresa para operar con folios (CAF); no hace falta que administre usuarios. caf_v1_reobtener, en cambio, valida el certificado siempre en producción. Consulta la opción de anulación masiva del SII: una empresa que no está habilitada ahí recibe CONTRIBUYENTE_SIN_PERMISO.

Tiempos. Hace varias llamadas al SII en serie y puede tardar decenas de segundos: configure un timeout de cliente de al menos 70 segundos. Si tarda más de 60 segundos, la capa de entrada de la API responde 504 con una página HTML, sin código: es una lectura, repítala. SII_ERROR_CXN es frecuente e intermitente en el SII de producción: reintente respetando Retry-After (30 segundos), con espera exponencial (30, 60 y 120 segundos) y un tope de 3 intentos; cada intento puede tardar decenas de segundos.

Sesión del SII entre ambientes (sin verificar). La sesión del SII se reusa 15 minutos por certificado, en los dos ambientes. Si alterna ambiente=0 y ambiente=1 con el mismo certificado en menos de 15 minutos, el SII podría rechazar la sesión. Desde la versión 1.5.3 la respuesta es SII_ERROR_CXN, reintentable (antes, SII_RESPUESTA_INESPERADA): si persiste después de los reintentos, espere 15 minutos y repita antes de contactar a soporte.

Para probar. Con el RUT 1-9 o un RUT de prueba del cliente no se consulta al SII ni se valida el certificado: la respuesta es siempre un único CAF de ejemplo, del folio 1 al 10 (el ejemplo de respuesta de esta página es otro: una empresa con dos CAF). El RUT de prueba no simula los errores del SII: CONTRIBUYENTE_SIN_PERMISO, SII_ERROR_CXN y los rechazos solo se ven contra el SII.

Autorización

basic
headerAuthorizationBasic <token>

Parámetros de ruta

rut*string

RUT de la empresa.

tipoDocumento*integer

Tipo del documento DTE, con el código del SII: 33 factura, 34 factura exenta, 39 y 41 boletas, 56 nota de débito, 61 nota de crédito, entre otros.

Formatoint32

Parámetros de query

ambiente?integer

Ambiente del SII: 0 = Homologación (certificación), 1 = Producción. Si se omite, opera en producción: páselo siempre explícito. Un valor que no se reconoce no da error: la operación corre en producción. Un número distinto de 0 y 1 no da error y corre en homologación. En caf_v1_reobtener, ese mismo número corre en producción: use 0 o 1 en las dos.

Formatoint32
Por defecto1
Valor en01

Cuerpo del request

Datos del certificado.

application/json
  1. body

Datos del certificado digital.

Contrasenna*string

Contraseña del PFX, en claro o cifrada con la clave de cifrado del perfil del cliente. Dato sensible: no se registra en logs del integrador.

Data*string

PFX del certificado, en base64. Dato sensible: no se registra en logs del integrador.

Formatobyte

Cuerpo de la respuesta

Los CAF del SII para la empresa y el tipo de documento: Cafs, un elemento por CAF, ordenados por FolioInicial de mayor a menor. Cada CAF trae FolioInicial, FolioFinal, Cantidad, Fecha, Dueno y RUTDueno. Cafs vacía significa que el SII no lista CAF de ese tipo para la empresa; nunca es nula. Con el RUT 1-9 o un RUT de prueba del cliente, un único CAF de ejemplo, del folio 1 al 10.

application/json
  1. response

Los CAF de una empresa para un tipo de documento: la respuesta de caf_v1_listar y de caf_v1_anulacion_masiva_listar.

Cafs?array<>|

Un elemento por CAF. En caf_v1_listar nunca es nula: es una lista vacía si el SII no lista CAF de ese tipo para la empresa.

curl --request POST \  --url 'https://api.enrolamiento.cl/v1/caf/1-9/listar/33?ambiente=0' \  --header 'Accept: application/json' \  --header 'Authorization: Basic <base64 de usuario:apikey>' \  --header 'Content-Type: application/json' \  --data '{  "Contrasenna": "********",  "Data": "MIIC"}'
{  "Cafs": [    {      "Cantidad": 100,      "Dueno": "Usuario Ejemplo",      "Fecha": "12-03-2026",      "FolioFinal": 1200,      "FolioInicial": 1101,      "RUTDueno": "12345678-5"    },    {      "Cantidad": 100,      "Dueno": "Usuario Ejemplo",      "Fecha": "05-01-2026",      "FolioFinal": 1100,      "FolioInicial": 1001,      "RUTDueno": "12345678-5"    }  ]}

Ejemplos de la respuesta 500 en text/plain

El titular del certificado no está autorizado por la empresa para CAF (CERT_SIN_PERMISO)

CERT_SIN_PERMISO:El certificado no está autorizado por la empresa 11111111-1 para operar con folios (CAF) en el SII.

El SII pidió intentarlo más tarde (reintentable) (SII_ERROR_CXN)

SII_ERROR_CXN:Error de comunicacion con el SII, intente nuevamente.

Reintentos e idempotencia

Idempotente: sí. Repetirla con los mismos datos no duplica nada.

Qué hacerCódigos y status
Reintentar solo, con espera (automatico)409, SII_ERROR_CXN
Consultar el estado antes de repetir (manual)CERT_ERROR, ERROR_GENERAL, SEC_USER_NOT_AUTHENTICATED
No repetir: corregir la causa (nunca)CERT_AUTH_NOT_CONFIGURED, CERT_EXPIRADO, CERT_NO_CONFIGURADO_AUTH, CERT_NO_VALIDO, CERT_REQUERIDO, CERT_REVOCADO, CERT_SIN_PERMISO, CONTRIBUYENTE_SIN_PERMISO, SEC_EMP_NOT_AUTHORIZED, SEC_USER_BOLSII, SII_RESPUESTA_INESPERADA

Un código que no figura en esta tabla se resuelve con la regla de respaldo.