Selling custom or engraved items is one of the most profitable ways to stand out in e-commerce, but setting up personalized options can quickly become technical. PrestaShop provides flexible, built-in features and powerful modules designed specifically to streamline custom product orders.
Whether you offer laser-engraved gifts, custom-printed merchandise, or tailored accessories, optimizing your workflow is essential. Here is how you can set up customization options smoothly, avoid common production pitfalls, and boost your store's sales.
Why DIY Engraving Orders Break Your PrestaShop Store (and Your Margins)
To sell custom or engraved items on PrestaShop without headaches, install a dedicated PrestaShop file upload module, such as PrestaShop Upload File Module, that adds drag-and-drop file and text fields directly to the product page, ties uploads to the specific order line and combination, and delivers the artwork to you with the order, instead of relying on PrestaShop's shallow built-in personalisation or collecting files by email.
The native personalisation field in PrestaShop is a single text box. That works for a monogram or a short message. It falls apart the moment a customer buys an engraved hip flask, a commemorative plaque or a set of bridesmaid bracelets and needs to send you a logo, a photo, a font reference and a layout sketch.
So the workaround begins. The customer orders, then emails the artwork separately. Or you chase them through the order message field, which accepts no attachments at all. By the time the files arrive, you are matching subject lines to order references by hand.
The operational damage compounds quietly:
- Artwork arrives days late, so the promised dispatch date slips.
- A customer sends the wrong logo version and you engrave it before anyone notices.
- Two similar orders get swapped because neither file was tagged to a line item.
- You re-cut a plaque, absorb the material cost and refund the shipping.
- Support time disappears into "did you receive my file?" threads rather than selling.
None of this is a marketing problem. It is a data-handling problem. Once you accept that PrestaShop was never built to collect and route production files, the fix becomes obvious: you need a PrestaShop file upload workflow that captures the file at the point of sale and keeps it attached to the order it belongs to.
A complicated checkout costs you more than admin time. Industry data shows that 17% of US online shoppers have abandoned an order due to a too-long or complicated checkout process, and asking buyers to leave your store to send artwork by email pushes them straight into that group.
Every engraving order you fulfill by email is an order you are one lost attachment away from remaking for free.
What You'll Need
Before you start, confirm you have the following in place. Missing any one of these is the usual reason an upload zone never shows up on the storefront.
- Access level: a PrestaShop employee account with permission to install and configure modules, plus file access to your hosting account if you plan to adjust PHP upload limits.
- Platform: a working PrestaShop 1.7 or 8.x store, ideally on a staging copy rather than your live shop.
- Module: the File upload module or a developer willing to build a custom hook-based solution.
- At least one engraved product: a product you can safely test an order against, including variants such as size or material if you sell combinations.
- Your engraving limits to hand: the file formats your workshop accepts, your maximum file size, and the character limits for text fields.
- Time: roughly 45 to 90 minutes for installation, global settings and a first product, plus extra time if you extend uploads to cart and order pages.
- Difficulty: moderate for the module route, advanced for the manual code route, which requires PHP, database and PrestaShop hook experience.
Method 1: Add File Upload and Engraving Fields with a PrestaShop Module
The manual approach gets you a working upload form, and for a handful of orders a month it may be enough. It stops scaling the moment you need two artwork files, a weight limit, or a copy of the file inside the order confirmation. That is where a dedicated module earns its place.
Step 1: Install and Open the Module
Installation determines whether the upload zones appear at all, so do this before touching any product settings.
Go to Modules -> Module Manager, then:
- Upload the module zip, or search the marketplace listing and install it from there.
- Click Configure once the install completes.
You should now see the module's configuration screen with a dashboard listing any files customers have already sent.
Tip: Install on a staging copy of the shop first. Engraving fields belong to specific products, so you want to confirm the layout before customers see it.
Step 2: Set the Global File Rules
Global limits save you from configuring the same restrictions product by product, which is exactly the repetition that makes engraving stores messy.
Open the module's main settings area and define:
- Allowed extensions listing every format you can actually engrave from, such as vector and high-resolution raster files.
- Maximum file size set to the ceiling your laser or engraving partner accepts.
- Upload quantity so a customer sending front and back artwork is not blocked.
You should now see your saved limits reflected on the module dashboard.
Step 3: Create an Upload Zone on the Right Product
Attaching the zone to the product is what turns a generic upload widget into part of the buying flow.
Edit the engraved product, then:
- Find the module's product-level section on the product edit screen.
- Enable the upload zone for that product only.
- Write the instructions the customer sees, for example, the file formats and any minimum resolution you require.
You should now see the upload area previewed on that product page.
Step 4: Add Text Fields for Engraving Details
Artwork alone rarely carries the full instruction. Names, dates and monograms are text, and they need to sit beside the file, not in a separate email.
Add the fields you need and mark which are mandatory:
- Engraving text capped at the character count your engraving area physically allows.
- Font choice offered only from options you genuinely stock.
- Placement note so the customer says where the text sits on the item.
You should now see these fields rendered directly beneath the upload zone on the product page.
Step 5: Extend Uploads to Cart and Order Pages
Customers often decide on personalisation after adding an item to the basket, and losing that moment costs you the detail you need to engrave.
Enable the cart and order page options so a shopper can:
- Attach artwork from the cart before checkout.
- Replace a file they uploaded by mistake without contacting you.
You should now see the same upload control across product, cart and order pages. That consistency matters because a complicated checkout experience causes 22% of shoppers to abandon and an engraving shop cannot afford extra friction bolted onto the payment step.
Step 6: Tie Uploads to Orders and Confirmation Emails
A file that lives only in a customer's sent-items folder is a file you will eventually lose.
Turn on order attachment so that:
- Each submitted file is linked to the specific order and customer record.
- The order confirmation email carries the attachment, so both you and the buyer hold a copy.
- You can download everything from the module dashboard instead of hunting through inboxes.
You should now see uploaded files listed against the order in the back office.
Warning: Confirm your mail configuration can handle attachments before switching this on for live orders, or the customer may receive a confirmation with the file missing.
Step 7: Manage and Moderate Submitted Files
Moderation protects your production schedule from files you cannot use.
From the dashboard, review each submission, check the artwork against the text field, and contact the customer through your PrestaShop help desk module when something does not match, keeping the whole proofing conversation in one thread rather than scattered across email.
You should now see every order's artwork and engraving text in one place, ready for production without a single chase-up email.
Method 2: The Manual Route, Native PrestaShop Customization vs Custom Code
Not every store needs a module on day one. If you sell a single line of engraved keyrings and every order is "initials, a few characters, Times New Roman", PrestaShop's built-in product customisation can carry you for a while. The trouble starts when orders get more complicated than that.
Option A: PrestaShop's Native "Customized" Text Fields
In the Back Office, open Catalog -> Products, choose your engraved product, and go to the Customization tab. From there, you can add a text field with a label such as "Engraving text" and mark it as Required so the customer cannot check out without filling it in.
- Works well for short, single-line engravings such as names, dates or initials.
- Customer input arrives as plain text inside the order, so there is nothing to download or store separately.
- You can limit the field length, which discourages customers from pasting in an essay you cannot fit on a plaque.
The limits show up quickly. There is no way to accept a logo file, a vector cut path or a photograph of a signature alongside that text. There is no preview, so the customer only discovers the wording was wrong when the parcel arrives. And because the text sits in the order record rather than in a managed file area, matching artwork to the right line item means opening orders one at a time.
Native customisation fields collect words, not artwork. The moment a customer needs to send you a file, you are back to email.
Option B: Custom Code via PrestaShop Hooks
Developers who want total control can build the upload flow themselves. PrestaShop's hook system gives you the insertion points: displayProductAdditionalInfo or displayProductButtons to render a file input on the product page, actionCartSave or actionValidateOrder to intercept the submission, and displayAdminOrder to surface the file to staff in the Back Office.
A workable build usually needs to handle all of the following.
- A custom database table linking each uploaded file to the cart, the order and the product line.
- Server-side validation of file type, file size and MIME signature, since a browser-side check alone can be bypassed.
- Storage outside the web root, or a protected directory, so uploaded files are not publicly guessable URLs.
- Theme template overrides, which you must re-check after every PrestaShop core or theme update.
- Order confirmation and admin notification emails that reference the attached file.
None of that is unreasonable for a development team. It does mean you now own a small piece of software forever: PHP version bumps, security patches and PrestaShop major upgrades all land on your desk, not a vendor's. A missing MIME check on a public upload form is also a genuine security risk, not a theoretical one.
For most engraving shops the arithmetic is simple. A custom build costs days of developer time plus ongoing maintenance, while PrestaShop Upload File | Virtual File Manager for Customer File Upload at $49.00 handles the upload, storage and admin side without you touching a hook. Treat the manual route as the right answer only when your engraving rules are genuinely unusual.
How Do You Handle Real Engraving Problems, Wrong Files, Huge Uploads and Proofing?
Most engraved-item stores don't fail because customers can't upload a file. They fail because the file arrives, and nothing in the workflow catches what's wrong with it before production starts. These are the four situations that generate the most support tickets, plus the fixes that stop them at the door.
Wrong Format, Wrong Resolution, Wrong Artwork
A customer uploads a screenshot of a logo pulled from a website, or a photo of a handwritten note, and expects it laser-etched onto a hip flask. Because PrestaShop's native personalisation accepts whatever the customer types or attaches, nothing warns them that the file will look terrible when reproduced.
- State the accepted formats in the product description itself (for example SVG, PNG, AI or PDF) rather than burying them in a general terms page.
- Explain the minimum resolution or vector requirement in plain language: a small, low-resolution logo will engrave blurry.
- Use the file upload module's restrictions to enforce the formats you actually accept, so a rejected file is blocked at upload instead of discovered at production.
- Add a one-line confirmation the customer must read before adding to cart, such as agreeing that uploaded artwork is production-ready.
The cheapest place to catch a bad file is the product page, not the workshop bench.
Oversized Files and Uploads That Time Out
A customer photographs a wedding invitation on a modern phone and uploads a large JPEG, or sends a layered design file that runs to many megabytes. On a shared host, the upload may simply stall, and the browser shows a generic error the customer can't interpret. They try again, assume your store is broken, and leave.
The fix is twofold. Set a realistic maximum upload size that matches your hosting configuration, and display that limit on the product page so expectations are set before the attempt. When a file genuinely is too large, tell the customer what to do next: resize it, or send it through a transfer service and reference the order number.
Proofing Without a Preview
This is the expensive one. The customer imagines their text centred and in a serif font. Your workshop produces it left-aligned in a sans-serif. The item ships, the customer complains, and you eat the cost of a remake on a product that can't be resold.
| Proofing approach | What it costs you | Best used for |
|---|---|---|
| Text-only instructions, no preview | Highest remake rate, most email back-and-forth | Low-value items where a remake is cheap |
| Manual proof emailed before production | Adds a day or two to every order, plus admin time | High-value, one-off commissions |
| Live on-page preview plus confirmed text field | Setup effort once, then self-service | Repeatable engraved lines, monograms, dates |
Where a full visual preview isn't available, the next best thing is a mandatory text field that forces the customer to retype the exact engraving text, including capitalisation and punctuation, and a checkbox confirming it's correct. It feels redundant to the customer. It is also the single most effective protection against "I meant it in all caps" disputes.
The PrestaShop Upload File module supports drag-and-drop and multiple file uploads from the product, cart and order pages, so a customer can attach artwork and a reference photo in one go instead of emailing them separately. Admins then manage everything from the dashboard rather than hunting through inboxes.
Duplicate Orders and Lost Threads
Engraving customers often place two orders by mistake: one with the file attached, one without, because they weren't sure the first one went through. Files sent by email get separated from the order they belong to, and by the time production starts, nobody is sure which instructions are current.
- Keep every uploaded file tied to its order reference so the workshop pulls artwork from one place.
- Ask customers not to email files separately once they've uploaded them on-site.
- Give support staff a quick way to see what was submitted per order, which is where a PrestaShop help desk earns its place alongside the upload workflow.
Setting expectations in the product page copy is the part most owners skip, and it's the part that quietly removes half the tickets. Say what you accept, what you won't accept, how long a proof takes if you offer one, and whether engraving changes the return policy. A customer who reads that before ordering rarely argues about it afterwards.
Why PrestaShop's Built-In Personalisation Falls Short for Engraving
Selling engraved items sounds simple until the first order arrives. A customer buys a woodwatch, writes "engrave 'Happy Anniversary, Tom'" in the order message box, and your team is left guessing about font, placement and the actual artwork file, which never arrived.
That gap between what PrestaShop captures out of the box and what an engraving workflow actually needs creates a predictable set of problems:
- Customers who want to send a logo or monogram have no way to attach the file, so they email it separately, often days later.
- Order messages get buried in the back office, and staff lose track of which engraving belongs to which order line.
- Proofs get approved over email threads that nobody can find six months later when a dispute arises.
- Wrong engravings mean refunds, remakes and shipping costs that eat directly into margin.
Each of these is a support ticket waiting to happen. The bottleneck is not the engraving itself; it is the missing handover point where a customer's file should land next to their order.
How to Sell Custom Engraved Items on PrestaShop with Reliable File Collection
File collection is the piece PrestaShop omits by default. Adding a customer file upload step at the product, cart or order stage removes the email back-and-forth entirely.
Step 1: Install the File Upload Module
You need a module that captures files before the order is placed, not after. PrestaShop's default product page has no upload field, so nothing can be collected without one.
Navigate to your PrestaShop back office, then:
- Go to Modules then Module Manager.
- Click Upload a module and select the module ZIP file from your computer.
- Wait for the installation confirmation, then click Configure to open the module settings.
You should now see the module listed as installed and active in your Module Manager.
Step 2: Enable Upload on Product Pages
Engravings are product-specific, so the upload field belongs on the product page where the customer is already deciding what to buy.
In the module configuration, open the product page settings and enable the relevant options:
- Turn on the display of the upload field on the product page.
- Set whether customers can drag and drop files or browse for them.
- Choose whether you want to allow multiple files for a single product, which suits orders that need both artwork and a layout reference.
You should now see an upload option appear beneath the product's add-to-cart area when you view the product as a customer.
Step 3: Allow Uploads from Cart and Order Pages
Many engraving customers add the product first, then remember they still need to send the logo file. Letting them upload later reduces abandoned carts.
Navigate to the module's cart and order page settings, then enable the upload option on both the cart page and the order pages, and confirm the box is visible on the relevant pages in your theme by previewing a test cart.
You should now see the upload box available at each stage where a customer might have a file ready.
Step 4: Manage Uploaded Files from the Dashboard
Once files start arriving, someone has to find them quickly. A single admin view prevents staff from hunting through order messages or inboxes.
Open the module's file management area in the back office, where you can see uploaded files grouped by order or product, download the artwork directly to your engraving workflow, and check which orders are waiting on a file and which are ready to produce.
You should now see a consolidated list of customer files sitting alongside their orders rather than scattered across separate emails.
Troubleshooting
If the upload box never appears on a product page, check that the product page setting from Step 2 is switched on and that your theme template includes the module's display hook. Product page settings often get missed when a store has many products.
If customers report that drag and drop does nothing, confirm the upload field is actually rendered on their page and that they are using a supported browser. Cached theme changes are a common culprit here.
If files upload but your team cannot find them, look at the dashboard panel described in Step 4 and verify the order is associated with the upload. Files are only useful if they are tied to the right order line.
Conclusion
Adding file collection at the product, cart and order stages closes the gap that causes lost artwork, vague emails and remake costs. Your team gets the file attached to the order before it enters production, which means fewer refunds and cleaner handovers. Install the PrestaShop Upload File module and enable product page uploads first, then expand to cart and order pages once you have tested a few orders.