Envío de regalo digital - Regale productos virtuales y enlaces de descarga a un amigo por correo
Permita que un cliente compre un producto digital para otra persona. Cuando el carrito contiene únicamente artículos virtuales o descargables, en la página del carrito aparece la opción enviar este pedido como regalo; el cliente escribe la dirección de un amigo y el enlace de descarga se envía a ese amigo en cuanto se paga el pedido. Sin factura, sin precio, sin datos del pedido: solo el archivo. La página del pedido muestra a quién se envió el regalo y si llegó realmente, con reenvío en un clic cuando no fue así. Sin overrides del núcleo. Para PrestaShop 1.7 – 9.
El caso de uso de regalo que le falta a su catálogo digital
Alguien quiere comprar su e-book, su pack de samples, su curso o su clave de licencia para un amigo. Hoy, o bien lo compra, se lo descarga y le reenvía el archivo a mano, o simplemente no lo compra. Este módulo cierra esa brecha con una sola casilla en la página del carrito y sin ningún paso adicional en el proceso de compra.
Una sola opción, justo donde tiene que estar
Cuando todos los artículos del carrito son virtuales o descargables, en el carrito aparece la opción Enviar este pedido como regalo a un amigo. Al marcarla se muestra un campo de correo electrónico; la preferencia se guarda al instante en segundo plano, sin recargar la página. A partir de ahí el cliente finaliza la compra exactamente como siempre: no se añade nada a su proceso de compra, y un breve recordatorio de solo lectura durante el pago confirma a quién va dirigido el regalo, con un enlace Editar que devuelve al carrito.
Los carritos mixtos no muestran la opción en absoluto. Es intencionado: un artículo físico no puede regalarse por correo electrónico, y regalar solo la mitad de un pedido no haría más que confundir a todo el mundo.
El amigo recibe el archivo, no el recibo
Cuando el pedido alcanza por primera vez un estado pagado o en procesamiento, el módulo envía por correo electrónico el enlace o los enlaces de descarga a la dirección del amigo utilizando su propia plantilla gift_download_ready. Lo que recibe el amigo es la descarga y nada más: ni factura, ni precio, ni referencia del pedido, ni dirección. El comprador conserva su confirmación de pedido de siempre.
Puede comprobar si ha funcionado
La página del pedido en el back office incorpora un panel Solicitud de regalo: quién es el destinatario, si el correo electrónico se envió y un botón Reenviar correo electrónico del regalo para las veces en que no fue así. Las direcciones rebotadas y los tropiezos del SMTP ocurren; recuperarse de uno no debería significar bucear en los registros de correo. La página de configuración también lista las 20 solicitudes de regalo más recientes —pedido, fecha, destinatario, Enviado o Pendiente— para que vea la funcionalidad en marcha de un vistazo.
Construido sobre hooks, no sobre overrides
La versión 1.x incluía cinco overrides de clases completas del núcleo —Cart, Order, OrderHistory, PaymentModule y CheckoutAddressesStep— solo para añadir dos columnas e intercalar unas pocas líneas en el flujo de pedido. Cada actualización de PrestaShop era una oportunidad de romper silenciosamente el proceso de compra de todas las tiendas que lo usaban.
La versión 2.0 elimina los cinco. Las solicitudes de regalo viven en su propia tabla, indexadas por carrito y después por pedido, y el módulo se engancha a puntos de extensión documentados: actionValidateOrder cuando se realiza el pedido y actionOrderStatusUpdate cuando pasa a estado pagado. No se toca nada del núcleo, así que nada del núcleo puede romperse.
Seguridad y privacidad tomadas en serio
El campo que decide adónde se reenvía un archivo ya pagado es justo el tipo de cosa que no puede ser falsificable. En 1.x no tenía protección CSRF: una petición falsificada entre sitios podría haber redirigido la descarga del propio cliente a la dirección de un atacante. El endpoint de guardado exige ahora un token firmado por carrito que solo la página del propio módulo puede generar.
La dirección del amigo es un dato personal de alguien que no es su cliente, así que la supresión de clientes según el RGPD está integrada: eliminar a un cliente con las propias herramientas de privacidad de PrestaShop borra también sus solicitudes de regalo.
Un widget que sigue el ritmo del carrito
La página del carrito cambia sin recargarse, y la opción de regalo tiene que seguirle el paso. Esta vuelve a comprobar la elegibilidad cuando la plantilla lanza un evento de actualización del carrito, escucha los distintos nombres de evento que usan las diferentes plantillas y recurre a una recomprobación periódica para las que no lanzan ninguno, sin interrumpir jamás a un cliente que esté escribiendo. La elegibilidad se decide con una lectura directa y sin caché del contenido del carrito, de modo que un carrito vaciado nunca sigue mostrando la opción y un carrito que acaba de quedarse todo digital la muestra de inmediato.
Las respuestas AJAX del propio módulo envían Cache-Control: no-store, y su CSS y su JavaScript van incrustados en la plantilla en lugar de registrarse a través del sistema de recursos, porque ese registro no hace absolutamente nada cuando el bloque se recupera de nuevo por AJAX. No queda nada que pueda fallar al cargarse.
Compatibilidad
PrestaShop 1.7, 8 y 9, en ocho idiomas: alemán, español, francés, inglés, italiano, neerlandés, polaco y turco. Sin overrides del núcleo, una pequeña tabla de base de datos, tres hooks y ningún cambio en la plantilla. Compatible con multitienda: el interruptor Permitir regalos es por tienda. Al actualizar desde 1.x se eliminan los cinco overrides y se limpian las filas de Configuration que 1.x creaba por cada carrito y nunca borraba.
Preguntas frecuentes
¿Cuándo recibe el amigo el correo electrónico?
La primera vez que el pedido alcanza un estado pagado o en procesamiento. Un pedido que sigue en "Pendiente de pago" no lo desencadena nunca, y esa es precisamente la idea: nadie recibe un archivo que no se ha pagado.
¿Ve el amigo el precio o la factura?
No. El correo electrónico del regalo contiene el enlace o los enlaces de descarga y nada más. Sin precio, sin factura, sin datos del pedido.
¿Y un carrito con un producto físico y otro digital?
La opción no aparece. Solo se pueden regalar los carritos totalmente digitales, ya que un artículo físico no puede entregarse por correo electrónico.
El correo electrónico nunca llegó, ¿qué debo revisar?
Que los regalos estuvieran activados cuando se realizó el pedido, que el carrito fuera totalmente digital, que el pedido alcanzara un estado pagado, que el producto tenga realmente un archivo adjunto en su pestaña Producto virtual y que la dirección no esté filtrando su tienda como spam. Después use Reenviar correo electrónico del regalo en el pedido.
¿Puede el cliente cambiar la dirección después de finalizar la compra?
Desde la tienda no, por diseño: supondría manipular un pedido ya pagado. Usted sí puede editarla en la página del pedido y reenviar.
¿Sobrescribe algún archivo del núcleo?
No. La versión 2.0 eliminó los cinco overrides que incluía la 1.x y los sustituyó por hooks y su propia tabla.
La opción no aparece en la página del carrito. Compruebe el ajuste y que el carrito sea íntegramente digital. Si ambas cosas son correctas, casi siempre es la caché: vacíe la caché de la tienda después de actualizar y asegúrese de que cualquier CDN o proxy inverso situado delante de su tienda excluya las páginas de carrito, pago y cuenta.
-
CompatibilidadPrestashop 1.7
Prestashop 8
Prestashop 9 -
Traducciones Disponibles del MóduloAlemán
Español
Francés
Inglés
Italiano
Neerlandés
Polaco
Turco
MEG Venture
4 productos más en la misma categoría
| Versión | 2.0.7 |
|---|---|
| Última actualización | 2026-07-28 |
| Registro de cambios | - [2026-07-26] Slow the cart widget's fallback poll and pause it on hidden tabs - [2026-07-24] Add translations for gift file to friend module in Italian, Dutch, Polish, and Turkish - [2026-07-23] Translate giftfiletofriend module strings to Dutch, Polish, and Turkish for improved localization. - [2026-07-23] Translate module messages to English in multiple language files for the Digital Gift Sender module, ensuring consistency in terminology and improving user experience. Updated phrases include settings confirmation, order status, and troubleshooting instructions across French, Italian, Dutch, Polish, and Turkish translations. - [2026-07-23] Populate translation files with complete translatable strings - [2026-07-23] Populate translation files with complete translatable strings - [2026-07-23] Populate translation files with complete translatable strings - [2026-07-23] Populate translation files with complete translatable strings - [2026-07-23] Populate translation files with complete translatable strings - [2026-07-23] Add missing translation files (fr, de, pl, nl, tr, it, es) - [2026-07-12] Update version to 2.0.6, fix cart-page widget bugs, inline CSS/JS for reliability, and enhance AJAX handling - [2026-07-12] Update version to 2.0.5, enhance caching mechanisms for cart state accuracy, and improve AJAX response handling - [2026-07-12] Update version to 2.0.4, enhance cart eligibility check, and improve widget auto-refresh functionality - [2026-07-12] Update widget styles and inline CSS for improved rendering in version 2.0.3 - [2026-07-12] Fix gifting eligibility check for non-empty virtual carts and update version to 2.0.2 - [2026-07-12] Update README and enhance gift widget functionality in version 2.0.1 - [2026-07-12] Add gift file to friend module with email notifications - [2026-06-21] Refactor OrderHistory class and add email templates for gift downloads - [2023-09-24] v1.1.4 - [2023-09-06] v1.1.3 - [2022-05-22] v1.1.2 - [2021-12-15] v1.1.1 - [2021-09-10] hookActionCartSave modification - [2021-08-29] v1.1.0 - [2021-08-24] Initial commit |
Comentarios (1)
Su agradecimiento a la reseña no pudo ser enviado
Reportar comentario
Reporte enviado
Su reporte no pudo ser enviado