Customer Upload Experience
Multi-file support — up to N files per item (configurable)
Order File Attachments empowers Magento 2 merchants to accept customer-uploaded files at checkout on a per-product-item basis — ideal for print-on-demand, custom artwork, engraving instructions, prescription uploads, personalised gifts,…
Key Features:
Additional Services
Built-in from day one. No add-ons, no upsell, no licence keys to renew.
Multi-file support — up to N files per item (configurable)
Attachments appear on quote items as rich additional_options cards
Dedicated admin grid — Sales → Panth Infotech → Order Attachments
Per-product attribute — panth_allow_order_attachment (Yes/No)
MEQP compliant — Adobe Magento Extension Quality Program tested
Order File Attachments for Magento 2. Panth Order Attachments lets Magento 2 customers upload and attach files to specific order items during checkout. Includes admin grid management, thumbnail preview, downloads, file size validation, multi-file support, and per-product attribute control. Compatible with Magento 2.4.4 - 2.4.8 and PHP 8.1 - 8.4.
Engineered for magento 2 order attachments, file upload checkout, custom file upload — ships with sensible defaults, full admin controls, and zero JavaScript bloat. Works identically on Hyva and Luma; passes Adobe MEQP with zero severity-10 violations.
Order File Attachments empowers Magento 2 merchants to accept customer-uploaded files at checkout on a per-product-item basis — ideal for print-on-demand, custom artwork, engraving instructions, prescription uploads, personalised gifts, B2B RFQs, and any store where orders require supporting documents.
Panth Order Attachments lets customers attach one or more files to specific order items directly during checkout. Store admins get a powerful backend grid to manage every uploaded file — with thumbnail previews, one-click downloads, order/item linking, and full file size validation. Enable or disable uploads per product via a simple product attribute, configure allowed file types and size limits globally, and support multi-file uploads where needed. Whether you sell custom-printed t-shirts, personalised mugs, business cards, engraved jewellery, or prescription eyewear, Order Attachments gives your customers a frictionless way to send you the files you need — and gives you a clean, searchable admin interface to retrieve them.
Get a free quote for your project in 24 hours — custom modules, Hyva themes, performance optimization, M1→M2 migrations, and Adobe Commerce Cloud.
Kishan SavaliyaTop Rated Plus on Upwork 100% Job Success • 10+ Years Magento Experience Adobe Certified • Hyva Specialist |
Panth Infotech AgencyMagento Development Team Custom Modules • Theme Design • Migrations Performance • SEO • Adobe Commerce Cloud |
Visit our website: kishansavaliya.com | Get a quote: kishansavaliya.com/get-quote
Out of the box, Magento 2 has no native way for customers to upload files at checkout that are cleanly attached to a specific order item. Merchants selling customizable products, prescription products, or B2B documents are forced to:
Panth Order Attachments solves this properly:
additional_options cardssales_order_place_after observerSales → Panth Infotech → Order Attachmentspanth_allow_order_attachment (Yes/No)| Requirement | Versions Supported |
|---|---|
| Magento Open Source | 2.4.4, 2.4.5, 2.4.6, 2.4.7, 2.4.8 |
| Adobe Commerce | 2.4.4, 2.4.5, 2.4.6, 2.4.7, 2.4.8 |
| Adobe Commerce Cloud | 2.4.4 — 2.4.8 |
| PHP | 8.1.x, 8.2.x, 8.3.x, 8.4.x |
| MySQL | 8.0+ |
| MariaDB | 10.4+ |
| Hyva Theme | 1.0+ (full Alpine.js support) |
| Luma Theme | Native support (vanilla JS) |
| Required | mage2kishan/module-core (free, auto-installed) |
Tested on:
composer require mage2kishan/module-order-attachments
bin/magento module:enable Panth_Core Panth_OrderAttachments
bin/magento setup:upgrade
bin/magento setup:di:compile
bin/magento setup:static-content:deploy -f
bin/magento cache:flush
app/code/Panth/OrderAttachments/Panth_Core to app/code/Panth/Core/ (required dependency)bin/magento module:status Panth_OrderAttachments
# Expected: Module is enabled
Navigate to Stores → Configuration → Panth Extensions → Order Attachments.
| Setting | Default | Description |
|---|---|---|
| Enable Module | Yes | Master on/off switch for Order Attachments. |
| Setting | Default | Description |
|---|---|---|
| Allowed Extensions | jpg,jpeg,png,gif,pdf,doc,docx,zip | Comma-separated whitelist. |
| Max File Size (MB) | 10 | Server-enforced maximum per file. |
| Max Files Per Item | 5 | Maximum attachments per cart line item. |
| Setting | Default | Description |
|---|---|---|
| Upload Label | Upload Your Design | Custom heading displayed above the upload widget. |
| Show in Cart | Yes | Display attachment cards on the cart page and minicart. |
| Show in Checkout | Yes | Display attachment cards in the checkout order summary. |
Edit any product → Order Attachments attribute group → set Allow Order Attachments to Yes/No.
Open any order in admin; the Order Attachments tab lists:
Navigate to Sales → Panth Infotech → Order Attachments for a cross-order view:
The module installs a product attribute panth_allow_order_attachment (Boolean) in the Order Attachments attribute group.
| Value | Behaviour |
|---|---|
| No | Upload widget is hidden on the product page (default). |
| Yes | Upload widget appears; customer may attach files before adding to cart. |
You can set this at product, attribute set, or attribute group level.
var/order_attachments/ — not publicly browsableNative file custom options are tied to the cart quote item and don't persist cleanly as a first-class order record. Panth Order Attachments creates dedicated panth_quote_attachment and panth_order_attachment tables, linked to the sales order item, ensuring files remain accessible for the full order lifetime — including reorders, invoices, and RMAs.
Yes. Set Max Files Per Item in configuration (default 5). Each enabled product in the cart accepts up to that many files.
Yes. The frontend widget has both Luma (PHTML + vanilla JS) and Hyva (Alpine.js + Tailwind) implementations, auto-selected via Panth\Core\Helper\Theme.
Any extension you configure. Defaults: jpg, jpeg, png, gif, pdf, doc, docx, zip. You can add ai, psd, eps, svg, tif, xlsx, etc.
In var/order_attachments/ with SHA-256 hashed filenames. The directory is not publicly browsable; files are served only through authenticated controllers.
Yes. Both guest and registered customer checkouts are supported.
Yes. Admins can soft-delete or download any attachment from the grid and order view tab.
Yes. Files are stored in the writable var/ directory which is persisted across deploys on ACC.
Yes. Configuration respects default → website → store view scope. Attachments are stored per order regardless of store view.
REST endpoints for listing and downloading attachment metadata are included. GraphQL support is on the roadmap.
| Channel | Contact |
|---|---|
| kishansavaliyakb@gmail.com | |
| Website | kishansavaliya.com |
| +91 84012 70422 | |
| GitHub Issues | github.com/mage2sk/module-order-attachments/issues |
| Upwork (Top Rated Plus) | Hire Kishan Savaliya |
| Upwork Agency | Panth Infotech |
Response time: 1-2 business days for paid licenses.
Commercial — see LICENSE.txt. One license per Magento production installation. Includes 12 months of free updates and email support.
Built and maintained by Kishan Savaliya — kishansavaliya.com — a Top Rated Plus Magento developer on Upwork with 10+ years of eCommerce experience.
Panth Infotech is a Magento 2 development agency specialising in high-quality, security-focused extensions and themes for both Hyva and Luma storefronts. Our extension suite covers SEO, performance, checkout, product presentation, customer engagement, and store management — over 34 modules built to MEQP standards and tested across Magento 2.4.4 to 2.4.8.
Browse the full catalog on the Adobe Commerce Marketplace or Packagist.
Ready to add file attachments to your Magento 2 orders?
SEO Keywords: magento 2 order attachments, magento 2 file upload checkout, custom file upload magento, attach files to orders magento, magento 2 order file upload extension, magento 2 checkout upload, order item attachments magento, magento 2 print on demand upload, magento 2 artwork upload, magento 2 prescription upload, magento 2 personalised products upload, magento 2 customer file upload, magento 2 multi file upload, magento 2 thumbnail preview admin, magento 2 order attachment grid, magento 2 per product file upload, magento 2 file size validation, magento 2 B2B file upload, magento 2 custom product file upload, magento 2 hyva file upload, magento 2 luma file upload, magento 2.4.8 extension, php 8.4 magento module, panth order attachments, kishan savaliya magento, panth infotech magento, top rated plus magento freelancer, hire magento developer upwork, custom magento development, mage2kishan, mage2sk
| Module Category | Cart & Checkout |
|---|---|
| Best For | All Sizes |
Native file custom options are tied to the cart quote item and don't persist cleanly as a first-class order record. Panth Order Attachments creates dedicated panth_quote_attachment and panth_order_attachment tables, linked to the sales order item, ensuring files remain accessible for the full order lifetime — including reorders, invoices, and RMAs.
Yes. Set Max Files Per Item in configuration (default 5). Each enabled product in the cart accepts up to that many files.
Yes. The frontend widget has both Luma (PHTML + vanilla JS) and Hyva (Alpine.js + Tailwind) implementations, auto-selected via Panth\Core\Helper\Theme.
Any extension you configure. Defaults: jpg, jpeg, png, gif, pdf, doc, docx, zip. You can add ai, psd, eps, svg, tif, xlsx, etc.
In var/order_attachments/ with SHA-256 hashed filenames. The directory is not publicly browsable; files are served only through authenticated controllers.
Yes. Both guest and registered customer checkouts are supported.
Yes. Admins can soft-delete or download any attachment from the grid and order view tab.
Yes. Files are stored in the writable var/ directory which is persisted across deploys on ACC.
Yes. Configuration respects default → website → store view scope. Attachments are stored per order regardless of store view.
REST endpoints for listing and downloading attachment metadata are included. GraphQL support is on the roadmap.
Panth Malware Scanner is built specifically for Magento 2 filesystems — it understands the directory layout, knows which folders are writable from the frontend, and ships signatures tuned for Magento-targeted threats (Magecart skimmers, PolyShell webshells, admin-layout injection). Traditional AV tools scan everything with generic signatures and produce noise.
Yes. The module ships dedicated Hyva templates built with Alpine.js and Tailwind CSS. Theme detection is automatic via Panth_Core.
No. Panth Core is completely free and will remain free forever. It is the foundation library that other (paid) Panth extensions depend on.
No. Merchant-authored labels (anything other than empty, the product name, Image, main product photo, or the raw filename) are preserved. Only Magento's default placeholders get upgraded to template output.
No — any valid WhatsApp number works. However, a WhatsApp Business account is strongly recommended for commercial use (auto-replies, labels, catalog).
Yes, on the product detail page. When the module is enabled, the default gallery.phtml is replaced with the Panth gallery (one template for Hyva, another for Luma — chosen automatically).
Unlimited. Each form has a unique identifier and its own submissions scope.
No. The head block is cacheable="true" so the full JSON-LD payload is baked into full-page cache. Providers only run on uncached renders; cached hits serve the pre-rendered <script> tag with zero PHP evaluation.
Yes. The module ships with two purpose-built templates — Alpine.js + Tailwind for Hyva and vanilla JS for Luma — and auto-switches based on your active storefront theme.
Yes. When enabled, Panth Footer takes over the footer.container block and renders its own configurable footer. You can disable it any time to restore the default footer.
Talk to Kishan directly — written quote, scope and timeline within 24 hours. No sales call.
Order File Attachments for Magento 2