Documentación
El botón de cancelación de WWU hace que WooCommerce, FluentCart y Easy Digital Downloads cumplan con la normativa relativa a la botón de desistimiento en línea Exigido por la Directiva de la UE 2023/2673 (art. 54 bis del Código del Consumidor). Botón reglamentario, formulario en dos pasos, recibo en soporte duradero, registro inalterable y marca de tiempo. Gratuito y de código abierto (GPLv3).
Cómo funciona (en la práctica)
Para el cliente es muy sencillo: cuatro pasos:
- Haz clic en el botón. El cliente abre su pedido y hace clic en «Rescindir el contrato aquí» — desde el área de cuenta, desde el enlace del correo electrónico del pedido o desde la página pública (sin cuenta: busca el pedido por número + correo electrónico). El texto es ese exacta según lo previsto por la ley para cada idioma.
- Formulario en dos pasos. Comprueba de qué productos está renunciando (solo puede marcar algunos productos — retirada parcial), y luego confirma. Sin motivos obligatorios, sin «dark patterns».
- Recibo en un soporte duradero. En cuanto lo confirme, recibirá correo electrónico + PDF + enlace permanente verificable con el motivo de la cancelación y la fecha y hora exactas. El pedido pasa al estado «cancelación solicitada» y tú recibes una notificación.
- Prueba inalterable. Cada paso queda registrado en un registro solo añadir con cadena de hash y marca temporal (fecha certificada). Después, tú te encargas de gestionar el reembolso como siempre — registrado también como prueba del cumplimiento de los 14 días.
El resto del plugin sirve para hacer que este flujo correcto, fácil de gestionar y defendible. En resumen, qué incluye (cada punto tiene su propia sección a continuación):
- Para el cliente: botón reglamentario multilingüe donde sea necesario (cuenta, correo electrónico, página pública con búsqueda de invitados, código corto, bloque), guía paso a paso sobre los plazos y el reembolso, nota «porque está exento» cuando el botón, como es lógico, no está, certificado de verificación legible de la factura, devolución parcial por producto.
- Para ti (comerciante): panel de incorporación con una lista de comprobación con un solo clic y Prueba de envío de correo electrónico, gestión de solicitudes (procesada/reembolsada, sello de integridad de la cadena, reenvío del recibo, reembolso registrado), página Conformidad con cuenta atrás, etiquetas en uso y cláusulas preparadas, recibo como un auténtico correo electrónico de WooCommerce con vista previa, campo CSS personalizado.
- Gestión jurídica inteligente: abonos (un único derecho por contrato, botón en el pedido inicial), Exenciones, art. 59 con obtención del consentimiento en el proceso de pago y confirmación en un soporte duradero, ámbito de aplicación por país (UE/EEE o siempre), gestión B2B.
- Pruebas, marcas de tiempo e integridad: registro inalterable con cadena de hash + amarre gratuito OpenTimestamps (Bitcoin) o eIDAS RFC 3161 certificado (Sectigo gratuito o QTSP nacionales), reintento automático de las marcas, reembolso registrado.
- Privacidad y RGPD: IP anonimizado en el hash, la dirección IP completa se puede eliminar tras un periodo de retención configurable (por defecto, 10 años), registro de consentimientos Se puede exportar a CSV; incluye dos cláusulas de privacidad ya preparadas (interés legítimo).
- Documentación y cumplimiento normativo: generador del formulario tipo del anexo I-B y las cláusulas Para el acuerdo precontractual / Condiciones / Política de privacidad que hay que pegar — con el recordatorio de que no basta con instalar el botón, también hay que actualizar tus Términos y condiciones.
- Automatizaciones y desarrolladores: API REST de solo lectura + webhook firmado (HMAC) + 33 hooks documentados para Zapier/Make/n8n/CRM/servicio de asistencia, con prioridad en la privacidad (la IP del cliente nunca queda expuesta).
- Plataformas y compatibilidad: WooCommerce (HPOS + versión anterior), FluentCart y Easy Digital Downloads en un solo plugin; compatible con Complianz, TranslatePress y los plugins de caché (WP Rocket / LiteSpeed / W3TC).
Requisitos
| WordPress | 5.6+ (se recomienda 6.x) |
|---|---|
| PHP | 8.1+ (compilación del directorio de WordPress.org, con Dompdf 3.x). ¿Sigues usando PHP 7.4–8.0? En las publicación en GitHub Hay una versión compatible con PHP 7.4 (mismas funcionalidades, Dompdf 2.x): se trata de una solución provisional y no se mantendrá para siempre — PHP 7.4 ha llegado al final de su ciclo de vida desde noviembre de 2022; conviene pasar a PHP 8.1 o superior (más rápido y seguro). |
| Comercio electrónico | WooCommerce (HPOS + versión anterior), FluentCart o bien Easy Digital Downloads (3.0+) |
| Correo electrónico | Un complemento SMTP (por ejemplo, FluentSMTP) para enviar los recibos |
Instalación
- Desde el directorio de WordPress.org (recomendado): En WordPress, ve a Plugins → Añadir nuevo, buscar «Derecho de desistimiento de la WWU» → Instalar ahora. Desde aquí recibes los actualizaciones automáticas. Página en WordPress.org →
- Como alternativa (archivo zip manual): descargar
wwu-withdrawal-button.zipde las publicación en GitHub (incluye la biblioteca PDF), y luego Complementos → Añadir nuevo → Subir complemento → selecciona el archivo ZIP → Instalar ahora (si ya existe, selecciona «Sustituir el actual por el cargado»). - Activar. El plugin crea automáticamente la página pública «Derecho de desistimiento» y las tablas de registro.
Configuración
Ir a Botón de retirada → Ajustes y ve de arriba abajo. El Panel de control Tiene una lista de comprobación que se vuelve toda verde cuando todo está en orden.
- Activar el derecho de desistimiento.
- Ámbito de aplicación — «Solo UE/EEE» (mínimo legal) o «Mostrar siempre»; exclusión opcional de B2B (N.º de IVA).
- Orientación al consumidor — Plazo de desistimiento en días (mínimo 14; puedes conceder más) y, si lo deseas, un texto orientativo personalizado.
- Recibos y justificantes — adjunta el PDF, el correo electrónico de notificación, marca temporal (OpenTimestamps gratuito, o RFC 3161), retención, slug de la ficha de la cuenta.
- Entrega de correos electrónicos — Configura el SMTP, haz la prueba y, a continuación, «Ver una vista previa del correo electrónico de confirmación».
Todas las opciones
| Configuración | ¿Qué hace? |
|---|---|
| Activar la función de retirada | Muestra el botón a los consumidores que cumplan los requisitos. |
| Modo de aplicabilidad | Solo UE/EEE · Siempre · Lista de países personalizada. + alternar B2B. |
| Plazo de desistimiento (días) | Ventana que se muestra al cliente. Mínimo 14, ampliable. |
| Texto de orientación personalizado | Sustituye el texto de guía predeterminado (HTML básico). Es responsabilidad del comerciante. |
| Cláusulas legales 1.2.1 | Modifica el texto de las cláusulas (precontractual / Condiciones / Política de privacidad / Consentimiento y exenciones) con tus propias palabras; estas sustituirán la plantilla predeterminada en todas partes, incluido el shortcode. [webwakeupwdb_info], y eliminan la nota «texto de ejemplo». Si el campo está vacío, se mantiene la plantilla básica. |
| Adjuntar el recibo en formato PDF | Adjunta una copia en PDF al recibo (el correo electrónico es, en cualquier caso, el soporte duradero). |
| Correo electrónico de notificación | Dónde recibir las notificaciones de las nuevas solicitudes. Puedes introducir varias direcciones separadas por comas para notificar a varias personas; el primero es también el que se muestra al cliente como contacto de la tienda. |
| Marca de tiempo certificada | OpenTimestamps · RFC 3161 (punto de conexión + credenciales) · Ninguna. |
| Conservación de pruebas (años) | ¿Durante cuánto tiempo se conserva el registro (por defecto, 10)?. |
| Slug de la pestaña «Mi cuenta» | Título de la ficha «Derecho de desistimiento» en el área de clientes. |
| Personalización de CSS | Personaliza cada elemento gráfico desde el Personalizador de WordPress → CSS adicional, utilizando las clases y variables documentadas del complemento (referencia incluida en la configuración). |
| FluentCart | Coches (predeterminado) · Siempre · Desactivado. En el modo Automático, el complemento muestra el botón, pero se oculta automáticamente si detecta un complemento de cancelación nativo de FluentCart, de modo que el cliente nunca ve dos botones. Esto solo afecta a las interfaces de usuario de FluentCart; el panel de control de solicitudes y el registro no se ven afectados. |
Actualiza tus documentos legales (obligatorio)
Instalar el botón no basta para cumplir con la normativa. La Directiva sobre los derechos de los consumidores (art. 6) exige informar al consumidor sobre como ejercita el derecho de desistimiento: con la incorporación del botón, tus Condiciones de venta y las información precontractual hay que actualizarlas en el'artículo sobre el derecho de desistimiento para habilitar el nuevo modo con botón. El complemento añade el botón, pero no modifica tus documentos publicados.
Para simplificarlo, el complemento genera cláusulas listas para pegar — las encontrarás en Botón de retirada → Cumplimiento normativo (y mediante el shortcode [webwakeupwdb_info type="precontractual|condiciones|privacidad"]):
- Información precontractual — la cláusula «Derecho de desistimiento», que menciona explícitamente el botón «Desistir del contrato aquí», además del formulario tipo (Anexo I-B), que sigue siendo obligatorio.
- Condiciones de venta — la cláusula «Modalidades de desistimiento»: el consumidor ejercerá su derecho de desistimiento mediante el botón en línea o el formulario tipo, con acuse de recibo en un soporte duradero y la prohibición de que el desistimiento resulte más difícil que la compra.
- Privacidad — las cláusulas relativas al registro de bajas y a la prueba del consentimiento para las exenciones.
De la 1.2.1 puedes modificar estos textos directamente desde el panel de administración, sin código: Botón de desistimiento → Ajustes → «Condiciones legales». Escribe tu texto y guárdalo: tu texto sustituirá a la plantilla en todas partes (página de Conformidad + código corto [webwakeupwdb_info]) y desaparece la nota «texto de ejemplo». Deja un campo en blanco para conservar la plantilla básica (también hay una opción «Mostrar el valor por defecto» para copiarla como punto de partida). Para los desarrolladores, también hay un filtro webwakeupwdb_clause_text.
De la 1.3.0, además de las cláusulas individuales, el complemento genera automáticamente un'«Información sobre el derecho de desistimiento» completa en función de tu configuración y de las excepciones del artículo 59 que hayas seleccionado. Puedes gestionarlo desde Cumplimiento → «Información sobre el derecho de desistimiento»: avance, crear/abrir la página (se puede reproducir con un solo clic), «congela» en HTML estático, o descárgala en PDF. Publícalo también con el shortcode [webwakeupwdb_policy]. Opcional: dos botones de alternancia en Configuración → Documentos de Complianz añaden las mismas cláusulas a la Política de privacidad y a las Condiciones generales gestionadas por Complianz (solo UE, opt-in, desactivadas por defecto, con vista previa). Aquí también: complementa — no sustituye tus textos.
De la 1.4.0, el modelo de formulario (Anexo I-B) rellena automáticamente la línea «Destinatario» con los datos de tu negocio —nombre, dirección y correo electrónico— que configures en Botón de cancelación → Ajustes → «Datos del vendedor». El resto del formulario corresponde al texto oficial de la ley, que no se puede modificar. Si dejas un campo en blanco, la línea utilizará, a falta de otra información, el nombre de la página web y el correo electrónico del administrador; la dirección postal debe introducirse (así lo exige la ley sobre el formulario).
¿Dónde aparece el botón?
- WooCommerce — Área de clientes: lista de pedidos, detalle del pedido, ficha «Derecho de desistimiento»; + enlace añadido automáticamente en los correos electrónicos de pedido de WooCommerce (para los usuarios sin registrar).
- FluentCart — Portal del cliente: página «Derecho de desistimiento», opción del menú, banner y botón en cada pedido. En cuanto a los correos electrónicos: FluentCart no permite que los plugins añadan contenido automáticamente, por lo que Configuración → FluentCart muestra una guía opcional de una sola vez para insertar la etiqueta de fusión
{{wwu.recesso_url}}en la plantilla del recibo (3 pasos). - Easy Digital Downloads — botón en el recibo de compra y en las entradas del historial de compras; + enlace añadido automáticamente en el correo electrónico de confirmación de la EDD.
- En todas las plataformas: página pública con la búsqueda de huéspedes (número de pedido + correo electrónico), y en cualquier lugar con los código corto o el bloque de Gutenberg.
Código corto y bloque
| Código corto | Uso |
|---|---|
[webwakeupwdb_form] | El módulo de dos pasos / selector de pedidos. |
[webwakeupwdb_button order_id="…"] | Un solo botón para realizar un pedido. |
[webwakeupwdb_status order_id="…"] | El estado de la solicitud de un pedido. |
[webwakeupwdb_model_form lang="…"] | El formulario del tipo Anexo I-B (con la línea «Destinatario» cumplimentada con tus datos como vendedor — Configuración → Datos del vendedor). |
[webwakeupwdb_info type="precontractual|condiciones|privacidad"] | Las cláusulas legales ya están listas. |
[webwakeupwdb_policy] | Información completa sobre el derecho de desistimiento (elaborada a partir de las disposiciones y excepciones del artículo 59). |
Bloque de editor: «Retirada — autoservicio» (dinámico, renderizado por el servidor) para insertar la superficie en cualquier lugar del editor de bloques.
Experiencia del cliente
- El cliente abre su pedido y hace clic en el botón correspondiente. En el primer paso del formulario aparece un lista de comprobación opcional De los artículos del pedido: solo puede seleccionar los productos que desea devolver (desistimiento parcial, permitido por la legislación de la UE — Anexo I-B: «de los siguientes bienes»). Si deja la selección en blanco, el desistimiento se aplica a la totalidad del pedido. Esta elección nunca impide el desistimiento.
- Formulario en dos pasos (revisión → confirmación), sin «dark patterns» ni motivos obligatorios.
- Una vez confirmada la solicitud, recibirá inmediatamente un acuse de recibo por correo electrónico (+ PDF + enlace verificable), con la lista de los artículos seleccionados; el pedido pasa al estado «solicitud de desistimiento».
Gestión de solicitudes
En Botón de retirada → Solicitudes: cada solicitud con su estado (Abierta / Tramitada / Reembolsada), el indicador de integridad de la cadena y las acciones:
- Mark procesado — marcar como gestionada (registrada en el registro).
- Reenviar correo electrónico — reenvía el acuse de recibo (útil una vez configurado el SMTP).
- Solicitud de reembolso — Se abre la pantalla de reembolso de WooCommerce. El reembolso queda registrado en el registro como prueba del cumplimiento del plazo de 14 días.
Marcas temporales
Elige en Recibo y prueba → Sello de tiempo fiable:
| Proveedor | Notas |
|---|---|
| OpenTimestamps | Gratis, vinculado al Bitcoin, sin necesidad de crear una cuenta (por defecto). |
Sectigo /cualificado | RFC 3161 Certificado según eIDAS, gratuito, sin necesidad de crear una cuenta. |
| QTSP nacionales | Aruba/InfoCert (IT), D-Trust (DE), Universign (FR), FNMT (ES), SwissSign (CH) — dispositivos finales + credenciales. |
Exenciones (art. 59)
Algunos productos o servicios no están sujetos al derecho de desistimiento (productos hechos a medida, productos perecederos, productos sellados que hayan sido abiertos, entradas para eventos con fecha fija, contenidos digitales de acceso inmediato con consentimiento, servicios ya prestados…). En Configuración → Exenciones etiquetas de productos/categorías para motivo específico previsto en los estatutos, cada uno con la referencia legal correspondiente y una explicación en lenguaje sencillo. El derecho de desistimiento sigue siendo la opción por defecto (incluidos los productos digitales).
Cuando un pedido está totalmente exento, el botón de cancelación no aparece, pero el cliente no se queda sin explicaciones. Desde la 1.0.0-alpha.43, una nota breve y precisa muestra la excepción específica aplicada junto con la referencia normativa correspondiente (p. ej., «Contenido digital de acceso inmediato — Art. 16(1)(m) de la CRD / Art. 59(1)(o) del Código del Consumidor»). La nota aparece en el formulario de desistimiento, en las páginas de la cuenta de WooCommerce y EDD, y en el portal de FluentCart. El texto se puede editar en Configuración → Guía del consumidor. Aparece solo en los pedidos realmente exentos, nunca en los ordinarios; la visibilidad del botón no cambia.
webwakeupwdb_consent_text. La recopilación de consentimientos ya está activa en WooCommerce (clásico + en bloques), FluentCart y Easy Digital Downloads, con exenciones también por categoría. Cuando la captura no está disponible, el botón permanece activo (sistema de seguridad). No ocultes nunca el botón si no se cumplen estas condiciones.Suscripciones
La legislación de la UE establece solo uno derecho de desistimiento de 14 días por contrato, que comienza a partir de la celebración del contrato (art. 9 de la Directiva 2011/83/UE = art. 52 del Código del Consumidor). Un La renovación no lo hace volver a funcionar: se trata de la prórroga del mismo contrato, no de un nuevo contrato a distancia. Por lo tanto:
- Aparece el botón solo en el pedido inicial de la suscripción (dentro del plazo de 14 días).
- Sobre pedidos de renovación El botón es oculto — Un único control abarca automáticamente todas las superficies (área de clientes, portal, correo electrónico, código corto, bloque).
- Funciona con Suscripciones de WooCommerce, las suscripciones FluentCart e EDD recurrente. El reconocimiento de la renovación es prudente y a prueba de fallos: si no se puede determinar el estado, el botón sigue siendo visible (nunca oculto por error).
En Configuración → Suscripciones Hay dos interruptores, ambos desactivados por defecto:
| Configuración | ¿Qué hace? |
|---|---|
| Muestra también las renovaciones | Se recomienda desactivarlo. Actívalo solo si un dictamen jurídico indica que una renovación concreta reanuda el derecho. |
| Cancelar la suscripción mediante el derecho de desistimiento | Desactivado. Si está activado, al confirmar la baja se detienen las renovaciones futuras. El reembolso y, en su caso, a prorrata En cuanto al servicio ya utilizado, siempre quedan manuales. |
Preguntas frecuentes
¿Basta con instalar el pulsador para cumplir la normativa? No. Tienes que actualizarlo. también Tus condiciones de venta y la información precontractual del artículo sobre el derecho de desistimiento, para incluir la nueva modalidad con botón (art. 6 de la Directiva sobre los derechos de los consumidores). El plugin genera las cláusulas listas para copiar y pegar — véase Actualiza tus documentos legales.
¿Puedo dar más de 14 días? Sí: configura el «Withdrawal period» como prefieras (≥14). El texto que se muestra se actualiza.
¿Cómo funcionan las suscripciones? El botón aparece en el'pedido inicial y desaparece en los renovaciones (un único derecho de 14 días por contrato). La desistimiento no es lo mismo que la cancelación: el cliente siempre puede suspender las renovaciones futuras desde su cuenta, pero el desistimiento es el derecho de 14 días con derecho a reembolso. Consulta la sección Suscripciones.
¿No se envía el correo electrónico? Configura un complemento SMTP y utiliza la opción «Enviar correo electrónico de prueba». No se trata de la biblioteca de PDF.
¿Funciona con los temas en bloques / FSE? Sí: la página «Mi cuenta» de WooCommerce sigue generándose mediante el shortcode clásico, los hooks funcionan; también hay un bloque de Gutenberg.
¿Se aplica la ley a los productos digitales (plugins, software, descargas)? Sí. La obligación de disponer de un botón se refiere a profesional que venda en línea a consumidores de la UE, no solo un producto concreto; incluso una tienda de plugins o de contenidos digitales entra dentro del ámbito de aplicación. Los productos digitales tienen un plazo de desistimiento de 14 días. por defecto; el derecho se pierde solo con consentimiento expreso + acuse de recibo + confirmación en un soporte duradero (art. 59, letra o), que el complemento recoge al finalizar la compra. Las ventas B2B (con número de IVA) y a los consumidores de fuera de la UE Están fuera del ámbito de aplicación.
¿Se trata de asesoramiento jurídico? No, es una herramienta técnica de apoyo al cumplimiento normativo. Haz que un abogado revise tus documentos.
Para desarrolladores
El complemento muestra 34 «hooks» públicos documentados (acción y filtro) para personalizar el flujo de cancelación, los textos, la lógica de visibilidad del botón, el acuse de recibo y el registro, sin modificar el núcleo del plugin.
API REST y webhooks (automatizaciones)
De la 1.0.0-alpha.44 El complemento ofrece una'API REST de solo lectura (espacio de nombres webwakeupwdb/v1, autenticación mediante Contraseña de la aplicación de WordPress) para mostrar la lista de solicitudes de desistimiento y comprobar el estado de un pedido, además de un webhook de salida firmado (HMAC-SHA256) que notifica a tu punto final en el momento en que se confirma una baja — listo para Zapier, Make, n8n, un CRM o un servicio de asistencia técnica. La privacidad es lo primero: la IP del consumidor no se nunca expuesto (solo un hash de línea para la verificación de integridad). No existe —por decisión propia— un punto final para crear una renuncia (es la declaración legal del consumidor). Una vez superado un comprobación de seguridad específica antes de su publicación.
Registro de cambios
Mantén esta sección alineada con el docs/changelog/wwu-wb-CHANGELOG.md del repositorio.
- Información sobre el derecho de desistimiento + cumplimiento de las condiciones de WordPress.org. Nueva «Información sobre el derecho de desistimiento» consolidada, compuesta por las configuraciones y excepciones del art. 59: shortcode
[webwakeupwdb_policy], página creada automáticamente (se puede volver a crear con un solo clic), PDF, e inyección «opt-in» en los documentos de Complianz (Privacidad + Condiciones, solo UE, desactivado por defecto). Traducciones a it/de/es/fr/sv. A petición del equipo de WordPress.org, Cada identificador interno ha pasado del prefijo corto «wwu» a «webwakeupwdb» (constantes, opciones, hooks, shortcodes, espacios de nombres, REST): las instalaciones existentes se migran automáticamente (se conservan la configuración, las pruebas de consentimiento, las tablas de registro/marcas de tiempo y las páginas); las nuevas instalaciones no se ven afectadas. Desarrolladores: el código que utiliza los nombres antiguos (wwu_wb_*,[wwu_wb_*]) debe actualizarse según los nuevoswebwakeupwdb_*.
- Cumplimiento con WordPress.org: marcación temporal con consentimiento expreso, sin campo CSS personalizado, PHP 8.1 + Dompdf 3.1.5. Se ha eliminado el campo «CSS personalizado»: para personalizar el diseño, se utiliza el Personalizador de WordPress → CSS adicional (con referencia a las clases/variables de la configuración). La marca de tiempo de garantía (OpenTimestamps / RFC 3161) es ahora opt-in y desactivado por defecto: el complemento no hace ninguna llamada externa si no la activas tú; el registro en cadena de hash sigue siendo la prueba básica y funciona sin conexión. La compilación para el directorio pasa a PHP 8.1 + Dompdf 3.1.5; sigue estando disponible en GitHub una versión compatible con PHP 7.4 (Dompdf 2.x). Notas de la versión →
- La página «Consent Records» ya es multiplataforma (resuelve el problema #41). La página de administración de consentimientos (y la exportación a CSV) solo leía los pedidos de WooCommerce, por lo que en una tienda de Easy Digital Downloads o FluentCart mostraba «WooCommerce no activo» a pesar de haber captado el consentimiento. Ahora obtiene los datos de registro de pruebas inmutable y multiplataforma (donde WooCommerce —clásico y en bloques—, EDD y FluentCart escriben en el momento de la captura), de modo que aparecen los consentimientos de cada plataforma; las entradas completas (con IP) se vuelven a leer del pedido cuando este existe, y se conservan como registros sin datos de identificación personal si el pedido se ha cancelado. Nueva columna «Plataforma». Modificación de solo lectura: el registro a prueba de manipulaciones nunca se altera. Notas de la versión →
- Conformidad con WordPress.org (Plugin Check): solo correcciones reales. Añadido
wp_unslash()a los datos de entrada de la función de guardado de configuraciones (los valores ya estaban sanitizados: es el paso habitual que espera la herramienta Plugin Check) y he ignorado un falso positivo de «consulta no preparada» en la comprobación de integridad (sin entrada del usuario: nombre de la tabla de$wpdb->prefijo, LIMIT con conversión a entero). Se han acortado algunas notas de actualización que resultaban demasiado largas. No hay cambios en el comportamiento. Notas de la versión →
- Ventana de desistimiento «type-aware» (digital = fecha del pedido, físico = entrega). El recuento de los 14 días que se muestra al cliente ahora se calcula en función del tipo de producto: los pedidos todos digitales parten de la fecha del pedido (celebración del contrato, art. 9 de la Directiva 2011/83 / art. 52 del Código del Consumidor), mientras que los pedidos de productos físicos permanecen sin cambios (fecha de entrega / «completado»). Es meramente informativo: el botón nunca se oculta con este valor. No hay cambios para los productos físicos. Notas de la versión →
- El rebote del invitado ha sido correcto en todas las superficies. Completa la versión 1.2.7: también el shortcode
[webwakeupwdb_button]y el enlace «Acciones del pedido» (que algunos temas muestran en la página de confirmación del pedido) ahora redirige a los visitantes a la página pública de cancelación, y ya no a la pantalla de inicio de sesión. Un helper compartido genera la URL de la misma forma en todas partes. Los clientes que han iniciado sesión no ven ningún cambio. Notas de la versión →
- El botón de salida ya no solicita a los huéspedes que inicien sesión. En el resumen del pedido, el botón redirigía a los clientes sin cuenta a la pantalla de inicio de sesión, ya que apuntaba al área «Mi cuenta». Ahora se redirige a los usuarios sin cuenta a la página pública de cancelación (con el número de pedido y la clave, el mismo enlace preautenticado del correo electrónico del pedido), para que puedan cancelar sin necesidad de tener una cuenta. Para los clientes que han iniciado sesión, no hay cambios. Notas de la versión →
- Se incluyen traducciones completas a todos los idiomas. Algunas cadenas de administración de las últimas versiones (editor «Cláusulas legales», campo «Correo electrónico de notificación», recordatorio sobre los textos legales en la página «Cumplimiento», asistente de correo electrónico de FluentCart) aparecían en inglés porque aún no se habían traducido. Los cinco archivos de idioma (italiano, alemán, francés, español y sueco) ya están completos para estas cadenas. (El sueco es una traducción automática, a la espera de revisión por parte de un hablante nativo.) Notas de la versión →
- Se ha restablecido la compatibilidad con PHP 7.4 + notificaciones a varios destinatarios + coexistencia automática con FluentCart. La biblioteca PDF (Dompdf) se había actualizado a una versión que requiere PHP 8.1, lo que provocaba un error de «plataforma» de Composer junto a la opción PDF en los sitios web con PHP 7.4: ahora se ha vuelto a la línea 2.x, compatible con 7.4 (los PDF recibidos no han sufrido cambios, verificado mediante una auditoría de renderizado). El campo Configuración → Correos electrónicos de notificación Acepta ahora varias direcciones separadas por comas (el primero es también el contacto que se muestra al cliente). Y con la gestión de FluentCart en Coches, el plugin detecta automáticamente el complemento «Customer Rights» de FluentCart y se desactiva por sí solo —no hay ningún botón duplicado—. Notas de la versión →
- Se ha restablecido la compatibilidad con PHP 7.4 + notificaciones a varios destinatarios + coexistencia automática con FluentCart. La biblioteca PDF (Dompdf) se había actualizado a una versión que requiere PHP 8.1, lo que provocaba un error de «plataforma» de Composer junto a la opción PDF en los sitios web con PHP 7.4: ahora se ha vuelto a la línea 2.x, compatible con 7.4 (los PDF recibidos no han sufrido cambios, verificado mediante una auditoría de renderizado). El campo Configuración → Correos electrónicos de notificación Acepta ahora varias direcciones separadas por comas (el primero es también el contacto que se muestra al cliente). Y con la gestión de FluentCart en Coches, el plugin detecta automáticamente el complemento «Customer Rights» de FluentCart y se desactiva por sí solo —no hay ningún botón duplicado—. Notas de la versión →
- Cumplimiento de las normas de WordPress.org y pequeñas medidas de seguridad. Se ha hecho más distintivo el nombre del plugin y se han eliminado las marcas de terceros; se ha añadido una sanitización adicional en la entrada del limitador de velocidad; se ha aplicado el escape de URL en los correos electrónicos de texto sin formato; se han implementado callbacks de permisos REST explícitos en los puntos finales públicos y se ha eliminado el cargador de traducciones, que ya no es necesario (WordPress las carga por sí mismo a partir de la versión 4.6). No se ha realizado ningún cambio en el proceso de baja ni en tus datos. Notas de la versión →
- Cumplimiento de las normas de WordPress.org y pequeñas medidas de seguridad. Se ha hecho más distintivo el nombre del plugin y se han eliminado las marcas de terceros; se ha añadido una sanitización adicional en la entrada del limitador de velocidad; se ha aplicado el escape de URL en los correos electrónicos de texto sin formato; se han implementado callbacks de permisos REST explícitos en los puntos finales públicos y se ha eliminado el cargador de traducciones, que ya no es necesario (WordPress las carga por sí mismo a partir de la versión 4.6). No se ha realizado ningún cambio en el proceso de baja ni en tus datos. Notas de la versión →
- El error al enviar un correo electrónico ahora muestra el motivo exacto, en lugar de un mensaje genérico. Continuación del apartado 1.2.2: si el correo electrónico de confirmación no se envía, el complemento recoge el motivo específico del sistema de envío —el error del complemento SMTP (por ejemplo, «Could not authenticate» o «Could not connect to host…») o el mensaje de la excepción — y lo muestra en el aviso de administración «correo electrónico no enviado» y en el registro a prueba de manipulaciones, en lugar de un genérico «error en el envío del correo electrónico». Detectar una configuración SMTP incorrecta (WP Mail SMTP, FluentSMTP) resulta inmediato, sin necesidad de rebuscar en el registro de PHP. La notificación siempre queda registrada y el cliente siempre accede a la página de confirmación. Notas de la versión →
- El error al enviar un correo electrónico ahora muestra el motivo exacto, en lugar de un mensaje genérico. Continuación del apartado 1.2.2: si el correo electrónico de confirmación no se envía, el complemento recoge el motivo específico del sistema de envío —el error del complemento SMTP (por ejemplo, «Could not authenticate» o «Could not connect to host…») o el mensaje de la excepción — y lo muestra en el aviso de administración «correo electrónico no enviado» y en el registro a prueba de manipulaciones, en lugar de un genérico «error en el envío del correo electrónico». Detectar una configuración SMTP incorrecta (WP Mail SMTP, FluentSMTP) resulta inmediato, sin necesidad de rebuscar en el registro de PHP. La notificación siempre queda registrada y el cliente siempre accede a la página de confirmación. Notas de la versión →
- Corrección crítica: ya no aparece el «error crítico» al enviar el correo electrónico de confirmación. En algunas páginas web (señalado con WP Mail SMTP), al confirmar la cancelación y al hacer clic en «Reenviar correo electrónico», se produce una excepción. dentro
wp_mail()por el plugin SMTP —o un error del PDF en PHP 8— podía pasar desapercibido y provocar un «error crítico» en la página, aunque la baja ya se hubiera registrado. Ahora todo el proceso de envío está protegido contra excepciones (el programa de correo, los correos electrónicos de WooCommerce y el PDF opcional): si el envío falla, se notifica y se puede volver a enviar sin que la página se cuelgue. Además: Guía para la convivencia ahora que FluentCart 1.4.2 Incluye su propio módulo de desistimiento integrado (Configuración → FluentCart: configúralo en «Desactivado» si utilizas el de FluentCart). Notas de la versión →
- Corrección crítica: ya no aparece el «error crítico» al enviar el correo electrónico de confirmación. En algunas páginas web (señalado con WP Mail SMTP), al confirmar la cancelación y al hacer clic en «Reenviar correo electrónico», se produce una excepción. dentro
wp_mail()por el plugin SMTP —o un error del PDF en PHP 8— podía pasar desapercibido y provocar un «error crítico» en la página, aunque la baja ya se hubiera registrado. Ahora todo el proceso de envío está protegido contra excepciones (el programa de correo, los correos electrónicos de WooCommerce y el PDF opcional): si el envío falla, se notifica y se puede volver a enviar sin que la página se cuelgue. Además: Guía para la convivencia ahora que FluentCart 1.4.2 Incluye su propio módulo de desistimiento integrado (Configuración → FluentCart: configúralo en «Desactivado» si utilizas el de FluentCart). Notas de la versión →
- Corrección: la ficha «Derecho de desistimiento» ya no da error 404 en una instalación nueva + cláusulas legales modificables por el administrador. La ficha del área de clientes de WooCommerce es un punto final (no es una página): las reglas de reescritura no se regeneraban al activar el plugin, lo que provocaba un error 404 hasta que se volvían a guardar los enlaces permanentes. Ahora el plugin las regenera automáticamente la primera vez que se carga tras la activación (solución manual: Configuración → Enlaces permanentes → Guardar). Además, una nueva sección Configuración → «Aviso legal» te permite modificar el texto de las cláusulas (precontractuales / Condiciones / Política de privacidad / Consentimiento) con tus propias palabras, sin código — sustituyen la plantilla en cualquier lugar, incluso en el shortcode
[webwakeupwdb_info](más el filtrowebwakeupwdb_clause_text(para desarrolladores). Notas de la versión →
- Corrección: la ficha «Derecho de desistimiento» ya no da error 404 en una instalación nueva + cláusulas legales modificables por el administrador. La ficha del área de clientes de WooCommerce es un punto final (no es una página): las reglas de reescritura no se regeneraban al activar el plugin, lo que provocaba un error 404 hasta que se volvían a guardar los enlaces permanentes. Ahora el plugin las regenera automáticamente la primera vez que se carga tras la activación (solución manual: Configuración → Enlaces permanentes → Guardar). Además, una nueva sección Configuración → «Aviso legal» te permite modificar el texto de las cláusulas (precontractuales / Condiciones / Política de privacidad / Consentimiento) con tus propias palabras, sin código — sustituyen la plantilla en cualquier lugar, incluso en el shortcode
[webwakeupwdb_info](más el filtrowwu_wb_clause_text(para desarrolladores). Notas de la versión →
- Recordatorio: actualiza también tus documentos legales. Al instalar el botón no se actualizan los documentos de tu tienda. La ley (art. 6 de la Directiva sobre los derechos de los consumidores) exige que las Condiciones de venta y las información precontractual describan como El consumidor se da de baja — y ahora esto incluye el nuevo botón en línea. El complemento lo indica ahora de forma destacada en el Salpicadero y en la página Conformidad, abre por defecto las dos cláusulas que hay que pegar (precontractual + condiciones) y la cláusula «Modalidades de desistimiento» ahora menciona explícitamente el botón. No hay cambios en el proceso de desistimiento. Véase Actualiza tus documentos legales.
- Recordatorio: actualiza también tus documentos legales. Al instalar el botón no se actualizan los documentos de tu tienda. La ley (art. 6 de la Directiva sobre los derechos de los consumidores) exige que las Condiciones de venta y las información precontractual describan como El consumidor se da de baja — y ahora esto incluye el nuevo botón en línea. El complemento lo indica ahora de forma destacada en el Salpicadero y en la página Conformidad, abre por defecto las dos cláusulas que hay que pegar (precontractual + condiciones) y la cláusula «Modalidades de desistimiento» ahora menciona explícitamente el botón. No hay cambios en el proceso de desistimiento. Véase Actualiza tus documentos legales.
- Enlaces de cancelación en los correos electrónicos de pedido — en todas las plataformas. Se añade el enlace automáticamente a los correos electrónicos de los clientes de WooCommerce y al correo electrónico de confirmación de Easy Digital Downloads (de modo que el cliente pueda acceder directamente al formulario de desistimiento desde el correo electrónico, tal y como sugiere el considerando 37). FluentCart no permite que los plugins añadan contenido a sus correos electrónicos de forma automática; por lo tanto, Configuración → FluentCart A continuación se muestra una breve guía opcional (3 pasos) para insertar el shortcode
{{wwu.recesso_url}}en la plantilla del recibo. Nada intrusivo ni obligatorio: siempre se puede acceder a la opción de desistimiento desde el área de clientes/portal y desde la página pública. Notas de la versión →
- Enlaces de cancelación en los correos electrónicos de pedido — en todas las plataformas. Se añade el enlace automáticamente a los correos electrónicos de los clientes de WooCommerce y al correo electrónico de confirmación de Easy Digital Downloads (de modo que el cliente pueda acceder directamente al formulario de desistimiento desde el correo electrónico, tal y como sugiere el considerando 37). FluentCart no permite que los plugins añadan contenido a sus correos electrónicos de forma automática; por lo tanto, Configuración → FluentCart A continuación se muestra una breve guía opcional (3 pasos) para insertar el shortcode
{{wwu.recesso_url}}en la plantilla del recibo. Nada intrusivo ni obligatorio: siempre se puede acceder a la opción de desistimiento desde el área de clientes/portal y desde la página pública. Notas de la versión →
- Automatizaciones: API REST de solo lectura + webhook firmado. Nueva sección Configuración → Integraciones para conectar las solicitudes de cancelación con sistemas externos (Zapier, Make, n8n, CRM, servicio de atención al cliente). (1) Un'API REST de solo lectura (
webwakeupwdb/v1) para consultar las solicitudes y comprobar el estado de un pedido, tras iniciar sesión con una Contraseña de la aplicación de WordPress. (2) Un webhook opcional que envía una notificación firmada con HMAC-SHA256 a tu terminal cuando se confirma una baja. La privacidad es lo primero: la dirección IP del consumidor no es nunca expuesto (solo un hash de verificación). No hay ningún punto final para crear Una baja, por decisión legal. Tras superar una verificación de seguridad específica. No se produce ningún cambio en el proceso de baja. Notas de la versión →
- Automatizaciones: API REST de solo lectura + webhook firmado. Nueva sección Configuración → Integraciones para conectar las solicitudes de cancelación con sistemas externos (Zapier, Make, n8n, CRM, servicio de atención al cliente). (1) Un'API REST de solo lectura (
wwu-wb/v1) para consultar las solicitudes y comprobar el estado de un pedido, tras iniciar sesión con una Contraseña de la aplicación de WordPress. (2) Un webhook opcional que envía una notificación firmada con HMAC-SHA256 a tu terminal cuando se confirma una baja. La privacidad es lo primero: la dirección IP del consumidor no es nunca expuesto (solo un hash de verificación). No hay ningún punto final para crear Una baja, por decisión legal. Tras superar una verificación de seguridad específica. No se produce ningún cambio en el proceso de baja. Notas de la versión →
- Nota «por estar exento» por parte del consumidor. Cuando todos los artículos de un pedido se acogen a una excepción del artículo 59 (por ejemplo, contenido digital de acceso inmediato o servicio prestado íntegramente, en ambos casos con el consentimiento recabado en el momento de la compra), no aparece el botón de desistimiento. El cliente ve ahora una nota breve y precisa que indica la excepción específica con la referencia normativa (p. ej., «Contenido digital de acceso inmediato — Art. 16(1)(m) CRD / Art. 59(1)(o) del Código del Consumidor»). Se muestra en el formulario de desistimiento, en las páginas de la cuenta de WooCommerce y EDD, y en el portal de FluentCart. Texto editable en Configuración → Guía del consumidor. Solo aparece en los pedidos realmente exentos, nunca en los ordinarios; la visibilidad del botón no cambia. Notas de la versión →
- Nota «por estar exento» por parte del consumidor. Cuando todos los artículos de un pedido se acogen a una excepción del artículo 59 (por ejemplo, contenido digital de acceso inmediato o servicio prestado íntegramente, en ambos casos con el consentimiento recabado en el momento de la compra), no aparece el botón de desistimiento. El cliente ve ahora una nota breve y precisa que indica la excepción específica con la referencia normativa (p. ej., «Contenido digital de acceso inmediato — Art. 16(1)(m) CRD / Art. 59(1)(o) del Código del Consumidor»). Se muestra en el formulario de desistimiento, en las páginas de la cuenta de WooCommerce y EDD, y en el portal de FluentCart. Texto editable en Configuración → Guía del consumidor. Solo aparece en los pedidos realmente exentos, nunca en los ordinarios; la visibilidad del botón no cambia. Notas de la versión →
- Devolución parcial de un producto (destinado al consumidor). La legislación de la UE permite también la desistimiento de algunos artículos de un pedido (Anexo I-B: «de los siguientes bienes»). El primer paso del formulario muestra ahora un lista de comprobación opcional: el consumidor selecciona los productos que desea devolver; si deja el campo en blanco, anula todo el pedido. La selección aparece en el recibo en un soporte duradero y en el panel de control «Solicitudes». El reembolso (total o parcial) siempre se realiza manualmente. La anulación nunca se bloquea. Notas de la versión →
- Devolución parcial de un producto (destinado al consumidor). La legislación de la UE permite también la desistimiento de algunos artículos de un pedido (Anexo I-B: «de los siguientes bienes»). El primer paso del formulario muestra ahora un lista de comprobación opcional: el consumidor selecciona los productos que desea devolver; si deja el campo en blanco, anula todo el pedido. La selección aparece en el recibo en un soporte duradero y en el panel de control «Solicitudes». El reembolso (total o parcial) siempre se realiza manualmente. La anulación nunca se bloquea. Notas de la versión →
- Gestión de FluentCart configurable. Nuevo enfoque Configuración → FluentCart con tres modalidades: Coches (por defecto) — muestra el botón, pero se oculta automáticamente si detecta el complemento nativo de cancelación de FluentCart, de modo que el cliente nunca ve dos botones; Siempre — siempre mantiene nuestro botón; Apagado — Desactiva la gestión de FluentCart. Esto solo afecta a las interfaces para usuarios finales; las cuentas de administrador y las solicitudes existentes no se ven afectadas. Notas de la versión →
- Gestión de FluentCart configurable. Nuevo enfoque Configuración → FluentCart con tres modalidades: Coches (por defecto) — muestra el botón, pero se oculta automáticamente si detecta el complemento nativo de cancelación de FluentCart, de modo que el cliente nunca ve dos botones; Siempre — siempre mantiene nuestro botón; Apagado — Desactiva la gestión de FluentCart. Esto solo afecta a las interfaces para usuarios finales; las cuentas de administrador y las solicitudes existentes no se ven afectadas. Notas de la versión →
- Suscripciones gestionadas correctamente (WooCommerce Subscriptions, FluentCart, EDD Recurring). La legislación de la UE establece un único plazo de desistimiento de 14 días por contrato, en resumen: una actualización no lo vuelve a poner en marcha. El botón aparece ahora solo en el pedido inicial y está oculto en las órdenes de renovación (una única comprobación abarca todas las superficies). Dos interruptores de activación en Configuración → Suscripciones (muestra también las renovaciones · cancela la suscripción en caso de rescisión), ambas desactivadas por defecto; el reembolso y el prorrateo siguen siendo manuales. El panel de solicitudes señala los pedidos de suscripción con un recordatorio. Detección de renovaciones prudente y a prueba de fallos (en caso de duda, el botón permanece). Se debe probar con un plugin de suscripciones activo. Ver Suscripciones.
- Suscripciones gestionadas correctamente (WooCommerce Subscriptions, FluentCart, EDD Recurring). La legislación de la UE establece un único plazo de desistimiento de 14 días por contrato, en resumen: una actualización no lo vuelve a poner en marcha. El botón aparece ahora solo en el pedido inicial y está oculto en las órdenes de renovación (una única comprobación abarca todas las superficies). Dos interruptores de activación en Configuración → Suscripciones (muestra también las renovaciones · cancela la suscripción en caso de rescisión), ambas desactivadas por defecto; el reembolso y el prorrateo siguen siendo manuales. El panel de solicitudes señala los pedidos de suscripción con un recordatorio. Detección de renovaciones prudente y a prueba de fallos (en caso de duda, el botón permanece). Se debe probar con un plugin de suscripciones activo. Ver Suscripciones.
- Etiquetas de fusión de correo electrónico de FluentCart. . Incluye el enlace de desistimiento de cada pedido en los correos electrónicos transaccionales nativo de FluentCart (p. ej., recibo de pedido). El equipo de FluentCart ha confirmado el contrato del hook; la etiqueta está registrada en el selector del editor de correo electrónico y se resuelve correctamente (queda vacía si no hay ningún pedido en el contexto). Queda por probar en un entorno real de FluentCart. Nota: FluentCart ha anunciado que pronto estará disponible una función nativa de desistimiento de la UE.
- Etiquetas de fusión para correos electrónicos de FluentCart
{{wwu.recesso_url}}. Incluye el enlace de desistimiento de cada pedido en los correos electrónicos transaccionales nativo de FluentCart (p. ej., recibo de pedido). El equipo de FluentCart ha confirmado el contrato del hook; la etiqueta está registrada en el selector del editor de correo electrónico y se resuelve correctamente (queda vacía si no hay ningún pedido en el contexto). Queda por probar en un entorno real de FluentCart. Nota: FluentCart ha anunciado que pronto estará disponible una función nativa de desistimiento de la UE.
- Auditoría de seguridad completa de todo el complemento: 0 fallos críticos, 0 fallos graves. SQLi, XSS, CSRF, control de acceso/IDOR, archivos/deserialización, cifrado/integridad de las pruebas y dependencia de Dompdf: todo en orden. Correcciones: protección contra SSRF en el punto final RFC 3161 configurable (bloquea destinos internos / metadatos en la nube / IPv6 de bucle cerrado / CGNAT), limitación de frecuencia en los puntos finales de salida, límite de longitud en las entradas, enmascaramiento de depuración más estricto y limpieza de cron al desinstalar. Sin cambios para el cliente.
- Auditoría de seguridad completa de todo el complemento: 0 fallos críticos, 0 fallos graves. SQLi, XSS, CSRF, control de acceso/IDOR, archivos/deserialización, cifrado/integridad de las pruebas y dependencia de Dompdf: todo en orden. Correcciones: protección contra SSRF en el punto final RFC 3161 configurable (bloquea destinos internos / metadatos en la nube / IPv6 de bucle cerrado / CGNAT), limitación de frecuencia en los puntos finales de salida, límite de longitud en las entradas, enmascaramiento de depuración más estricto y limpieza de cron al desinstalar. Sin cambios para el cliente.
- EDD: el botón de cancelación ya aparece en las páginas del cliente. En Easy Digital Downloads, el botón aparece en la recibo de compra y en cada línea de la historial de compras, y el enlace se añade al'Correo electrónico de confirmación de recepción del EDD — Totalmente compatible con WooCommerce y FluentCart (antes, EDD solo utilizaba la página pública). Desarrollado a partir de los hooks de EDD 3.x verificados en el código fuente oficial. Por probar en una tienda real de EDD.
- EDD: el botón de cancelación ya aparece en las páginas del cliente. En Easy Digital Downloads, el botón aparece en la recibo de compra y en cada línea de la historial de compras, y el enlace se añade al'Correo electrónico de confirmación de recepción del EDD — Totalmente compatible con WooCommerce y FluentCart (antes, EDD solo utilizaba la página pública). Desarrollado a partir de los hooks de EDD 3.x verificados en el código fuente oficial. Por probar en una tienda real de EDD.
- Mejoras en FluentCart verificadas con el equipo. La casilla de consentimiento aparece ahora en
métodos_de_pago_previos(incluye el proceso de pago estándar y el modal y por bloques); las exenciones de FluentCart son por categoría (taxonomíacategorías de productos, como WooCommerce y EDD); las condiciones de desistimiento y reembolso aparecen en la cronología de actividades del pedido de FluentCart.
- Mejoras en FluentCart verificadas con el equipo. La casilla de consentimiento aparece ahora en
métodos_de_pago_previos(incluye el proceso de pago estándar y el modal y por bloques); las exenciones de FluentCart son por categoría (taxonomíacategorías de productos, como WooCommerce y EDD); las condiciones de desistimiento y reembolso aparecen en la cronología de actividades del pedido de FluentCart.
- Compatible con Easy Digital Downloads (EDD 3.0+). Tercera plataforma tras WooCommerce y FluentCart: el botón de desistimiento, el flujo de prueba y las exenciones con captura de consentimiento funcionan en las tiendas EDD, con exenciones por categoría (download_category). Hay que probarlo en una tienda real de EDD.
- Compatible con Easy Digital Downloads (EDD 3.0+). Tercera plataforma tras WooCommerce y FluentCart: el botón de desistimiento, el flujo de prueba y las exenciones con captura de consentimiento funcionan en las tiendas EDD, con exenciones por categoría (download_category). Hay que probarlo en una tienda real de EDD.
- Recopilación de el consentimiento también en el proceso de pago por etapas de WooCommerce (a través de la API oficial «Additional Checkout Fields», WooCommerce 9.9+), igual que en el proceso de pago clásico y en FluentCart. PHP puro, sin compilaciones. + Especificaciones para la futura integración con EDD.
- Recopilación de el consentimiento también en el proceso de pago por etapas de WooCommerce (a través de la API oficial «Additional Checkout Fields», WooCommerce 9.9+), igual que en el proceso de pago clásico y en FluentCart. PHP puro, sin compilaciones. + Especificaciones para la futura integración con EDD.
- Configuración de exenciones rediseñada (WWU UI Kit): motivos agrupados (condicionados / incondicionales / sello) con información emergente, ejemplos, ayuda «¿Qué vendes?», vista previa de lo que ve el cliente (cuadro + correo electrónico) y panel de estado. Se han completado las traducciones al italiano, francés, español y alemán, incluidas las etiquetas de las exenciones que antes aparecían en inglés.
- Configuración de exenciones rediseñada (WWU UI Kit): motivos agrupados (condicionados / incondicionales / sello) con información emergente, ejemplos, ayuda «¿Qué vendes?», vista previa de lo que ve el cliente (cuadro + correo electrónico) y panel de estado. Se han completado las traducciones al italiano, francés, español y alemán, incluidas las etiquetas de las exenciones que antes aparecían en inglés.
- Obtención del consentimiento en FluentCart. Las exenciones condicionadas (digital inmediato / servicio prestado) ahora también recaban el consentimiento en la página de pago de FluentCart, con un correo electrónico de confirmación en un soporte duradero —basado en los ganchos verificados en la documentación oficial—. Enlace «abrir pedido» del administrador a través de la URL nativa de FluentCart.
- Obtención del consentimiento en FluentCart. Las exenciones condicionadas (digital inmediato / servicio prestado) ahora también recaban el consentimiento en la página de pago de FluentCart, con un correo electrónico de confirmación en un soporte duradero —basado en los ganchos verificados en la documentación oficial—. Enlace «abrir pedido» del administrador a través de la URL nativa de FluentCart.
- Exenciones (art. 59) — confirmación en un soporte duradero + prueba, conservación, RGPD. En los casos sujetos a condiciones, el complemento envía ahora al cliente un correo electrónico de confirmación en un soporte duradero que reproduce el texto del consentimiento aceptado (con carácter constitutivo para el formato digital, art. 59(1)(o)) y registra su envío por separado. Los consentimientos almacenados tienen un periodo de conservación configurable (por defecto, 10 años) con una rutina diaria que posteriormente anonimiza la dirección IP; la dirección IP es configurable y nunca se incluye en el registro inalterable. Se ha añadido una cláusula de privacidad conforme al RGPD (interés legítimo) y una página "Registros de consentimiento" con exportación a CSV. El texto es más claro en todas partes: los productos físicos nunca requieren consentimiento; el botón solo se oculta tras la captura (sistema de seguridad).
- Exenciones (art. 59) — confirmación en un soporte duradero + prueba, conservación, RGPD. En los casos sujetos a condiciones, el complemento envía ahora al cliente un correo electrónico de confirmación en un soporte duradero que reproduce el texto del consentimiento aceptado (con carácter constitutivo para el formato digital, art. 59(1)(o)) y registra su envío por separado. Los consentimientos almacenados tienen un periodo de conservación configurable (por defecto, 10 años) con una rutina diaria que posteriormente anonimiza la dirección IP; la dirección IP es configurable y nunca se incluye en el registro inalterable. Se ha añadido una cláusula de privacidad conforme al RGPD (interés legítimo) y una página "Registros de consentimiento" con exportación a CSV. El texto es más claro en todas partes: los productos físicos nunca requieren consentimiento; el botón solo se oculta tras la captura (sistema de seguridad).
- Exenciones (art. 59) — obtención del consentimiento al finalizar la compra. En los dos casos condicionados (contenido digital de acceso inmediato; servicio ya prestado), el proceso de pago de WooCommerce muestra un cuadro de aceptación obligatorio y guarda el texto aceptado (con hash SHA-256, fecha/hora e IP) en el pedido como prueba: el botón solo se oculta para esos artículos tras obtener el consentimiento legítimo. Texto personalizable a través de
webwakeupwdb_consent_text. Proceso de pago clásico de WooCommerce; el proceso de pago por bloques y FluentCart estarán disponibles próximamente.
- Exenciones (art. 59) — obtención del consentimiento al finalizar la compra. En los dos casos condicionados (contenido digital de acceso inmediato; servicio ya prestado), el proceso de pago de WooCommerce muestra un cuadro de aceptación obligatorio y guarda el texto aceptado (con hash SHA-256, fecha/hora e IP) en el pedido como prueba: el botón solo se oculta para esos artículos tras obtener el consentimiento legítimo. Texto personalizable a través de
webwakeupwdb_consent_text. Proceso de pago clásico de WooCommerce; el proceso de pago por bloques y FluentCart estarán disponibles próximamente.
- Exenciones (art. 59) — etiquetado por motivo. Marca los productos o categorías como exentos por un motivo legal específico (a medida, perecible, precintado por motivos de higiene, servicios con fecha fija, producto digital de entrega inmediata, servicio prestado…), indicando para cada uno la referencia legal y una guía en lenguaje sencillo. El derecho de desistimiento sigue siendo la opción por defecto —incluidos los productos digitales— y los motivos condicionados mantienen el botón activo hasta que se obtenga el consentimiento.
- Exenciones (art. 59) — etiquetado por motivo. Marca los productos o categorías como exentos por un motivo legal específico (a medida, perecible, precintado por motivos de higiene, servicios con fecha fija, producto digital de entrega inmediata, servicio prestado…), indicando para cada uno la referencia legal y una guía en lenguaje sencillo. El derecho de desistimiento sigue siendo la opción por defecto —incluidos los productos digitales— y los motivos condicionados mantienen el botón activo hasta que se obtenga el consentimiento.
- Portal del cliente FluentCart En funcionamiento: página «Derecho de desistimiento» en la cuenta, opción en el menú lateral, botón en cada pedido y banner. Se han corregido todos los hooks según el contrato oficial de FluentCart (verificado en dev.fluentcart.com) y la lista de pedidos lee los datos a través de las relaciones correctas (cliente, dirección). Soluciona el problema de la página en blanco y la falta del botón observados en las pruebas en entorno de producción.
- Portal del cliente FluentCart En funcionamiento: página «Derecho de desistimiento» en la cuenta, opción en el menú lateral, botón en cada pedido y banner. Se han corregido todos los hooks según el contrato oficial de FluentCart (verificado en dev.fluentcart.com) y la lista de pedidos lee los datos a través de las relaciones correctas (cliente, dirección). Soluciona el problema de la página en blanco y la falta del botón observados en las pruebas en entorno de producción.
- Primera integración del portal de clientes FluentCart + lista de pedidos válidos tanto para WooCommerce como para FluentCart.
- Primera integración del portal de clientes FluentCart + lista de pedidos válidos tanto para WooCommerce como para FluentCart.
- Guía para el consumidor (paso a paso, en cualquier lugar) + referencia al proveedor de la marca temporal en la configuración.
- Guía para el consumidor (paso a paso, en cualquier lugar) + referencia al proveedor de la marca temporal en la configuración.
- Proveedor de marca de tiempo RFC 3161 / eIDAS (Sectigo gratuito certificado + QTSP nacionales).
- Proveedor de marca de tiempo RFC 3161 / eIDAS (Sectigo gratuito certificado + QTSP nacionales).
- Reembolso registrado en el registro como prueba; guía «qué hacer tras una solicitud».
- Reembolso registrado en el registro como prueba; guía «qué hacer tras una solicitud».
- Flujo de trabajo para la gestión de solicitudes (estado, marcar como procesada, reenviar, reembolso) + corrección de la lista CSS.
- Flujo de trabajo para la gestión de solicitudes (estado, marcar como procesada, reenviar, reembolso) + corrección de la lista CSS.
- Lista de pedidos válidos, página de verificación legible, vista previa del correo electrónico, bloque de Gutenberg.
- Lista de pedidos válidos, página de verificación legible, vista previa del correo electrónico, bloque de Gutenberg.
- Panel de control de incorporación, integración del correo electrónico en WooCommerce, diagnóstico del envío de correos electrónicos, corrección de errores de visualización.
- Panel de control de incorporación, integración del correo electrónico en WooCommerce, diagnóstico del envío de correos electrónicos, corrección de errores de visualización.
- MVP: botón reglamentario, módulo de dos pasos, recibo permanente, registro inalterable + OpenTimestamps, aplicabilidad por país, multilingüe (IT/EN/DE/FR/ES), documentos legales, CSS personalizable.
- MVP: botón reglamentario, módulo de dos pasos, recibo permanente, registro inalterable + OpenTimestamps, aplicabilidad por país, multilingüe (IT/EN/DE/FR/ES), documentos legales, CSS personalizable.