Most any eCommerce platform can make it simple to sell a downloadable file to your customers, but what if that file is part of a service? For example, what if your customers purchase a custom logo design or voiceover work for a video?
You won’t be able to provide the file link at the time of purchase, and will instead provide it at a later time after the order is placed. Once the file is removed from the product and is instead tied to the order, it becomes very difficult to add and manage files to share with your customers.
We tried to tackle this concept a bit in a previous post on sending download links to customers after purchase, but this requires the use of a customer-facing order note, which isn’t available in most eCommerce plugins, and requires you to just drop a plan link to an email.
You can still use a customer order note to inform the customer that the newest proof or file is ready, but you can have a bit more finesse over managing the files you share with the customer. Let’s take a look at a slightly more advanced way sell custom files your customers.
We’re going to focus on WooCommerce in this tutorial because it’s very simple to add custom fields to an order, display them to the customer, and notify the customer of changes. We’ll also need another free plugin to help us manage our customers’ files: Download Monitor.
If you don’t use Download Monitor, the only real file management for customers exists as part of a product. If you want to add downloadable files to an order, you’d have to create a unique (private) product for every custom job you do, then add that to the “Download Permissions” for the order. This gets to be hard to manage very quickly.
Download Monitor is going to add a layer of file management that will help us restrict downloads, manage file versions, and create download links without requiring the addition of a new WooCommerce product for every customer. It doesn’t tie into WooCommerce by default, but we can use an order custom field to do this for us.
Step 1: create your WooCommerce product(s) for your custom digital service. We’ll make this a virtual product that will let us collect payment from our customer and create an order, but we won’t need to tie any downloadable files to this product. We’ll be adding them to Download Monitor instead later.
Step 2: Configure Download Monitor and create a new Download for every custom job. This has the benefit of making downloads simple to manage in your site while separating them from your products.
First, I’m going to adjust my download template to the “Version list” — I want to show this in the “View Order” part of the account section. You can adjust other settings as desired here.
Second, I’ll create a download for this order. For every revision I make, I can add a new file as an updated version. A version can also contain multiple files, which is handy if you’ll have several components of a version to share, like both horizontal and vertical versions of the logo.
Versions are very helpful if you’ll need some back and forth with your customer, as they can access different versions as part of the same download.
The great thing about Download Monitor is that you can also restrict downloads to logged in users. This means that the regular download link will not work for a guest user, and will only work for a logged in customer on your site.
If a non-logged-in user tries to use a download link that’s been shared with them, they’ll be redirected to the “No access” page (you can adjust the message in the settings).
All addition of your files and updates will take place on the download. This way, you can manage files and revisions in a dedicated place, and they’ll always keep the same download ID, so you won’t need to constantly update your order.
Take note of your download ID, and head over to your customer’s order.
Here’s why I like using Download Monitor for selling custom files: all I have to do tie my download to the order is add one custom field. This lets me share the latest version or all versions, I can share multiple files as part of a single version easily, and I can limit downloads to logged in users.
In the order “Custom Fields” box, add a new custom field titled
custom_file (you’ll have to click “Enter New” the first time you do this). For the order, enter the ID of your download.
This will tie the order to your download, and now we’ll add a couple small code snippets to make these accessible to your customers.
First, let’s add an order action for customers. When a customer sees the “Recent Orders” list in the account section, let’s add an action button (only if the order is paid for) to download the most recent version of the file(s). You can add this where you keep your custom code.
(If you don’t want the first check for paid orders, feel free to remove it!)
This code will add an action button to my orders list only if the order is paid for, and if I’ve added the
custom_file field to the order.
Now customers can download the most recent version of my file(s) with one click.
We may want to show all revisions, so we can also add the files to the “View Order” screen. If a customer clicks the “View” action, let’s show a list of all versions to the customer.
We can do so with a bit of code to add a “Custom Files” section to the account.
This will add a list of all available versions for the customer to access.
Now you can manage files with a dedicated system, version those files, add multiple files in a version for download, and restrict access to those files. They can be tied to your WooCommerce orders with one field, making it easier for you to manage files and for your customers to access them from the account.
The one thing this won’t do is notify customers. This is where the customer-facing order note still comes in handy. However, this can serve purely as a notification now, and no longer as both notification and file management. You can add an order note each time a new revision is made to the associated download, and customers can quickly and easily get all information in their accounts.
If you want fine-grained control over download access, there are also premium extensions available for Download Monitor that can help with this.
For example, the Advanced Access Manager plugin ($39) can let you restrict your downloads to only allow a certain number of downloads, or restrict them to a specific users (not just anyone who’s logged in). This lets you take your file management and restriction further than you can with order notes.
Selling custom files with WooCommerce (or any eCommerce plugin!) is no easy feat since downloadable files are always attached to products rather than orders. However, using Download Monitor gives you a layer of file management for multiple files and revisions, while WooCommerce order custom fields allow us to tie an order to a download fairly simply.
Download Monitor is free, so you can give it a try yourself to manage custom files for the services you offer on your WooCommerce site.