Saltar a contenido

Compras recibidas del SII: listado y aceptación o reclamo

Cómo leer el registro de compras del SII (las facturas que los proveedores le emitieron a la empresa) y registrar la aceptación o el reclamo de cada DTE dentro del plazo legal. Es la guía para integraciones contables y de aprobación de facturas.

Prerrequisitos: Primeros pasos.

El reloj corre: 8 días corridos

El reclamo de una factura debe registrarse dentro de los 8 días corridos desde la fecha de recepción en el SII. Pasado el plazo, la factura se entiende aceptada (acuse automático) y el IVA queda utilizado por el emisor. Una integración de aprobación debe consultar la fecha de recepción y priorizar por vencimiento.

Leer el listado de compras

Estos endpoints reproducen el registro de compras del SII (lo mismo que se descarga desde "Consulta de compras y ventas" en sii.cl), con los campos que exige el F29. Los parámetros van como form-data:

# Una fila por DTE recibido en el período
curl -X POST https://api.opentpv.cl/icv/compra/detalle \
  -H "Authorization: Bearer eyJhbGciOi..." \
  -F "periodo=202608" \
  -F "estadocontable=REGISTRO" \
  -F "codtipodoc=33"
  • periodo: mes contable AAAAMM.
  • estadocontable: sección del registro SII (REGISTRO es lo aceptado o por vencer; el SII también maneja pendientes, reclamados y no incluir).
  • codtipodoc: tipo de DTE (33 factura, 61 nota de crédito, 46 factura de compra...), u omitir para todos.

Cada fila trae emisor (RUT y razón social), folio, fechas de emisión y recepción, montos exento/neto/IVA, IVA no recuperable e impuestos adicionales: todo lo necesario para contabilizar.

# Totales del mes agregados por tipo de documento (para el F29)
POST /icv/compra/resumen        # -F periodo=202608

# XML original de un DTE recibido (lectura local, sin ir al SII)
POST /icv/compra/xml            # -F rutproveedor=... -F codtipodoc=33 -F folio=12345

Los equivalentes de venta (/icv/venta/detalle y /icv/venta/resumen) entregan el registro de ventas propio, útil para cuadrar el F29 completo.

Aceptar o reclamar un DTE recibido

Los cuatro endpoints usan la misma identificación del documento como form-data: rut (emisor, formato 76543210-K), tipodte y folio.

1. Consultar la fecha de recepción (para saber el plazo)

curl -X POST https://api.opentpv.cl/aceptacionreclamo/fecharecepcion \
  -H "Authorization: Bearer eyJhbGciOi..." \
  -F "rut=76543210-K" -F "tipodte=33" -F "folio=12345"

Con la fecha de recepción calculas cuántos de los 8 días quedan.

2. Registrar la acción ante el SII

curl -X POST https://api.opentpv.cl/aceptacionreclamo/ingresar \
  -H "Authorization: Bearer eyJhbGciOi..." \
  -F "rut=76543210-K" -F "tipodte=33" -F "folio=12345" \
  -F "tipoaccion=ACD"
Código Acción
ACD Acepta el contenido del documento (deja la factura cedible)
RCD Reclama el contenido del documento (rechaza la factura)
ERM Acuse de recibo de mercaderías o servicios conforme
RFP Reclamo por falta parcial de mercaderías
RFT Reclamo por falta total de mercaderías

Cualquier otro valor devuelve 400. Las acciones no se pueden deshacer: registrada una, solo se puede agregar otra encima, así que el flujo de aprobación debe confirmar antes de llamar.

3. Consultar el historial y la cedibilidad

# Eventos registrados ante el SII para ese DTE (quién aceptó/reclamó y cuándo)
POST /aceptacionreclamo/listaeventos     # -F rut=... -F tipodte=33 -F folio=12345

# ¿Sigue cedible para factoring? (un reclamo la deja no cedible)
POST /aceptacionreclamo/consultacedible  # mismos parámetros

Flujo típico de una integración de aprobación de facturas

1. Diario: POST /icv/compra/detalle del período en curso
2. Por cada factura nueva: fecharecepcion, calcular días restantes
3. Mostrar al aprobador (con el XML original si necesita el detalle)
4. Decisión: ingresar con ACD (y ERM al recibir conforme) o RCD/RFP/RFT
5. Contabilidad: a fin de mes, /icv/compra/resumen para el F29

Relacionado: si además registran la recepción física de la mercadería con actualización de stock, la API tiene el módulo de recepciones (POST /recepciones, borradores, confirmación idempotente y fotos de respaldo); pídenos la guía si tu integración lo necesita.