Saltar al contenido principal

Inicio rápido

Comienza capturando consentimiento

Esta guía te llevará paso a paso para abordar el primer paso del ciclo de vida del consentimiento: solicitar consentimiento. Para completar la captura de consentimiento, comenzarás creando una plantilla de consentimiento básica y luego integrarás el componente de consentimiento en tu aplicación web.

Pre-requisitos

Antes de comenzar, asegúrate de tener:

Importante

Si aún no tienes tu cuenta Empresa en Soyio, contacta a nuestro equipo para obtener una cuenta de prueba completando el siguiente formulario.

Paso a paso

1. Crea una plantilla de consentimiento básica

Crea una plantilla de consentimiento (consent template) que defina para qué datos y para qué usos solicitarás consentimiento. En este ejemplo, crearemos una plantilla de consentimiento para el envío de comunicaciones de marketing con una vigencia de 12 meses.

Ejecuta un POST a la API de Soyio para crear la plantilla y guarda el id del consent template creado.

tip

Para adaptar esta plantilla a tus necesidades, profundiza en la creación de plantillas y explora todas las opciones de configuración.

POST /api/v1/consent_templates
{
// Nombre interno de la plantilla
"name": "Template de consentimiento para Comunicaciones Comerciales",

// Periodo durante el cual se pueden usar los datos para la finalidad de marketing
"duration": "P12M",

// Titulo que aparecerá en el checkbox
"title": "Comunicaciones Comerciales",

// Cláusula de consentimiento que aparecerá en el checkbox
"text": "Autorizo el uso de mis datos personales para el envío de comunicaciones comerciales relacionadas con productos y servicios de la empresa.",

"data_requirements": [
{
"data_category": "name",
"data_uses": [
"marketing",
"marketing.communications.email",
"marketing.advertising"
]
},
{
"data_category": "email",
"data_uses": [
"marketing",
"marketing.communications.email",
"marketing.advertising"
]
}
]
}

2. Integra el componente de consentimiento

Inicializa el componente de consentimiento en tu interfaz usando el SDK de Soyio. Para ello, necesitas el id del consent_template creado previamente. Estos empiezan con el prefijo constpl_. Si no lo tienes, puedes consultar la lista de plantillas de consentimiento en la API de Soyio.

tip

Este módulo está diseñado para integrarse de manera nativa en tu interfaz y podrás personalizarlo con el look and feel de tu aplicación. Revisa la sección de personalización para más detalles.

import { ConsentBox } from "@soyio/soyio-widget";

// Configuración del componente
const consentOptions = {
templateId: "<consent_template_id>",
onEvent: (data) => console.log(data)
};

// Montar el componente
document.addEventListener("DOMContentLoaded", () => {
const consentBox = new ConsentBox(consentOptions);
consentBox.mount("#consent-box-container");
});
<!-- HTML -->
<div id="consent-box-container"></div>

Al completar este paso, el usuario podrá ver un checkbox de consentimiento con el texto y la información de la plantilla de consentimiento. Además se emitirá un evento CONSENT_CHECKBOX_CHANGE cuando el usuario haga click en el checkbox de consentimiento.

3. Obtén el token de acción

Cuando el usuario haga click en el checkbox de consentimiento, se creará un token de acción. Este token está asociado a la evidencia del consentimiento y es necesario para crear el registro de consentimiento.

Escucha el evento CONSENT_CHECKBOX_CHANGE que emite el componente, este evento contiene el token de acción.

Escucha el evento
const consentBox = new ConsentBox(consentOptions);
consentBox.on('CONSENT_CHECKBOX_CHANGE', (data) => {
console.log(data);
});
Respuesta
{
eventName: 'CONSENT_CHECKBOX_CHANGE',
isSelected: boolean,
actionToken: string
}
tip

Explora otras formas de obtener el token de acción en la guía de captura de consentimiento.

4. Crea el registro de consentimiento

Obtener el action token no es suficiente para registrar el consentimiento. Es necesario crear un registro de consentimiento. Puedes hacerlo inmediatamente después de obtener el action token o cuando el usuario complete un formulario o haga click en un botón. Lo importante es que lo hagas antes de comenzar a usar los datos que el usuario ha entregado.

Crea el registro de consentimiento mediante el endpoint de creación de acción de consentimiento indicando el action_token obtenido en el paso anterior.

Opcionalmente, agrega un id asociado al usuario usando el parámetro user_reference. De esta manera podrás asociar el consentimiento con un usuario específico de tu sistema.

POST /api/v1/consent_actions
{
"action_token": "<action_token>",
"user_reference": "<identificador_usuario>" // Opcional
}

Una vez se haya creado el registro de consentimiento, se retornará la acción creada. En ella, habrá un entity_id, que representa el identificador único del usuario que otorgó el consentimiento en Soyio. Te recomendamos guardar el entity_id en tu sistema y asociarlo al usuario para futuras referencias.

tip

Explora otras formas de registrar el consentimiento en la guía de captura de consentimiento.

5. Consulta el consentimiento

Consulta el endpoint del estado de cumplimiento (ComplianceStatus) indicando el entity_id y filtrando por el consent_template_id que utilizaste.

Las respuestas de este endpoint pueden ser:

  • compliant: el usuario cumple con todos los requerimientos del template.
  • partially_compliant: el usuario cumple parcialmente con algunos de los requerimientos del template.
  • non_compliant: el usuario no cumple con ninguno de los requerimientos del template.

Te recomendamos consultar el estado de cumplimiento cada vez que necesites usar los datos que el usuario ha entregado.

GET /api/v1/entities/<entity_id>/agreement/compliance_statuses?consent_template_id=<consent_template_id>
{
"compliance_statuses": [
{
"consent_template_id": "<consent_template_id>",
"entity_id": "<entity_id>",
"last_consent_action_id": "<last_consent_action_id>",
"status": "compliant"
}
]
}
tip

Explora otras formas de consultar el estado de cumplimiento en la guía de consulta de consentimiento.

Recuerda

La normativa establece que el usuario debe tener la posibilidad de gestionar su consentimiento. Revisa la guía de gestión de consentimientos para ver cómo puedes usar el Privacy Center de Soyio para cumplir con este requisito.

Próximos pasos