Blog

Digital products in WooCommerce: preparing file delivery

GazduireOnline.ro author
Posted by
GazduireOnline.ro PR
Digital products in WooCommerce: preparing file delivery

A PDF guide, a template or a collection of working files needs no packaging, but it still needs a reliable delivery process. In WooCommerce, the customer experience depends on product settings, when download permission is granted and how files are served. Before selling digital products, decide how access should work and check the complete journey with a test order.

1. Virtual and downloadable products are different settings

In WooCommerce, virtual means that a product does not require physical shipping. This could be a consultation, a service or an online activity. The setting removes shipping requirements for that product, but it does not automatically attach a downloadable file.

A downloadable product provides files through the shop’s download system. Enabling this option lets you add files and configure access limits. These characteristics are independent: marking a product as downloadable does not automatically make it virtual.

  • For a PDF guide delivered entirely online, you would normally select both virtual and downloadable.
  • For a consultation with no accompanying files, the virtual option may be sufficient.
  • A printed manual with supporting digital files can be downloadable while still requiring physical shipping.

Check mixed baskets too. If someone buys a digital template alongside a physical item, the order may still require a delivery address and a shipping method.

2. Prepare your files and choose a delivery method

Add the customer-facing files to the product and give each download a clear name, such as “PDF guide” or “Editable templates”, rather than an obscure technical filename. Check that archives extract correctly, and include instructions if the materials require a particular application.

WooCommerce supports several file delivery methods. The right choice also depends on your server configuration:

  • Force downloads: files are served through PHP, with WooCommerce checking download permission. Execution limits and available resources can matter when serving large files.
  • X-Accel-Redirect/X-Sendfile: after authorisation, the web server handles the transfer. This requires appropriate server support and configuration.
  • Redirect only: the customer is redirected to the file’s address. That address can become visible and be shared, so this method does not provide the same protection against direct access.

Do not assume that every hosting environment supports every method. When preparing a shop on WordPress hosting, check compatibility with your chosen method, expected file sizes and any relevant transfer restrictions.

If your installation includes approved download directories, configure them for the locations you use. Approving a directory controls which file sources WooCommerce accepts; it does not replace protection against direct access to those files.

3. Decide when and where customers receive access

Attaching a file is only part of the delivery process. Check the setting that grants access after payment and how your payment provider updates order status. Depending on the configuration and order status, downloads may become available before you manually complete an order.

For payment methods that require later confirmation, placing an order is not the same as receiving payment. Test confirmed payments, pending payments and failed payments separately.

Customer accounts or guest checkout?

WooCommerce can display download links on the order confirmation page, in relevant order emails and, for customers with accounts, in the account’s downloads section. Whether those links appear depends on order status, permissions and shop settings.

If you require customers to log in before downloading, make sure your checkout and account creation settings support that requirement. Allowing guest purchases and then requiring a login can block access or leave customers confused.

Explain on the product page what customers receive, which formats are included and where they will find their downloads. Mention any required software before purchase, rather than leaving customers to discover it after payment.

If you sell to consumers in Romania, also bear in mind Government Emergency Ordinance (OUG) 34/2014: customers normally have a 14-day right of withdrawal. For digital content delivered online, that right is lost only if the download starts with the customer's prior express consent, after they have acknowledged that they lose the right of withdrawal, and you send them confirmation of the contract. Add a separate checkbox for this consent at checkout, keep a record of it and send the order confirmation by e-mail.

4. Set download limits and access expiry

Download limits and download expiry serve different purposes. A download limit controls how many downloads are permitted, while expiry restricts how long a download permission remains usable. Setting a numerical limit does not automatically create an expiry date.

In a standard configuration, leaving these fields blank allows unlimited downloads and access without expiry respectively. Check the field descriptions in your installed version, along with any extensions that might change this behaviour.

  • Choose a download limit that allows for multiple devices and possible transfer retries.
  • Explain the access period before payment, not only in the confirmation email.
  • Check the actual expiry date recorded against the order’s download permission; do not assume the period starts with the first download.
  • Decide how you will handle legitimate requests to restore access or allow additional downloads.

An expired link does not remove a copy already saved by the customer. Likewise, access without expiry does not automatically mean that future updates are included. Describe your policy on new versions separately.

5. Check protection against direct file access

A WooCommerce download link is not the same as the file’s underlying address. The shop can check permission when someone uses its download link, but if the original file is publicly accessible, anyone who knows its address may be able to bypass that process.

In particular, do not assume that a document uploaded to the WordPress media library is protected. Check where it is stored and which server rules apply. The configuration can differ between Apache, Nginx and external storage services.

  1. Copy the underlying address of a test file, not just the order’s WooCommerce download link.
  2. Open that address in a private browser window without logging in or using the buyer’s session.
  3. If the file downloads directly, review the delivery method and restrictions on its storage location.
  4. Test the WooCommerce download link separately with a valid permission and with an expired or exhausted permission.

For external storage, entering a public file address does not make the resource private. You may need a compatible integration and temporary signed addresses. None of these measures prevents a customer from redistributing a file they have already downloaded.

6. Place a test order before publishing

Follow the complete journey as an ordinary customer, including on a phone. Use your payment provider’s test environment where available, and check the following:

  • A digital-only product does not request shipping.
  • Access becomes available at the appropriate point, according to payment and order settings.
  • The email arrives and its download links are clear and usable.
  • Files download completely and open correctly.
  • Download limits and expiry behave as configured.
  • Account holders can find their materials in the appropriate account section.
  • Replacing a file is checked against existing orders as well as new purchases.

If you distribute large archives or expect many simultaneous downloads, discuss resource and transfer requirements before choosing a cloud hosting configuration. For questions about hosting compatibility with your proposed delivery process, use the contact page.

In practice: prepare the product, define access rules and test file delivery separately from protection of the original file. Publish the offer once a test order confirms that the customer journey matches the conditions you have described.

Ready to start your website?

Check whether the domain you want is free, or find out in 10 seconds which hosting plan fits you.

RELATED POSTS

Here are more articles you may find useful. We publish relevant and practical information for our readers.

SUBSCRIBE TO OUR NEWSLETTER

Join our newsletter and marketing communications. We’ll send you news and offers.

Newsletter subscription illustration