Cómo funciona REDEC
Cómo funciona REDEC
Funcionamiento general
El módulo REDEC de Soyio te permite cumplir con la NCG 540 de la CMF registrando todas las acciones de consentimiento asociadas a evaluaciones de riesgo crediticio y generando reportes regulatorios.
Componentes del sistema
API de registro REDEC
El endpoint POST /api/v1/redec/consent_actions registra acciones de consentimiento vinculadas a RUT de usuarios chilenos, cumpliendo con los requisitos específicos de la CMF.
Diferencias con consent_actions estándar:
- Requiere
entity_nin(RUT del usuario) - Permite
executive_nin(RUT del ejecutivo) - Diseñado específicamente para cumplimiento regulatorio chileno
- Se incluye automáticamente en reportes RDC30
API de reportes
Los endpoints de reportes te permiten:
- Crear reportes RDC30 y RDC40 con rangos de fechas específicos
- Los reportes se generan automáticamente en formato CMF
{
"kind": "rdc30",
"starts_at": "2026-01-01T00:00:00Z",
"ends_at": "2026-01-31T23:59:59Z"
}
Webhooks
El sistema envía webhooks para eventos REDEC:
consent_action.created- Nueva acción de consentimiento registradaconsent_action.redec_receipt_generated- Recibo PDF de consentimiento REDEC generado y listo para descargareport.created- Nuevo reporte generado (verificakind: "rdc30"okind: "rdc40"en el payload)redec.rdc40_no_changes- Evento informativo cuando no hubo eventos que generen entradas RDC40 en el período (ver Genera reportes RDC40)
Webhook de recibos PDF
El webhook consent_action.redec_receipt_generated se envía cuando el recibo PDF de un consentimiento REDEC ha sido generado exitosamente y está listo para descarga:
{
"event": "consent_action.redec_receipt_generated",
"data": {
"id": "consact_abc123...",
"user_reference": "cliente_00042",
"redec_receipt_pdf": "https://api.soyio.id/api/v1/redec/consent_actions/consact_redec_abc123.../download_receipt",
"redec_pdf_hash": "a3b2c1d4e5f6789012345678901234567890abcdef1234567890abcdef123456",
"redec_id": "REDEC_2026_001234",
"created_at": "2026-01-15T10:30:00Z"
}
}
Campos importantes:
redec_receipt_pdf: URL para descargar el PDF del reciboredec_pdf_hash: Hash SHA256 para verificar integridad del PDFredec_id: Identificador único del proceso REDECuser_reference: Tu referencia interna del usuario (si la proporcionaste)
Usa el webhook report.created y verifica el campo kind en el payload para identificar reportes RDC30 y sincronizarlos semanalmente con la CMF según lo requiere la normativa.
Recibos PDF automáticos
Cada consentimiento REDEC registrado genera automáticamente un recibo PDF con evidencia completa del consentimiento. Este recibo incluye:
Información del recibo:
- Identificador único del proceso REDEC
- RUT del usuario que otorgó el consentimiento
- RUT del ejecutivo (si aplica)
- Fecha y hora exacta del consentimiento
- Tipo de consentimiento y producto asociado
- Método de captura (web, IVR, sucursal, etc.)
Además, el sistema calcula un hash SHA256 del PDF generado, que se retorna en la API para verificar la integridad del archivo descargado.
Flujo de generación de recibos
- Registro del consentimiento - Cuando registras un consentimiento REDEC, el sistema inicia la generación del recibo
- Generación automática - El recibo PDF se genera en segundo plano
- Notificación por webhook - Cuando el PDF está listo, recibes el webhook
consent_action.redec_receipt_generated - Descarga del recibo - Usa el endpoint
/redec/consent_actions/{consent_action_id}/download_receiptpara descargar el PDF
Verificación de integridad
El sistema calcula un hash SHA256 para cada recibo PDF, el cual se retorna en el header X-SHA256-Hash de la API y en el webhook. Puedes usar este hash para verificar que el archivo descargado no ha sido modificado:
import crypto from 'crypto';
import fs from 'fs';
// Verificar integridad del recibo descargado
function verifyReceiptIntegrity(pdfPath, expectedHash) {
const fileBuffer = fs.readFileSync(pdfPath);
const sha256 = crypto.createHash('sha256');
sha256.update(fileBuffer);
const calculatedHash = sha256.digest('hex');
return calculatedHash === expectedHash;
}
// Usar con el hash del webhook
const isValid = verifyReceiptIntegrity(
'/path/to/receipt.pdf',
'a3b2c1d4e5f6789012345678901234567890abcdef1234567890abcdef123456'
);
console.log('Recibo válido:', isValid);
Los recibos PDF sirven como evidencia auditable del consentimiento para:
- Auditorías de la CMF
- Verificación interna de cumplimiento
- Respaldo legal ante disputas
- Archivo histórico de consentimientos
Endpoint de descarga
GET /api/v1/redec/consent_actions/{consent_action_id}/download_receipt
El endpoint retorna:
- Content-Type:
application/pdf - Header SHA256: Hash del PDF en el header
X-SHA256-Hash - Body: Contenido binario del PDF
Para más información sobre cómo descargar y trabajar con recibos, consulta la guía de recibos REDEC.
Modelo de datos REDEC
Acción de consentimiento REDEC
Cada acción de consentimiento REDEC extiende el modelo estándar de consentimiento con información regulatoria:
Componentes principales:
- Action Token: Evidencia criptográfica del consentimiento
- Entity NIN: RUT del usuario (obligatorio)
- Executive NIN: RUT del ejecutivo (opcional)
- Consent Template: Plantilla que define el propósito
- Timestamp: Fecha y hora exacta del consentimiento
- Consent Method: Método de captura (web, IVR, firma, etc.)
- Agreement: Se actualiza automáticamente con el consentimiento
Las acciones de consentimiento registran cada vez que un usuario otorga, actualiza o revoca un consentimiento. Para entender el concepto completo, revisa la guía de gestión de consentimientos.
Reporte RDC30
El reporte RDC30 consolida todas las acciones de consentimiento en un período:
Información incluida:
- RUT de usuarios que otorgaron consentimiento
- Fecha y hora de cada consentimiento
- Tipo de consentimiento
- Método de captura
- RUT del ejecutivo (si aplica)
- Actualizaciones y revocaciones
Relación con otros módulos
Integración con Consentimiento
REDEC utiliza la infraestructura del módulo de consentimiento:
- Las plantillas de consentimiento se crean igual que las plantillas estándar
- El SDK captura consentimientos de la misma forma
- Los Agreements se actualizan automáticamente
- La evidencia se genera igual que en consentimientos regulares
La diferencia: REDEC añade el registro del RUT y genera reportes regulatorios específicos para la CMF.
Revisa la guía de consentimientos para entender los conceptos básicos.
Requisitos de la NCG 540
¿Qué debe registrarse?
Según la NCG 540, las instituciones deben registrar:
- Consentimientos iniciales - Cuando el usuario autoriza consulta de información crediticia
- Actualizaciones de consentimiento - Cuando el usuario modifica sus autorizaciones
- Revocaciones - Cuando el usuario retira el consentimiento
- Información del solicitante - RUT del usuario
- Información del ejecutivo - RUT de quien gestionó (opcional pero recomendado)
- Tipo de crédito - Clasificación del producto crediticio según la CMF
Cumplimiento de plantillas REDEC
Para que un consentimiento sea válido para REDEC y se incluya en reportes RDC30, la plantilla de consentimiento debe cumplir requisitos estrictos:
Data use permitido
La plantilla debe usar uno de estos dos data uses:
finance.credit_risk_assessment- Evaluación de riesgo crediticiofinance.commercial_risk_assessment- Evaluación de riesgo comercial
Todos los data_requirements de la plantilla deben usar el mismo data use. No mezcles ambos en una misma plantilla.
Producto con redec_kind (obligatorio)
La plantilla debe referenciar (vía product_id) un producto que tenga un redec_kind que clasifica el tipo de crédito.
Paso 1: Crear el producto
{
"name": "Crédito de Consumo",
"redec_kind": "consumer_credits"
}
Paso 2: Referenciar en la plantilla
{
"name": "...",
"data_requirements": [...],
"product_id": "prod_abc123..."
}
Usa /api/v1/redec/consent_templates para crear plantillas REDEC. Este endpoint valida el cumplimiento automáticamente al momento de creación.
Valores válidos de redec_kind:
commercial_credits- Créditos comercialesconsumer_credits- Créditos de consumohousing_credits- Créditos hipotecariosfinancial_operations- Operaciones financierasacquired_debt_instruments- Instrumentos de deuda adquiridoscontingent_credits- Créditos contingentesfreely_available_credit_line_limits- Límites de líneas de crédito de libre disposición
Validación automática
El sistema valida automáticamente:
- ✅ Data uses permitidos en
data_requirements - ✅ La plantilla tiene un
product_id - ✅ El producto referenciado tiene un
redec_kindválido
Si la plantilla no cumple, el endpoint /redec/consent_actions retornará error 400.
Únicamente las acciones registradas con plantillas REDEC-compliant se incluirán en los reportes RDC30. Las acciones con plantillas no conformes no serán reportables.
Plazos de reporte
Los reportes RDC30 deben:
- Generarse semanalmente (cada sábado entre las 00:00 y 01:00 si está habilitado)
- Incluir todas las acciones del período
- Estar disponibles para sincronización con la CMF
- Conservarse por el tiempo establecido en la normativa
Flujo de trabajo recomendado
- Configura el módulo REDEC en tu cuenta y establece el código REDEC de tu empresa
- Crea productos con
redec_kindpara cada tipo de crédito que ofreces - Crea plantillas de consentimiento REDEC-compliant referenciando los productos
- Integra el SDK o API para capturar consentimientos
- Registra cada acción con el endpoint REDEC incluyendo el RUT
- Activa los reportes periódicos automáticos en la configuración
- Suscríbete a webhooks para rastrear generación de reportes
- Sincroniza reportes con la CMF semanalmente usando los webhooks
En la sección de configuración encontrarás cómo activar los reportes periódicos automáticos que simplifican el cumplimiento.