PrestaShop subir archivo: adjuntos al hacer el pedido

Añade un campo para subir archivos al proceso de compra de PrestaShop: formatos, tamaño máximo, productos afectados y descarga desde el pedido.

PrestaShop subir archivo: adjuntos al hacer el pedido
Respuesta rápida

El proceso de compra de PrestaShop no tiene un campo para subir un archivo. El campo File de Easy Checkout Fields (plan Pro, 2 € al mes) lo añade. Tú eliges los formatos y el tamaño máximo, se comprueba el contenido del archivo y lo descargas desde la ficha del pedido del back-office.

Una imprenta espera el archivo que debe imprimir, un taller de bordado necesita el logotipo que va a bordar. El proceso de compra de PrestaShop no ofrece ningún campo para adjuntar un archivo, así que el intercambio se hace después por correo electrónico, con el riesgo de asociar un archivo al pedido equivocado.

El módulo Easy Checkout Fields, de Gekkode, añade este campo al proceso de compra. Esta guía configura los formatos aceptados y el tamaño máximo para subir un archivo al hacer un pedido en PrestaShop, reserva el campo a los productos que lo necesitan y muestra dónde recuperar el archivo, en una tienda de prueba con PrestaShop 9.1. El campo File está reservado al plan Pro (2 € al mes o 19,20 € al año).

Añadir una subida de archivos al checkout de PrestaShop, paso a paso

1. Un campo de tipo File

El módulo se instala desde su ZIP, como muestra nuestro primer tutorial de Easy Checkout Fields. En Orders > Easy Checkout Fields, crea después un campo con New field, de tipo File upload. La etiqueta indica qué debe enviarse («Tu archivo para imprimir»), y el texto de ayuda detalla los formatos y el tamaño aceptados antes de que el cliente elija su archivo.

2. Elegir los formatos y el tamaño

La casilla Allowed extensions enumera los formatos aceptados, separados por comas. Sin cambiar los ajustes, el módulo acepta pdf, jpg, jpeg, png, gif, doc, docx, txt y zip, hasta 5 MB. Para un archivo de impresión bastan pdf, png y jpg, con un límite de 10 MB:

Ajustes de un campo File upload: extensiones pdf, png, jpg, jpeg y tamaño máximo de 10 MB
Los formatos aceptados y el tamaño máximo del campo. Debajo de la casilla, el formulario recuerda el límite del servidor.

El límite de un campo no puede superar el tamaño que admite tu alojamiento para una subida. El formulario muestra ese límite debajo de la casilla (20 MB en la tienda de prueba). Si fijas un límite superior a 5 MB, introduce también ese valor como tamaño predeterminado en la pestaña Settings del módulo: es el que comprueba el navegador del cliente antes del envío.

Algunos tipos nunca se admiten, sea cual sea el ajuste: los scripts (php, js…), las páginas html y las imágenes svg, que pueden contener código. El módulo también comprueba el contenido real del archivo, por lo que rechaza un programa al que se le haya cambiado el nombre para que termine en .pdf.

3. Reservarlo a los productos que lo necesitan

No todos los clientes tienen un archivo que enviar. En el panel Display targeting, las listas Products in cart y Categories in cart reservan el campo a los carritos que contienen un producto o una categoría seleccionados. Aquí se usa la categoría Stationery, la de las libretas con cubierta personalizada de la tienda de prueba: un carrito sin productos de esa categoría no muestra el campo.

Panel Display targeting con la categoría Stationery en Categories in cart
El campo solo aparece si el carrito contiene un producto de la categoría Stationery.

4. Qué ve el cliente

Campo «Upload your artwork» en el proceso de compra, con un archivo PDF enviado y una cruz para quitarlo
Una vez enviado, el archivo aparece con su nombre y una cruz para quitarlo.

El archivo se envía en cuanto el cliente lo elige, antes del pago. Si tiene un formato incorrecto o pesa demasiado, se rechaza antes de guardarlo, y el cliente puede elegir otro sin perder el resto del pedido. Cada campo admite un solo archivo.

5. Recuperar el archivo

Bloque «Additional information (Easy Checkout Fields)» de la ficha del pedido, con el enlace de descarga del archivo
En la ficha del pedido, el archivo se descarga desde la última línea del bloque del módulo.

En la ficha del pedido del back-office, la respuesta muestra el nombre del archivo y un enlace de descarga. El archivo se guarda con un nombre aleatorio en una carpeta sin acceso público: intentar acceder adivinando la dirección devuelve un error, y solo se puede descargar desde el back-office. El cliente encuentra el nombre de su archivo en la confirmación y en sus correos, sin enlace.

Cuánto tiempo conservar los archivos

Un logotipo, una foto o un plano pueden contener datos personales. El módulo ofrece dos limpiezas automáticas en todos los planes. Los archivos enviados a un carrito cuyo pedido nunca se realizó se eliminan tras el número de días elegido (30 por defecto), y la anonimización programada borra los de los pedidos que superan el plazo fijado en meses. Los ajustes se describen en la documentación del módulo.

El campo File y los planes del módulo

El envío de archivos solo está disponible en el plan Pro. El plan gratuito de Easy Checkout Fields incluye tres campos de texto, lista, sí/no o consentimiento, útiles para instrucciones de entrega o un mensaje de regalo, pero no para recibir archivos. El plan Pro incluye los catorce tipos de campos, las condiciones de visualización, la factura PDF y la exportación CSV: la página del módulo compara los dos planes, y la demo en línea permite probar el envío de un archivo.

Qué debes recordar

  • Durante la compra, PrestaShop no permite al cliente adjuntar un archivo. El campo File upload de Easy Checkout Fields cubre esa necesidad en el plan Pro.
  • Tú eliges los formatos y el tamaño máximo. Los scripts, las páginas html y las imágenes svg siempre se rechazan, y se comprueba el contenido real del archivo.
  • El archivo se descarga desde la ficha del pedido del back-office, y los archivos de carritos abandonados y pedidos antiguos pueden borrarse automáticamente.

Una tienda que entrega en una fecha concreta puede añadir una fecha de entrega deseada, que también se pide durante la compra.

Errores frecuentes

Formatos sin indicar al cliente Un archivo que no tiene uno de los formatos elegidos se rechaza («This file type is not allowed.»). Indica los formatos y el tamaño en el texto de ayuda del campo para que el cliente los conozca antes de elegir su archivo.
Límite superior al del servidor El tamaño máximo de un campo no puede superar el límite de subida del alojamiento, que aparece debajo de la casilla (20 MB en nuestra tienda de prueba). Para superarlo, el proveedor de alojamiento debe aumentar ese límite.
Campo ausente del proceso de compra Si reservas el campo a una categoría, no aparece cuando el carrito no contiene ningún producto de esa categoría. Para probarlo, añade al carrito un producto de la categoría elegida.
Buscar el enlace de descarga como cliente El cliente solo ve el nombre de su archivo en la confirmación y en sus correos. El archivo se descarga desde la ficha del pedido del back-office.

PrestaShop

Damien Flandrin Desarrollador web desde 2010, creador de Gekkode y de Email Impact. Cada artículo se prueba en un proyecto real antes de publicarse. Contacto
Newsletter

Las nuevas pruebas, tutoriales y proyectos, por correo.

Pruebas reproducibles, código versionado, resultados fechados. Nunca spam.