Redondeo Solidario y Donativo en el Checkout — Guía completa
Instalar, configurar y explotar el redondeo solidario y el microdonativo en el checkout (tres modos, donativo sin IVA, seguimiento de donativos) para PrestaShop 8 y 9.
Presentación
El módulo Redondeo Solidario y Donativo en el Checkout (dfsolidarityround) permite a tus clientes apoyar a una asociación en pocos segundos, directamente en el carrito: redondeando su pedido al euro superior, eligiendo un importe de donativo predefinido o introduciendo un importe libre. El donativo se integra limpiamente en el total — IVA, divisa y multitienda gestionados por el núcleo de PrestaShop, hasta la factura.
El donativo no es una simple visualización: lo soporta un producto virtual dedicado y un precio específico limitado al carrito del cliente. Por tanto, el importe aparece de forma natural en los totales, el pedido y la factura.
Compatibilidad
- PrestaShop 8.0 a 9.x
- Monotienda y multitienda
- PHP 7.4 a 8.3
- Tema Classic y temas personalizados
- Interfaz incluida en francés, inglés, español, alemán e italiano
- Sin dependencias (ni Composer ni framework)
Instalación
- En el back-office, abre Módulos > Gestor de módulos.
- Haz clic en Subir un módulo y selecciona el archivo
dfsolidarityround.zip. - Una vez instalado, haz clic en Configurar.
Durante la instalación, el módulo crea su tabla de historial, registra sus hooks (recursos front, bloque en el carrito y en el checkout, validación del pedido), añade la pestaña de back-office Donativos solidarios y genera un producto virtual oculto «Donativo solidario»: no visible en la tienda, sin IVA, sin gastos de envío. Es el que soporta el importe del donativo en el carrito. No lo elimines manualmente.
Configuración
Modos de donativo
Hay tres modos disponibles que se activan de forma independiente. Puedes ofrecer solo uno, o los tres a la vez.
- Redondeo al euro superior: propone al cliente llevar su pedido al importe redondo superior. El paso de redondeo es configurable (
1,00para el euro superior,0,50para el medio euro, etc.). - Importes fijos: muestra botones listos para pulsar. La lista de importes es configurable (por ejemplo
1;2;5). - Importe libre: permite al cliente introducir la suma que prefiera, acotada por un donativo mínimo y un donativo máximo.
En modo redondeo, si el total del carrito ya es un importe redondo, el módulo propone un donativo de un paso completo para que la adhesión del cliente siempre tenga sentido.
Personalización de la asociación
- Título del bloque: encabezado mostrado en la parte superior del bloque (campo multiidioma).
- Nombre de la asociación: nombre de la causa apoyada (campo multiidioma).
- Descripción: breve texto de acompañamiento (campo multiidioma).
- Logotipo de la asociación: imagen mostrada en el bloque (PNG, JPG, GIF, WEBP o SVG).
Ubicaciones de visualización
- Mostrar en la página Carrito: muestra el bloque al final de la página del carrito (ubicación principal y fiable).
- Mostrar en el embudo de compra: muestra el bloque en el resumen del pedido, si tu tema expone la ubicación correspondiente.
Funcionamiento del lado del cliente
Redondeo al euro superior
El cliente ve un botón del tipo «Redondear y donar 0,73 €». El importe propuesto es la diferencia entre su total y el importe redondo superior, según el paso configurado.
Importes fijos
El cliente pulsa uno de los importes propuestos (1 €, 2 €, 5 €…). El donativo correspondiente se añade de inmediato.
Importe libre
El cliente introduce el importe que prefiera y valida. El valor se controla con respecto al mínimo y al máximo definidos.
Una vez añadido el donativo, el bloque muestra un agradecimiento y un enlace «Retirar el donativo». El cliente mantiene el control: puede cambiar de importe o retirar su donativo en cualquier momento antes del pago.
Cómo se añade el donativo al carrito
En cada elección, el módulo crea un precio específico (SpecificPrice) limitado al carrito actual (id_cart) y lo aplica al producto virtual «Donativo solidario». Este producto se añade al carrito cuando el importe es mayor que cero, y se retira en caso contrario. PrestaShop aplica entonces la divisa y el contexto multitienda, y el donativo aparece como una línea clara en los totales, el pedido y la factura.
Recálculo automático del redondeo
En modo redondeo, el importe del donativo se recalcula cada vez que se muestra el bloque. Así, si el cliente modifica su carrito tras elegir el redondeo, el donativo se mantiene coherente con el nuevo total hasta el pago.
Donativo sin IVA
El producto «Donativo solidario» se crea sin ninguna regla de impuestos: el importe mostrado y recaudado se corresponde exactamente con el gesto del cliente, sin sorpresas de IVA.
Seguimiento de los donativos en el back-office
Se añade una pestaña Donativos solidarios en Pedidos (controlador AdminDfDonations). Enumera cada donativo con:
- el importe del donativo;
- el modo utilizado (redondeo, importe fijo o importe libre);
- el cliente y el pedido asociado;
- la fecha del donativo.
Un banner de síntesis muestra el total recaudado y el número de donativos. El donativo se congela en el historial al validar el pedido (actionValidateOrder).
Abono a la asociación
El módulo no abona automáticamente los donativos a la asociación: es intencionado. Recauda los donativos dentro de tus pedidos y te ofrece el total y el historial. Tú mantienes el control sobre cuándo y cómo abonas los fondos a tu asociación asociada, según tu propio proceso.
Compatibilidad con PrestaShop 9
El módulo está diseñado y probado de PrestaShop 8.0 a 9.x:
- el controlador de back-office usa
ModuleAdminController, compatible con 8 y 9; - el código evita los métodos eliminados en PrestaShop 9 (token AJAX y formato de precio portables);
- el controlador AJAX devuelve JSON directamente, sin sobrescritura de firma incompatible.
FAQ y resolución de problemas
El bloque no aparece en el embudo de compra
El bloque se muestra de forma fiable al final de la página del carrito. En el resumen del pedido, la visualización depende del tema, que debe exponer la ubicación correspondiente. En cualquier caso, el donativo elegido en la página del carrito se conserva hasta el pago.
El total no se actualiza tras el clic
El bloque dispara una actualización del carrito tras añadir o retirar el donativo. Vacía la caché de PrestaShop y vuelve a cargar la página. Comprueba también que el producto «Donativo solidario» no se haya eliminado manualmente.
La tienda se queda en blanco tras la instalación
Asegúrate de usar la última versión del módulo y vacía la caché. El producto de donativo es deliberadamente no visible en la tienda; no lo hagas visible ni lo elimines manualmente.
El donativo de redondeo me parece incorrecto
Comprueba el paso de redondeo configurado. En modo redondeo, el donativo se recalcula cada vez que se muestra el bloque, a partir del total sin el donativo; si el carrito cambia, el importe se ajusta automáticamente.
¿Cómo traducir el bloque a otro idioma?
El título, el nombre de la asociación y la descripción son campos multiidioma: selecciona cada idioma en la configuración para traducirlos. Las etiquetas de interfaz se traducen mediante Parámetros avanzados > Traducciones > Traducciones de los módulos instalados, eligiendo dfsolidarityround.
¿Es compatible con PrestaShop 9?
Sí. El módulo está diseñado y probado de PrestaShop 8.0 a 9.x, tanto en monotienda como en multitienda.
Desinstalación
La desinstalación elimina el producto «Donativo solidario», la pestaña de back-office y la tabla de historial de donativos. Si deseas conservar el historial, desactiva el módulo sin desinstalarlo.