Cómo Integrar tu ERP (Softland o Defontana) con el SII para Conciliar DTE Automáticamente
Guía técnica paso a paso para conectar Softland o Defontana con los servicios del SII y automatizar la conciliación de DTE. Incluye arquitectura de integración, herramientas recomendadas y costos reales.
El problema real que viven los equipos contables chilenos
Cada mes, en miles de empresas chilenas, un contador o analista financiero descarga manualmente el Registro de Compras del SII, lo abre en Excel, copia los datos del ERP (Softland, Defontana, o similar) en otra columna y pasa horas buscando por qué los números no cuadran.
Este proceso tarda entre 2 y 5 días hábiles dependiendo del volumen. Y se repite mes a mes.
Esta guía te muestra cómo automatizarlo completamente usando las APIs disponibles del SII y los mecanismos de integración de los ERPs más usados en Chile.
Entendiendo la arquitectura de datos entre SII y tu ERP
Para automatizar la conciliación, primero necesitas entender qué datos fluyen entre sistemas:
¿Quieres automatizar tu conciliación de DTE o tu flujo de caja?
Mapeamos tus procesos operativos actuales y te proponemos una solución con IA adaptada a tu ERP en menos de una semana.
[SII] [Tu ERP]
├── Registro de Compras ←→ ├── Libro de Compras Interno
├── Registro de Ventas ←→ ├── Facturas Emitidas
├── DTE recibidos (XML) ←→ ├── Cuentas por Pagar
└── Estado de documentos ←→ └── Cuentas por Cobrar
La conciliación manual consiste en cruzar estas 4 fuentes y detectar discrepancias. La conciliación automática hace exactamente lo mismo, pero en segundos y sin errores de digitación.
Opción 1: Integración con Defontana
Cómo acceder a los datos de Defontana programáticamente
Defontana ofrece una API REST (documentada en api.defontana.com) con autenticación por token. Los endpoints más relevantes para conciliación son:
GET /api/Sale/GetSaleDocuments
# Retorna documentos de venta (facturas emitidas)
GET /api/Purchase/GetPurchaseDocuments
# Retorna documentos de compra (facturas recibidas)
GET /api/Accounting/GetAccountMovements
# Retorna movimientos contables del período
Autenticación:
POST https://api.defontana.com/api/Token
Content-Type: application/json
{
"UserMail": "tu_usuario@empresa.cl",
"Password": "tu_contraseña",
"CompanyCode": "TU_RUT_EMPRESA"
}
La respuesta incluye un access_token Bearer válido por 24 horas.
Extracción del Registro de Compras desde el SII
El SII no tiene una API pública y abierta para consulta masiva. Sin embargo, existen dos caminos válidos:
Camino A — Descarga manual automatizada (web scraping con playwright):
# Ejemplo de automatización con Playwright (Python)
from playwright.async_api import async_playwright
async def download_libro_compras(rut, clave, periodo):
async with async_playwright() as p:
browser = await p.chromium.launch()
page = await browser.new_page()
# Login SII
await page.goto("https://zeusr.sii.cl/cgi_AUT2000/autenticacionn.cgi")
await page.fill("#rut", rut)
await page.fill("#clave", clave)
await page.click("#btnLogin")
# Navegar a Registro de Compras y Ventas
await page.goto(f"https://rcv.sii.cl/DTERCV/...")
# ... lógica de descarga del CSV
Camino B — API del SII mediante certificado digital:
Si tu empresa tiene certificado digital vigente, puedes usar los servicios web del SII (palena.sii.cl) para consultar el estado de DTEs y el registro de compras de forma programática con autenticación por certificado X.509.
Opción 2: Integración con Softland
Extracción de datos desde Softland
Softland almacena sus datos en SQL Server. La forma más directa de integración es mediante consultas SQL directas a la base de datos del sistema:
-- Facturas de compra del período
SELECT
DocRut, -- RUT proveedor
DocFolio, -- Folio DTE
DocFecha, -- Fecha emisión
DocNeto, -- Monto neto
DocIVA, -- IVA
DocTotal, -- Total
DocEstado -- Estado de pago
FROM
sof_MovCompra
WHERE
DocFecha BETWEEN '2026-05-01' AND '2026-05-31'
AND DocTipo IN ('33', '34') -- Factura afecta y exenta
Alternativa sin acceso directo a SQL: Softland también permite exportar reportes en formato CSV/Excel desde el módulo de Reportes → Compras → Libro de Compras. Este export puede automatizarse usando macros o automatización de escritorio (pyautogui, Playwright).
Arquitectura completa de la integración automática
El flujo completo de conciliación automatizada funciona así:
┌─────────────────────────────────────────────────────┐
│ TRIGGER MENSUAL │
│ (n8n Cron: 1er día del mes) │
└────────────────────────┬────────────────────────────┘
│
┌──────────────┼──────────────┐
▼ ▼ ▼
[Defontana API] [SII Export] [Banco CSV]
Facturas internas Registro oficial Cartola bancaria
│ │ │
└──────────────┼──────────────┘
│
▼
┌─────────────────────┐
│ MOTOR DE CRUCE │
│ (Python / n8n) │
│ │
│ Algoritmo: │
│ 1. Normalizar RUTs │
│ 2. Match por folio │
│ 3. Tolerancia ±3 │
│ días en fechas │
│ 4. Comparar montos │
└──────────┬──────────┘
│
┌──────────────┼──────────────┐
▼ ▼ ▼
[CONCILIADO] [DIFERENCIA] [SIN CRUCE]
Guardar en DB Alerta email Revisar manual
La lógica de tolerancia en fechas: el problema más común
Uno de los errores más frecuentes al conciliar DTE con cartolas bancarias es la diferencia de fechas. La fecha de emisión del DTE y la fecha en que el banco acredita el pago raramente coinciden.
Ejemplo real:
DTE Folio 4521 — Fecha emisión: 15 de mayo
Pago Transbank — Fecha abono cartola: 17 de mayo (T+2)
El algoritmo de conciliación debe incluir una ventana de tolerancia configurable:
def conciliar_con_tolerancia(dte_fecha, pago_fecha, tolerancia_dias=3):
delta = abs((pago_fecha - dte_fecha).days)
return delta <= tolerancia_dias
Para Transbank/Webpay, el estándar es T+2 (2 días hábiles). Para transferencias bancarias, el mismo día o T+1. Esta tolerancia debe parametrizarse según el medio de pago del proveedor.
Implementación con n8n: flujo completo
Para equipos que no quieren escribir código desde cero, n8n (auto-hospedado) permite construir este flujo visualmente:
Nodo 1: HTTP Request → API Defontana
{
"method": "GET",
"url": "https://api.defontana.com/api/Purchase/GetPurchaseDocuments",
"headers": {
"Authorization": "Bearer {{$node['Auth'].json.access_token}}"
},
"query": {
"startDate": "{{$now.startOf('month').toISODate()}}",
"endDate": "{{$now.endOf('month').toISODate()}}"
}
}
Nodo 2: Read Binary File → CSV del SII
Leer el archivo CSV del Registro de Compras descargado y parsearlo con el nodo Spreadsheet File.
Nodo 3: Code (JavaScript) → Algoritmo de cruce
const dtesERP = $node["Defontana"].json;
const dtesSII = $node["CSV_SII"].json;
const resultados = {
conciliados: [],
diferencias: [],
sin_cruce: []
};
for (const dte of dtesSII) {
const match = dtesERP.find(erp =>
erp.rut === dte.RutDoc &&
erp.folio === dte.NroDoc &&
Math.abs(erp.total - dte.MntTotal) < 1 // Diferencia menor a $1
);
if (match) {
resultados.conciliados.push({ ...dte, erp_id: match.id });
} else {
resultados.sin_cruce.push(dte);
}
}
return [resultados];
Nodo 4: Google Sheets → Guardar resultado
Escribir el resultado de la conciliación en una hoja de Google Sheets para revisión del equipo contable.
Nodo 5: Gmail / Slack → Alerta de diferencias
Si resultados.diferencias.length > 0, enviar notificación automática con el detalle de las brechas.
Cuánto demora la implementación
| Fase | Tiempo estimado | |---|---| | Configuración de accesos API (Defontana/Softland) | 2–4 horas | | Configuración de exportación SII | 1–2 días | | Desarrollo del flujo n8n | 3–5 días | | Pruebas con datos históricos | 2–3 días | | Total implementación | ~2 semanas |
Resultado esperado
Después de implementar esta integración:
- Tiempo de conciliación mensual: de 3–5 días a 45 minutos de revisión humana de excepciones.
- Tasa de conciliación automática: 92–98% de documentos se cruzan sin intervención.
- Documentos que requieren revisión manual: 2–8% (principalmente diferencias de fechas o montos por descuentos no registrados).
Si quieres ver cómo funciona este proceso con los datos reales de tu empresa, podemos hacer una demostración usando un mes de tus cartolas y libro de compras.
¿Necesitas automatizar estos procesos?
Agenda un diagnóstico gratuito y descubre cómo la IA puede transformar la gestión tributaria y operativa de tu empresa.
Diagnóstico gratuitoArtículos relacionados
Automatización de Cobranza en Chile: Cómo Cobrar sin Perseguir Clientes
Aprende cómo automatizar tu proceso de cobranza en Chile utilizando recordatorios inteligentes, WhatsApp e IA para recuperar cartera vencida sin dañar la relación con tus clientes.
Automatizar el Onboarding de Clientes: Guía para Empresas de Servicios
Aprende cómo automatizar el alta de clientes (onboarding) en tu empresa usando IA para recolectar datos, crear fichas en tu ERP y dar la bienvenida al instante.
Automatizar Órdenes de Compra: Del Excel a la IA en 7 Días
Aprende cómo dejar atrás el PDF y el Excel en tus procesos de compras B2B utilizando Inteligencia Artificial para extraer, validar e ingresar órdenes de compra a tu ERP.