Saltar al contenido principal

Consentimiento extendido

Consentimiento extendido

Un consentimiento REDEC dura 15 días hábiles. Si en ese plazo le otorgas al deudor el crédito que evaluaste, ese mismo consentimiento queda extendido: sigue vigente mientras dure la obligación y el deudor ya no puede revocarlo (NCG 576, numerales 5.3 y 7.4).

Soyio no sabe cuándo otorgas un crédito ni cuándo termina, así que debes informarlo con dos llamadas: una para extender el consentimiento y otra para cerrar la extensión.

Desde el dashboard, registra ambos en la tarjeta "Extensión" del detalle del consentimiento mientras esté vigente o extendido; ahí las fechas se ingresan en la zona horaria de tu empresa. Si el consentimiento ya caducó o fue revocado después de otorgar el crédito, regístralo por API.

Las dos etapas​

EtapaQué pasaCuánto dura
EvaluaciónEl deudor otorga el consentimiento y consultas su deuda para evaluar el crédito.15 días hábiles desde el otorgamiento
OperaciónOtorgaste el crédito y extiendes el consentimiento.Hasta que cierres la extensión

Ambas etapas usan el mismo consentimiento y el mismo código REDEC. No necesitas capturar un consentimiento nuevo para la operación.

Registra la extensión el mismo día

Extiende el consentimiento apenas otorgues el crédito. Mientras Soyio no lo sepa, el deudor puede revocarlo (desde el Privacy Center o con una revocación que registres por API) y esa revocación sale en el siguiente RDC30.

Extiende el consentimiento​

POST /api/v1/redec/consent_actions/{consent_action_token}/extend

Envía en consent_action_token el id del consent action otorgado (consact_...) o su código REDEC.

ParámetroRequeridoDescripción
operation_granted_atSíFecha y hora en que otorgaste el crédito, en ISO 8601 con zona horaria. Debe estar dentro de los 15 días hábiles del consentimiento y no puede ser futura.
operation_idNoIdentificador de la operación de crédito en tu sistema, de hasta 30 caracteres.
POST /api/v1/redec/consent_actions/{consent_action_token}/extend
curl -X POST "https://app.soyio.id/api/v1/redec/consent_actions/consact_1B2M2Y8AsgTpgAmY7PhCfg/extend" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"operation_granted_at": "2026-10-26T15:30:00-03:00",
"operation_id": "OP-123"
}'

La respuesta trae la extensión registrada:

201 Created
{
"redec_extension": {
"id": "redecext_8fK2Lq0vT3mXa1bC9dE4fG",
"kind": "extend",
"consent_action_id": "consact_1B2M2Y8AsgTpgAmY7PhCfg",
"redec_id": "AB12CD34EF56GH78IJ90",
"operation_id": "OP-123",
"operation_granted_at": "2026-10-26T18:30:00.000Z",
"obligation_ended_at": null,
"closing_reason": null,
"agreement_id": "agr_1B2M2Y8AsgTpgAmY7PhCfg",
"agreement_version": 4,
"created_by": { "id": "pk_1B2M2Y8AsgTpgAmY7PhCfg", "type": "api_key" },
"created_at": "2026-10-26T18:35:00.000Z"
}
}

Qué responde:

  • 201 cuando registra la extensión.
  • 200 si repites la llamada con los mismos datos. Devuelve la extensión que ya estaba registrada.
  • 409 si repites la llamada con datos distintos.
  • 422 si el consentimiento no es REDEC, si el crédito se otorgó fuera de sus 15 días hábiles o si el deudor lo revocó antes del otorgamiento.

Si el deudor revocó después de que otorgaste el crédito, pero antes de que registraras la extensión, Soyio acepta la extensión y esa revocación queda sin efecto para este consentimiento: deja de contar en su estado y en los próximos RDC30. Soyio no corrige los reportes que ya enviaste ni avisa al deudor; si corresponde, hazlo tú.

Qué cambia mientras está extendido​

  • Compliance status: el consentimiento cumple aunque hayan pasado los 15 días hábiles, y is_revokable es false, salvo que el deudor tenga otro consentimiento vigente de la misma plantilla. Sigue validando compliance antes de cada consulta.
  • Consultas a la CMF: reporta los accesos en RDC31 mientras el consentimiento esté extendido.
  • Revocación del deudor: el deudor ya no puede revocar este consentimiento. Si el deudor intenta revocarlo desde el Privacy Center, o si registras su revocación por API, Soyio responde 422. La única excepción es que el deudor tenga otro consentimiento vigente de la misma plantilla: en ese caso la revocación aplica a ese otro, y el extendido sigue vigente.
  • RDC30: la extensión no cambia el reporte. El consentimiento se informa una sola vez, cuando se otorga.
Fecha de fin en la API de la CMF

Mientras el consentimiento esté extendido, data_permissions[].expires_at es null. Al construir la llamada a la CMF, envía 19000101 en fecha_fin_consentimiento y 999999 en hora_fin_consentimiento, los mismos valores que Soyio informa en el RDC30 para un consentimiento sin revocar.

Revocaciones pedidas en sucursal

Si el deudor pide revocar en una sucursal, regístralo como una revocación del deudor, no con el endpoint de revocaciones de la empresa. Así Soyio puede aplicar la protección del consentimiento extendido.

Cierra la extensión​

Cuando termina la obligación, cierra la extensión:

POST /api/v1/redec/consent_actions/{consent_action_token}/close_extension
ParámetroRequeridoDescripción
obligation_ended_atSíFecha y hora en que terminó la obligación, en ISO 8601 con zona horaria. No puede ser futura ni anterior al otorgamiento del crédito.
closing_reasonSíMotivo del término: payment (pago), acceleration (aceleración), novation (novación) u other (otro).
POST /api/v1/redec/consent_actions/{consent_action_token}/close_extension
curl -X POST "https://app.soyio.id/api/v1/redec/consent_actions/consact_1B2M2Y8AsgTpgAmY7PhCfg/close_extension" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"obligation_ended_at": "2027-03-15T18:00:00-03:00",
"closing_reason": "payment"
}'

Desde obligation_ended_at el consentimiento deja de estar vigente: el compliance status deja de cumplir y Soyio rechaza los accesos posteriores que reportes para el RDC31. Si el deudor tiene otro consentimiento vigente para los mismos datos, ese sigue cubriéndolos.

Cerrar no es revocar. Soyio no avisa al deudor ni informa el cierre en el RDC30. La fecha de término queda registrada: es la que la norma usa para contar los 5 años durante los que debes conservar la información del consentimiento.

Reprogramación y novación

Una reprogramación mantiene la obligación, así que no cierres la extensión. Una novación la extingue: cierra la extensión con closing_reason: novation. Si después evalúas un crédito nuevo, necesitas un consentimiento nuevo.

Webhooks​

Soyio envía un evento cuando registras cada paso:

EventoCuándo se envía
consent_action.redec_extendedAl extender un consentimiento
consent_action.redec_extension_closedAl cerrar la extensión

Ambos traen el consent_action_id, el user_reference, el redec_id y los datos de la extensión en redec_extension.

Próximos pasos​