Vanquish Upload Files for WooCommerce

ਵੇਰਵਾ

Vanquish Upload Files for WooCommerce lets you collect files from your customers — logos, artwork, documents, photos — exactly where you need them: on the product page, in the cart, during checkout, or on the order details page.

Whether you run a print shop, a personalization service, or any store that sells custom products, this plugin makes it effortless for customers to provide the files you need to fulfill their orders, with a clean upload experience and a real-time progress bar.

Large files are handled properly. Every upload is split into chunks and reassembled on the server, so a single request never runs into the size limit your host or CDN enforces — the usual cause of an upload that dies at 90% with no explanation.

Why store owners choose it

  • Receive uploads bound to each order — no more chasing files over email.
  • Show upload fields exactly where they make sense: product, cart, checkout, order pages.
  • Make uploads required so customers can’t order without providing their files.
  • Restrict by file type, size and image dimensions.
  • Get notified by email the moment a customer uploads a file.
  • Fully translatable — upload field texts get a box per language, with or without WPML.
  • Handle large files on any host — uploads are split into chunks, so no single request runs into your server’s or your CDN’s size limit.

What’s included for free

  • Multiple upload fields per product
  • Single file per upload field
  • Display on product, cart, checkout and order pages (classic and block-based cart & checkout)
  • Individual products — add the same product multiple times with distinct uploads
  • Require an upload before add-to-cart or checkout
  • File type, size and dimension restrictions
  • Admin email notifications
  • Upload progress bar, file delete, image/audio/PDF preview
  • Light or dark colour scheme for the upload boxes, to match your theme
  • Chunked uploads for large files — with automatic retry on a failed chunk
  • Translatable button texts, and a box per language for every upload field text

Premium features

The Premium version, distributed separately, adds:

  • Multiple files per upload field — let customers attach several files to a single field
  • Image crop editor with rotation and aspect-ratio control
  • Low print resolution warning — tell customers when a photo has too few pixels for the size it will be printed at
  • Extra costs & discounts per uploaded file — fixed or percentage
  • Per-second (audio/video), per-file-size and per-PDF-page surcharges
  • Set the product price based on the number of uploaded files
  • Cloud storage: Dropbox, Amazon S3 and Google Drive
  • Approve / reject uploaded files with customer feedback
  • Visibility rules by product, category, user role, order status, payment gateway, shipping method and time
  • Show the upload fields from the last order on the My Account dashboard
  • Advanced shortcodes to place upload forms anywhere
  • Priority support and updates

External services

This plugin connects to the following third-party services.

Freemius — Used to deliver plugin updates, manage the optional Premium license, and (only if you opt in) collect anonymous usage data to help improve the plugin. Your site URL and basic environment information are sent to Freemius when you activate the plugin, check for updates, or activate/deactivate a license. Provided by Freemius, Inc.
Terms of Service: https://freemius.com/terms/
Privacy Policy: https://freemius.com/privacy/

Cloud storage (Premium only) — The free version stores uploaded files on your own server and uses no external storage. If you enable a cloud storage destination in the Premium version, the files your customers upload are sent to the storage account you configure, and only at the moment an order is created (when the customer reaches the order-received/thank-you page, or uploads files on the thank-you or order details page). Files are never sent before an order exists. Available providers and their policies:

  • Dropbox — Terms: https://www.dropbox.com/terms — Privacy: https://www.dropbox.com/privacy
  • Amazon S3 (AWS) — Service Terms: https://aws.amazon.com/service-terms/ — Privacy: https://aws.amazon.com/privacy/
  • Google Drive — Google APIs Terms: https://developers.google.com/terms — Privacy: https://policies.google.com/privacy

ਸਕਰੀਨਸ਼ਾਟ

ਸਥਾਪਤੀਕਰਨ

  1. Upload the plugin files to the /wp-content/plugins/vanquish-upload-files-for-woocommerce directory, or install the plugin through the WordPress Plugins screen directly.
  2. Activate the plugin through the ‘Plugins’ screen in WordPress.
  3. Make sure WooCommerce is installed and active.
  4. Go to the Upload field configurator menu to create your first upload field.
  5. Choose on which pages the field appears (product, cart, checkout, order). Fine-grained visibility rules (by product/category, role, gateway, shipping method and time) are available in Premium.

ਅਕਸਰ ਪੁੱਛੇ ਜਾਂਦੇ ਸਵਾਲ

Does it work without WooCommerce?

No. WooCommerce must be installed and active, since uploads are bound to WooCommerce products and orders.

Which product types are supported?

Native WooCommerce simple and variable products. Custom product types added by third-party plugins are not officially supported.

How many files can customers upload in the free version?

The free version supports multiple upload fields per product, with one file per field — you configure how many fields to add in the Upload field configurator. The separately distributed Premium version adds multiple files per upload field, cloud storage (Dropbox, Amazon S3, Google Drive), the image crop editor and full PDF preview, among other extras.

Can customers upload large files?

Yes, and there is nothing to configure. Every upload is split into chunks in the browser and reassembled on the server, so the file never travels as a single request – which is what usually produces a 413 error behind Cloudflare, a reverse proxy, or a host with a low post_max_size.

The chunk size is taken from your own server limits – the smaller of post_max_size and upload_max_filesize – and never exceeds 10 MB, however large the file is. If a chunk fails it is retried on its own instead of restarting the whole upload, and the server checks the reassembled file against the size the browser reported before accepting it.

This works in the free version too. What still applies is the maximum size you set on the upload field itself, along with your server’s disk space and PHP execution time.

Does it support the block-based cart and checkout?

Yes. Both the classic (shortcode) and the block-based WooCommerce cart and checkout are supported. On the block cart/checkout the upload fields appear in the order-summary area.

Is it translatable?

Yes, and it does not depend on any one translation plugin. Button texts are translatable, and every text of an upload field — title, description, disclaimer and the rest — has a box per language in the Translations tab of the field itself. That works with WPML, with Polylang, or with nothing more than the languages installed in WordPress.

If you have been translating those texts in WPML String Translation, they are moved over automatically the first time you open the admin after updating, and nothing is deleted from WPML.

Customers upload files, but the order shows none. What should I check?

The uploads stay in a visitor session until the order is created, and the session is identified by a cookie named vanupfi_uid. If that cookie does not survive from the upload to the checkout, the order is created with nothing attached.

Turn on Options Debug log and place a test order. The plugin records when each file was saved, which order events WooCommerce fired, whether the uploads were still reachable at each one, and whether they were attached to the order. Read it under WooCommerce Status Logs, source vanquish-upload-files. If nothing appears there, check that logging is enabled in that screen’s settings. Then check, in this order:

  1. Is the vanupfi_uid cookie present in the browser while on the checkout page? The most common cause of a missing one is a cookie consent banner, which blocks cookies it does not recognise until consent is given. A full-page cache or a CDN dropping the Set-Cookie header does the same.
  2. How long passes between the upload and the completed order, compared with Options Temp files clear interval? When that time elapses the session is deleted, and the temporary files go with it.
  3. If both look right, deactivate your other plugins, confirm that a test order keeps its files, then re-enable them one at a time.

Temporary uploads live in wp-content/uploads/wcuf/tmp/; files attached to an order live in wp-content/uploads/wcuf/, in a subfolder per order.

Where are uploaded files stored?

By default on your own server. Premium adds Dropbox, Amazon S3 and Google Drive as storage destinations.

Can I place the upload form anywhere with shortcodes? (Premium)

Yes. The Premium version provides shortcodes to render the upload form on any page:

  • [vanupfi_upload_form] – a generic upload form.
  • [vanupfi_product_page_upload_form] – the product-page upload form.
  • [vanupfi_cart_page_upload_form] – the cart upload form.
  • [vanupfi_checkout_page_upload_form] – the checkout upload form.
  • [vanupfi_upload_form_last_order] – the upload form for the customer’s last order.

Important: when you place one of these forms on a page, enable Disable standard upload-field management for the matching page (in the plugin options) so the upload fields are not rendered twice. For example, if you use the product-page form shortcode, disable standard management for the Product page.

Migrating from the CodeCanyon version? The old [wcuf_...] shortcodes keep working as aliases of the new [vanupfi_...] ones, so you do not need to edit your product content.

I migrated from the CodeCanyon version and my shortcodes show as plain text (Premium)

The shortcode prefix changed from wcuf_ to vanupfi_. Since version 1.0.11 the old tags keep working as aliases, so simply updating the plugin is enough. If you prefer to update your content, the mapping is 1:1:

  • [wcuf_upload_form] -> [vanupfi_upload_form]
  • [wcuf_product_page_upload_form] -> [vanupfi_product_page_upload_form]
  • [wcuf_cart_page_upload_form] -> [vanupfi_cart_page_upload_form]
  • [wcuf_checkout_page_upload_form] -> [vanupfi_checkout_page_upload_form]
  • [wcuf_upload_form_last_order] -> [vanupfi_upload_form_last_order]

How much does Premium cost?

You can see all Premium plans and prices on the pricing page: https://vanquishplugins.com/migration/pricing/ – single site or 3, 5 and 10 sites, billed monthly, yearly, or once (lifetime). The same plans are also shown inside the plugin, under the “Upgrade” menu.

I bought this plugin on CodeCanyon. How do I get the Premium version?

The CodeCanyon item (WooCommerce Upload Files) has been retired and continues here as the free Vanquish Upload Files for WooCommerce. Existing CodeCanyon customers can convert their purchase into a Premium license – including 1 year of updates and support at no extra cost – on the migration page: https://vanquishplugins.com/migration/

ਸਮੀਖਿਆਵਾਂ

25 ਸਤੰਬਰ 2026
I tested this plugin quite deeply for a professional audio workflow with large WAV files, multiple uploads, artwork, PayPal and WooCommerce HPOS. During testing I found a few issues, and the developer was incredibly responsive: every report was investigated carefully and followed by fast updates that actually fixed the problems. The plugin now works very well for my workflow, including multiple audio files, multiple artwork files, dark mode, admin audio players and proper file cleanup when orders are permanently deleted. Excellent support, very good communication and a developer who really listens to feedback. Highly recommended.
23 ਸਤੰਬਰ 2026
It is truly the only one I have found so far that meets exactly what we need, without missing anything. It is complete, functional, and does exactly what we want it to do. As for the support, I am absolutely satisfied and genuinely impressed. Without a doubt, it is the best support I have experienced so far — fast, helpful, and always willing to assist. Overall, I am extremely happy with both the plugin and the support provided. I highly recommend it!
23 ਜੁਲਾਈ 2026
I needed a reliable upload solution and this plugin delivered. The interface is intuitive for both the admin and the customer. It handles multiple file formats and big files with zero issues. It is definitely worth every star!
21 ਜੁਲਾਈ 2026
Setting up the Upload Files plugin took only a few minutes. The backend configurator is very intuitive, and it was easy to assign mandatory upload rules to specific products. Even on the free tier, you get key options. It works reliably without bloating the website or causing server timeout errors. If you need a bulletproof file uploader for your WooCommerce setup, this is a fantastic choice
21 ਜੁਲਾਈ 2026 5 replies
Since Two Years the uploader is not attaching the files to the orders in the backend… since they moved to wordpress its even worse… nothing is uploading…
16 ਜੁਲਾਈ 2026
This plugin has been an important part of our WooCommerce store for many years, and I believe it is still the best file upload plugin available. It is easy to configure and offers good flexibility for customizing it to your site. We have it set up to upload graphic files at checkout (on the cart page), and customers find the interface easy to use. The few times I have had to reach out to support, the developer has been incredibly helpful and quick to resolve any issues.
Read all 9 reviews

ਯੋਗਦਾਨੀ ਤੇ ਵਿਕਾਸਕਾਰ

“Vanquish Upload Files for WooCommerce” is open source software. The following people have contributed to this plugin.

ਯੋਗਦਾਨੀ

“Vanquish Upload Files for WooCommerce” ਦਾ ਆਪਣੀ ਭਾਸ਼ਾ ਵਿੱਚ ਅਨੁਵਾਦ ਕਰੋ।

ਵਿਕਾਸ ਕਾਰਜ ਵਿੱਚ ਰੁਚੀ ਰੱਖਦੇ ਹੋ?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.

ਤਬਦੀਲੀ-ਚਿੱਠਾ

1.6.2

  • Improvement (Premium): the libraries bundled for Dropbox, Amazon S3 and Google Drive now live under the plugin’s own namespace. Many plugins ship the same HTTP library (Guzzle) in their own version, and until now whichever copy loaded first was used by everyone – which could break cloud uploads, or another plugin, depending on the order plugins were loaded in. Each copy is now private, so neither can replace the other. The libraries are also updated to current versions of their HTTP components, which removes known security advisories from them.
  • Fix: the summary box on the Cart and Checkout pages could list the files of a product that had already been removed from the cart, and wrote two PHP warnings to the log every time it was shown.

1.6.1

  • Fix: on themes with their own cart template, the cart page could stop with a critical error on PHP 8 (“Cannot access offset of type string on string” in Cart.php). Some cart templates hand different data to the hook the plugin uses to show the uploads under each product; the plugin now finds the cart item by itself, and leaves that row alone instead of failing when it cannot. Reported by a customer.
  • Fix (Premium): with Dropbox storage, PHP versions from 7.4 to 8.1 stopped with “Composer detected issues in your platform: Your Composer dependencies require a PHP version >= 8.2.0”. The Dropbox library bundled with the plugin had been built for PHP 8.2; it is now built for PHP 7.4, the plugin’s minimum, like the Google Drive and Amazon S3 ones, and on current versions of its dependencies. Reported by a customer.
  • For sites using WPML: the upload field texts, translated in the plugin’s own Translations tab since 1.3.17, are now removed from WPML String Translation, where they had been kept only as a safety copy. Before removing them the plugin copies over once more whatever String Translation still holds that the Translations tab does not have, and it never replaces a text written in the Translations tab. It happens once, the first time an administrator opens an admin page after updating.
  • Fix: for sites using WPML, two kinds of translation had not been carried over to the Translations tab in 1.3.17 and are now recovered by the step above: the label of the upload field’s text field, and every text of languages whose WPML code is longer than two letters, such as Brazilian Portuguese (pt-br). The label’s translation had never been shown on the site at all.
  • Removed the “Show warning alert on Upload files configurator page” option, which no longer had any effect.
  • Minor wording improvements in the upload field configurator.

1.6.0

  • New: on the Order details and Thank you pages, the upload fields of each product can now be shown in a separate area instead of inside the order items table, as was already possible on the Cart and Checkout pages. Turn on “Display the upload fields in a separate area” under Options – Fields positioning – Order details / Thank you page. On themes that leave little room to the product column of that table, the upload fields no longer have to squeeze into it, and the order receipt is no longer interrupted by them. Off by default, so nothing changes until you choose. Requested by a customer.
  • New: the upload area of the Order details and Thank you pages can be placed after the customer details, i.e. after the billing and shipping addresses at the very end of the order receipt.
  • The Fields positioning options are now grouped by page – Product page, Cart, Checkout, Order details / Thank you page – and each position setting says what it places: the order upload fields always, the product upload fields when they are shown in a separate area.

1.5.2

  • Fix: deleting an order permanently now deletes its uploaded files as well. On stores using WooCommerce’s High-Performance Order Storage an order is no longer a WordPress post, so the clean-up never ran and the files stayed on the server – with audio files that can add up to gigabytes. Moving an order to the Trash still keeps its files, so that it can be restored. Reported by a customer.
  • When uploads are deleted – from the order list, the order screen, the Cleaner or by deleting the order – the folders they leave empty are now removed straight away, instead of waiting for the hourly clean-up.
  • The Debug log now records each file deleted, and says so when a file could not be deleted and is still on disk.
  • Fix: in the order screen, long file names no longer run over the image thumbnails beside them and the Quantity line below, and the audio player in the Uploaded files box no longer spills out of it. Reported by a customer.
  • The Uploaded files box in the order screen now uses the same WordPress admin blue as the rest of the plugin’s screens: its file names, links and buttons had stayed purple.

1.5.1

  • Fix: when an upload starts, the page now scrolls to its progress bar if the bar is out of sight. The bar sits at the top of the upload field, so with several files already listed under it an upload started from the bottom of the field ran far above the part of the page being looked at, with no sign that anything was happening. When the bar is already on screen the page does not move. Reported by a customer.

1.5.0

  • New: a light or dark colour scheme for the upload boxes, under Options – Style (General). The boxes around uploaded files, the list of selected files and the totals have a background of their own; on a site with a dark theme, choose Dark and they blend in with the page instead of standing out as light panels. The audio player and the quantity field inside them follow the scheme too. Light is the default, so nothing changes until you choose. Requested by a customer.
  • Audio and video files in the list of uploaded files now have a box as wide as the list. At the width of an image thumbnail the audio player was so compressed that its seek bar was a few pixels long, too short to move to another point of the track, and long file names wrapped over several lines. Images keep their grid of thumbnails. Reported by a customer.

1.4.1

  • Fix: on a dark theme, the file names in the upload boxes were almost invisible – light text on a light box. Those boxes have a light background of their own but took the text colour from the theme; they now set it too, as do the totals box and the quantity field. Nothing changes on light themes. Reported by a customer.
  • The button under the list of files a customer has just selected now reads “Clear selection” instead of “Delete uploaded file(s)”: it only empties the selection, and nothing has been uploaded yet at that point. It has its own entry in the Texts menu. If you had changed the old text, give this one your wording too.
  • Improved (Premium): with multiple files per field, the “Upload selected files” button above the list is now shown only when the list is too long for the one below it to be on screen at the same time. On a short list the two looked like the same interface appearing twice.

1.4.0

  • Fix: files uploaded on the product page could be deleted before the customer had bought anything, when a payment button sits on that page – WooCommerce PayPal Payments is the one it was found with. To show the right price, such a button puts the product in a cart and takes it out again every time the product form changes, and the plugin took that for the customer removing the product from their cart: it deleted the uploads, files included. An audio file stopped playing after a second, an image could no longer be downloaded, and the order arrived with nothing attached. Removing a product from the cart still deletes its uploads, exactly as before. Reported by a customer.
  • Fix: an order could end up without its files when it was paid through a button on the product page, or when a theme or page builder had replaced the Thank You page. Both association methods wait for one WooCommerce event each, and those flows skip them. The files are now also attached when the customer reaches the Thank You page, before the page itself is drawn, whatever it then shows – and only when the order has no files yet.
  • The Debug log now also records when uploads are deleted because their product left the cart, and no longer reports a failure when a Thank You page is simply reloaded after the files were attached.

Older versions: see the full changelog at https://plugins.svn.wordpress.org/vanquish-upload-files-for-woocommerce/trunk/changelog.txt