Article from Barn2.com
When you think of a WordPress e-commerce plugin such as WooCommerce or Easy Digital Downloads, you probably imagine selling physical or digital products. Most people don’t realize that they’re also perfect for selling services online.
In this ultimate guide to selling service products, I’m going to teach you how to sell services using a variety of plugins. We’ll look at how to keep it simple by creating a service order form without online payments. At the other end of the scale, we’ll learn how to sell services using basic e-commerce features with either WooCommerce or Easy Digital Downloads.
You’ll discover how to sell services for a fixed one-off price, by the hour or day, or sell recurring services with ongoing subscription payments. Along the way, I’ll provide useful tips on how you can upsell and sell more services to each customer.
Let’s get started!
What does it mean to sell services online with WordPress?
A service is defined as “The action of helping or doing work for someone”. This means that services are work that you provide manually for a person or organization. Selling services differs from selling products because you provide them directly to each customer. This may be face-to-face in person, or online. The key point is that you (or your employees/contractors) will be personally involved in providing services. In other words, you’ll be service providers. A service cannot be fully automated, because if this happens then it becomes a product instead!
With this in mind, you might be wondering how to sell services online using WordPress e-commerce plugins. After all, a service is carried out manually and not online!
The answer is that you can sell services on a WordPress website by separating the sales and provision of the service. Services can be sold online in a similar way to products. The difference is that once a customer has ordered a service online, you will carry out work for them manually instead of posting them a product. So you sell the service online, and carry it out in real life.
How it works
First, the customer visits your WordPress website and views a list of servicesThis might be a simple list of one or more services, or you might provide variation options. You might sell one-off services for a fixed price, or charge by the hour. Perhaps you’ll generate recurring revenue by selling subscriptions to your services? You might have a dedicated page for ordering service, or you might list the services in an e-commerce table directly on the pages describing your services.
- Second, the customer orders the service onlineThe exact method depends on whether you’re selling services with e-commerce, or taking payment offline:
- Non e-commerce option – The customer clicks on the service they require and completes an online form. The form will contain their contact information and anything else you want to collect. When they submit the form, you receive an email with their information.
- E-commerce option – The customer chooses any options and adds the product to the cart. They then view the cart and checkout, including paying online with credit card/debit card or PayPal checkout. The customer receives a ‘Thank you for your order’ email, and you receive an email with the order information. You can use this option with either WooCommerce or Easy Digital Downloads, including with the option for extensions such as selling time-based bookings – I’ll show you how to do all of these later.
- Finally, you contact the customer to arrange to provide the serviceThis is done outside of your WordPress website, so it will fit nicely into your usual working processes.
Do I need an e-commerce plugin to sell services in WordPress?
As you can see, you can use WordPress for selling services with or without an e-commerce plugin or e-commerce platform. So the question is, which option is best?
If you want to keep it really simple, then you might want to sell services in WordPress but avoid the e-commerce side of things. This is easier to set up. However, you’d be missing out on many advantages of using e-commerce to sell services online.
Benefits of e-commerce for service products
- Online payment for servicesBy using a WordPress e-commerce plugin such as Easy Digital Downloads or WooCommerce, you can sell services and take payment online. There’s a choice of payment gateways such as PayPal and Stripe. This saves you time compared to collecting payment offline and chasing invoices. It’s also better for your service business’ cash flow because customers pay upfront, before you provide the service.
- Display services more effectivelyWhen we get to the e-commerce section of this tutorial, I’ll show you how to list services in a searchable pricing table with filters, buy buttons and extra information. This is vital if you have more than a couple of services.
- Easier to upsellWordPress e-commerce plugins come with options to sell more services through up-selling and cross-selling. This can involve advertising one service on the sales page for another service. Or it can involve adding optional extras to encourage each customer to buy more. Either way, it’s easier to do this if you’re selling services with WooCommerce or Easy Digital Downloads.
- Built-in recording and invoicingWith a simple service order form that doesn’t use e-commerce, your sales aren’t recorded anywhere. You have to maintain manual records about the services provided. In contrast, an e-commerce plugin keeps records of all your sales and sends invoices or payment receipts. This saves you admin time. To save even more time, there are even WooCommerce and Easy Digital Downloads extensions to automatically send data to accounting software such as Xero and QuickBooks.
- ReportingE-commerce plugins come with built-in analytics and reporting. You can see statistics on who has bought your services and which are selling best, directly in the WordPress Dashboard. This helps you to make your service business more successful, making ongoing improvements over time.
- Offer appointments more efficientlyIf you’re selling bookable appointments, you can save time and money by selling these services through WordPress. The easy of use should also drive more sales for you.
Some examples: Service products you can sell online
Before we start with the setup instructions, I’ll share some examples of services that you can sell online. You can sell any type of service in WordPress, with or without e-commerce! For example:
- Professional services – architecture, conveyancing, document preparation and review, legal services, real estate advice, medical, will writing.
- Design services – brand identity work, graphic design, image editing, infographics, online interior design, stationery (business cards, brochures, flyers, leaflets, print layouts)
- Expert services – online business, copywriting, CV writing and resumes, career development, coaching, consulting, lifestyle, life coaching, love and relationships, marketing, photography, search engine optimization (SEO), social media, web analytics.
- Technical services – printing, programming and software development, sound mixing, technical support.
As well as selling your time, you can package services into specific ‘products’ which people can select and order from you, such as website technical support, online training sessions or coaching webinars. For example, we had one web design client who used his WordPress website to sell remote Skype advice sessions. If you’re a blogger or freelance writer, you might be interested in selling blogging services.
You can find more ideas for services to sell online on Google. For example, Amazon lets people sell professional services (such as assembling and installing products) through their site. Similarly, Fiverr is an online marketplace for freelance services. Whatever type of services you offer, keep reading to learn how to sell them online in WordPress.
Option 1 – How to sell services in WordPress without e-commerce
This is the easiest option discussed in this tutorial. It literally just takes a few minutes to set up.
With this method, you can sell services online but you will take payment outside of your website. For example, they might pay in cash, check or bank transfer. Alternatively, you might accept payment over the phone. Whichever offline payment method you choose, it takes place outside of your website. This means you don’t need to install a WordPress e-commerce plugin.
We’ll create an ‘Order a service’ form with the free Contact Form 7 plugin. This is probably the most popular free WordPress contact form, so it’s a good choice. If you prefer, you can sell services with offline payments using any other contact form plugin. Just bear in mind that the instructions below will be slightly different.
How to set it up
- Log into the WordPress admin for your website.
- Go to Plugins → Add New.
- Type ‘Contact Form 7’ into the search box.
- Install and activate the Contact Form 7 plugin from the search results page.
- Next, click the ‘Contact’ link that appears on the left of the WordPress admin.
- Click on the default form to edit it.
- Use the Contact Form 7 documentation to edit the default form fields as needed.
- Go to the ‘Mail’ tab and enter the email address that you want the service orders to be sent to and from. Change the Subject to something self-explanatory. Make sure you add all the mail-tags that are listed under the ‘Mail’ tab title. This will add the form fields to the email that you receive when someone orders a service.
- Finally, copy the shortcode from the blue section under the form title. It will look something like this:
- Now, go to Pages → Add New. You’re going to add your service order form to this page.
- Add a title to the page. This might be something like ‘Order Services Online’ or ‘Book Our Cleaning Services’, depending on what services you provide.
- Add any text to the main content area. Paste the shortcode that you copied in step 9 where you want the service order form to appear.
- Publish the page.
- View the page you just created. You’ll see a page on your WordPress website with a form that potential customers can use to order services online.
- Add the page to the website navigation menu, and link to it from any other pages where you describe your services.
When someone submits the form, you will receive an email with the information they provided. You can then contact them, arrange payment and carry out the service.
Option 2 – Selling services using WordPress e-commerce plugins
In Option 1, you learned how to sell services in WordPress without e-commerce or online payments. Next, we’ll learn how to create a more professional solution with e-commerce.
To give you a choice, I’ll show you how to sell services with either WooCommerce or Easy Digital Downloads. They’re both fantastic WordPress e-commerce plugins with excellent support:
WooCommerce is the world’s leading e-commerce plugin, powering over 44% of all online stores. While it does let you sell physical products, it also comes with virtual products that are perfect for selling WooCommerce services.
Easy Digital Downloads is popular for selling virtual and digital products in WordPress. It’s generally used to sell downloadable products such as WordPress plugins or ebooks. It’s also ideal for selling services in Easy Digital Downloads.
Even better, both WooCommerce and Easy Digital Downloads are free WordPress plugins. I’ll recommend some paid add-ons that will help you to sell services more effectively. However, the core e-commerce plugins are free of charge.
Choosing an e-commerce plugin for selling services online
Like I said, WooCommerce and Easy Digital Downloads are both good options for selling services in WordPress. So which one should you use?
A lot of service businesses sell using Easy Digital Downloads because it only deals with virtual products. This keeps it simple behind the scenes. WooCommerce comes with several shipping options (such as shipping rates, tax calculation, and shipping labels) many of which are on offer with WooCommerce Services plugin from Jetpack. However, the fact that WooCommerce can sell physical or virtual products isn’t a disadvantage. If you disable the shipping options then these will disappear anyway, which keeps things nice and simple in the WordPress admin.
There are a few reasons to choose WooCommerce over Easy Digital Downloads:
- If there’s any chance that you might sell physical products and need to charge postage one day, then you should definitely choose WooCommerce. This simply isn’t possible with Easy Digital Downloads.
- It’s also slightly easier to use WooCommerce to list service products in a table. I’ll show you how to do this with both plugins in the next sections. However, there’s one extra step with Easy Digital Downloads that happens automatically with WooCommerce.
- If you want to sell your time based on the number of hours or days, instead of charging a set price for each service, then WooCommerce is best.
If any of these points apply to you, then I’d recommend selling services in WooCommerce rather than EDD. Otherwise, they’re both excellent options and you should read about each one to choose which is best for selling your services.
Instructions for selling services using WooCommerce
1. First, set up WooCommerce
- In the WordPress admin, go to Plugins → Add New and search for ‘WooCommerce’.
- Install the main WooCommerce plugin and activate it.
- After you activate WooCommerce, you’ll be invited to run the Setup Wizard. Do this, and choose your store currency, tax settings, etc. When it asks “Will you be shipping products?”, do not tick this box. You’re selling services, so you won’t need the shipping settings.
- On the payment gateways page, enter the email address that you use to log into PayPal to accept PayPal payments for services. I recommend Stripe for credit card and debit card payments (you’ll need a Stripe.com account for this). Ideally, add your PayPal and Stripe account so that customers can choose how to pay for your services. If you want to give your customer base a ‘Pay Later’ option of paying manually offline too, choose the ‘Check’ payment option. You can then change the wording for this payment gateway as needed. (Tip – it doesn’t need to say ‘Check’ at all – this is just a handy way of creating an offline payment method in WooCommerce.)
- At the end of the Setup Wizard, click the button to Create Your First Product.
For more in-depth tutorials on setting up WooCommerce, check out these guides.
2. Add service products to WooCommerce
-
You’ll be taken to the Add Product screen. This is where you’ll add the first service to sell in WooCommerce.
- Add a product title and description, plus categories and tags as required. Also upload a product image if you like, although this isn’t essential for selling services with WooCommerce.
- Scroll down to the ‘Product Data’ section. Tick the ‘Virtual’ box and add a price for the service. (Note: Skip ahead for instructions on selling services by the hour or day, multiple options for each service, or ongoing service subscriptions.)
- Use the ‘Inventory’ tab to limit the number of each service that people can buy from you in WooCommerce. This is useful if you have limited capacity. There’s also a box that you can tick to prevent customers from buying more than one of each service.
- Click ‘Publish’.
- Go to Products → Add New and repeat these steps for each service that you want to sell in WooCommerce.
3. List WooCommerce service products on your WordPress website
Next, we need to display your service products on the front end of your website. This is essential so that people can view your services in WooCommerce and buy them online.
WooCommerce comes with some built-in layouts for displaying products. Unfortunately, these aren’t at all suitable for selling services. You don’t want your service website to look like a clothes shop!
Instead, you need to list your services in a professional-looking table layout. You can do this using the WooCommerce Product Table plugin. Once you’ve added your services as WooCommerce products, the Product Table plugin will automatically list them in a user-friendly table layout.
Services sell better in a WooCommerce table because this layout prioritizes information rather than images. (You can include a small thumbnail picture if you like.) If you have lots of services, it’s easier for customers to find the services they need via built-in filters and keyword search box. Customers can view prices, choose options and add services to the cart directly from this service pricing table layout. For more information (like testimonials), customers can simply click through to the single page.
The other benefit of listing services in a table is that you can insert the table anywhere on your website, without using a website builder.
For example, a lot of WordPress sites have a ‘Services’ pages containing text describing their services. It’s best to list the services for purchase directly on the Services page, instead of linking customers to a separate shop page. You can add an e-commerce table of service products directly within the content of your service pages, keeping everything in one place.
How to list services in a WooCommerce table layout
- Install the WooCommerce Product Table plugin on your WordPress website and activate it.
- Header over to WooCommerce → Settings → Products → Product tables.
- Paste your license key from the confirmation email.
- Read through all the product table options, and choose the ones that will present your services most effectively.
- Next, create a page where you want to list your services. Alternatively, edit an existing page on your website. For example, you might want to list the service options with prices and buy buttons directly on a page which already describes your services.
- Click the ‘Insert product table’ toolbar button to add the following shortcode to the page
[product_table]
. - This will list all your services on the page. If you’d rather list specific services only (e.g. based on their category or tag), then you can do this instead.
Your finished table of services might look something like this:
Nice!
4. Use product variations to provide a choice of services
In step 2, I told you how to create a simple service product with a fixed price and no options. WooCommerce also supports variable service products.
The instructions to create a service with variation options are similar to the ones in section 2, above. However, when you go to the Product Data section, use the Product Type dropdown to select ‘Variable Product’. You then need to create attributes on the Attributes tab, and select these to create variations on the Variations tab. For each variation, you need to add a price and tick the ‘Virtual’ box to use it to sell services.
In this example, I created a ‘Legal Services’ product with a ‘Service Type’ attribute. I used this to create variations for ‘Conveyancing’, ‘Wills’ and ‘Divorce Services’, each with their own service cost.

If you select variation dropdowns on the WooCommerce Product Table plugin settings page, then it might look like this:
And if you selected the separate variations option instead, then it might look something like this. (I’ve also used different columns in this example):

5. Use WooCommerce subscriptions to sell regular ongoing services
So far, we’ve talked about how to sell services in WooCommerce with a one-off price for each service. This may fit your business model, but most small business owners know that recurring revenue is the holy grail. With this in mind, you might want to sell ongoing subscription services via your WordPress website.
Fortunately, you can do this with the official WooCommerce Subscriptions extension. This will set up an ongoing payment plan or subscription for each service. The customer will be billed automatically at the correct intervals, using their chosen payment gateway.
WooCommerce Product Table with Subscription Service Products
First create a subscription on the plugin settings page. Next, instead of creating a Simple Product, you should select ‘Subscription Product’ from the ‘Product Type’ dropdown. Set an ongoing cost for your service, for example an initial setup fee followed by a regular monthly payment.
Both PayPal and Stripe support recurring subscription payments. This is much better than sending invoices for manual payment each month. No more chasing overdue invoices – it all happens automatically via your WordPress website and WooCommerce!
See it in action on our pet sitting services demo page with subscription products!
Please note that WooCommerce Product Table doesn’t work with variable subscriptions. To use the plugins together, we recommend adding each subscription option as a separate product. Another option is to add the options as product add-ons instead of variations. The add-on options will appear in the add to cart column of the table of subscription services.
6. Use product add-ons to sell optional extras
Let’s say you’re selling website maintenance services. You might have created 3 service products: Weekly Maintenance, Fortnightly Maintenance, and Monthly Maintenance. But how can you sell more services to each customer?
The answer is the official WooCommerce Product Add-Ons extension. This handy plugin lets you add a range of optional extras to your service products in WooCommerce. These appear alongside the add to cart button, offering a powerful incentive for customers to order more from you.
In the following example, I used Product Add-Ons to add tick boxes for extra dog grooming service options. As well as ordering a basic dog grooming session, customers can tick boxes to add different types of doggy haircut. The dog grooming products are displayed using the WooCommerce Product Table plugin with Product Add-Ons and Subscriptions. As you can see, this is a great way to significantly increase revenue, from the same number of customers.

How to sell services by the hour or day
You’ve learned how to use WooCommerce to sell services for a fixed price. But what if you want to sell your time, rather than a specific service? Luckily, you can do that too.
To sell critical services based on the amount of time, the instructions are similar to the ones I provided above. You’ll just need to activate a few extra options on the WooCommerce Products Table settings page:
- Tick the ‘Quantity’ box to display a quantity picker in the add to cart column for each service.
- When you set your product table columns, use these instructions to customize the ‘Buy’ column heading. It needs to be clear that the service is priced by the hour or day.
For example, if your table of services contains columns for name, short description and add to cart column, then you need to list the columns like this: image,name,short-description,price:Price Per Hour,buy:Select Hours & Buy
Alternatively, if you’re not selling all your services by the hour, then you can just add the unit to the product name. Here’s an example of what this might look like:
Tip: Use quick view to provide more information
By now, you know how to list your services in a WooCommerce table layout. Maybe you want to show extra information about each service, but don’t want to send people to a separate page for each service. Maybe you have too many variations or add-on options to fit into the table view.
If this applies to you, then you can add the WooCommerce Quick View Pro plugin to show extra information and purchase options from a lightbox window:
Tip: Use bulk discounts to sell more services!
Lots of services providers offer discounts to reward customers for buying more services. You can do this by installing the WooCommerce Dynamic Pricing plugin. Set it up to give discounts for customers who buy more. Mention the discount in a prominent place on your website, or within any column in the table of services.
How to sell services in Easy Digital Downloads
Next, I’ll reveal how to use Easy Digital Downloads (EDD) for selling services on your WordPress website.
1. First, set up Easy Digital Downloads
- In the WordPress dashboard, head to Plugins → Add New. Type ‘Easy Digital Downloads’ into the search box.
- Install and activate the plugin.
- Navigate to Downloads → Settings and choose the settings that you’ll use to sell services with Easy Digital Downloads.
2. Add your services in Easy Digital Downloads
Now it’s time to start adding your services as EDD products:
- Go to Downloads → Add New.
- Add your EDD service product name and description. You can also add categories and tags, plus an image if this will help to promote the service.
- Add the service price.
- Click Publish.
- Repeat these steps for each service that you want to sell using Easy Digital Downloads.
3. Use product variations to provide a choice of services
Easy Digital Downloads also comes with a ‘Variable Pricing’ option. You’ll see this when you add the price for your service in EDD. If you want to offer different options for a particular service, tick this box and add all the options, each with their own price.
You can use this to provide quantity discounts to reward customers to buying more services, or for selling different service options at different prices.

4. List Easy Digital Downloads service products in WordPress
Next, we need to display your services for sale on the front end of your website.
Like other WordPress e-commerce plugins, the standard Easy Digital Downloads store layouts aren’t ideal for selling services. This isn’t surprising, because they’re mainly designed to sell digital products such as ebooks and WordPress plugins.
You can list services more effectively with the Posts Table Pro plugin. This dynamic WordPress table plugin lets you list all sorts of content from your website in a table view. It’s particularly popular for creating an Easy Digital Downloads product table.
Customers can view a list of services anywhere on your website, see the price and any other data you choose to display, select options, and add services to the cart. They can then checkout and pay for their services online with Easy Digital Downloads.
How to list services in an Easy Digital Downloads table
- Install the Posts Table Pro plugin on your WordPress website and activate it.
- Go to Settings → Posts Table Pro and activate your license key from the order confirmation email.
- Follow the instructions in this tutorial to list your EDD service products in a table. You can use Easy Digital Downloads to sell services via any page on your website. Just put the Posts Table Pro shortcode wherever you want to list the services.
Your finished table of Easy Digital Downloads service products might look similar to this:
Perfect!
5. Sell service subscriptions with Easy Digital Downloads
Finally, you can install the EDD Recurring Payments extension to take regular payments for services. This automates the payment for regular services, so you don’t need to worry about taking payment manually.
Selling Bookable Services with EDD Bookings
You can also use the EDD Bookings extension to sell services using Easy Digital Downloads. This means that a client can pay for a service for a specific period of time. This can apply to doctor’s appointments, yoga sessions, consultancies, hairdresser appointments and much more.
Once the extension is installed you can set up Services, each with their own set of criteria.
Every service will have its own name, description and image, all of which are used when the client is selecting a service from the booking form. A service will also have one or more session types. For example, a consultancy could be offered as a 30-minute session or a 60-minute session. They would each have their own price.
The availability of a service is when it will be available for booking. As an admin, you can set up various rules to determine the dates and times your clients will see as bookable on the calendar in the booking form.
To list your bookable EDD products on your website, follow the instructions in the previous section to list them with Posts Table Pro. Instead of having purchase buttons directly in the table, use the ‘Links’ option to allow customers to click through to the single download page for each service. From there, they can complete the booking form and purchase the service.
As the business owner, you will be able to monitor all your bookings from a list or calendar view. You may also create bookings manually from the back-end, which works great for bookings that are requested in-person, on the phone or via email.
If you want customers to book specific times, then combining Posts Table Pro with EDD Bookings is the perfect solution.
How to gather client information when you sell services
A big benefit of selling services online in WordPress is that you can collect extra information about customers. Getting them to enter the information on your website is easier than taking it over the phone or manual paperwork. It’s also more secure, because you have electronic proof that they provided the information. This is particularly important if you need customers to tick to agree to your service Terms and Conditions. In addition, it can help you minimize customer support tickets later down the line.
When you’re collecting information about customers, just make sure your website is GDPR compliant. WooCommerce and Easy Digital Downloads come with features to help you ensure GDPR compliance. If you’re selling services with a contact form plugin such as Contact Form 7, then you might need to add extra tick boxes to gain consent.
And, once you’ve made a sale, remember to ask new clients and customers to leave a testimonial!
Start selling services in WordPress!
Even though you carry out services manually, you can save time and get more customers by selling services in WordPress. Use the instructions above to let customers order services online and pay manually, or automate the sales process for your services using WooCommerce or Easy Digital Downloads. Once you’ve added your services to WordPress as e-commerce products, use either WooCommerce Product Table or Posts Table Pro to display them in a user-friendly layout.
This is the best way to attract customers and sell more services. To take things to the next level, you can set up an email marketing and digital marketing strategy to promote your services.
If you’ve used any of the methods in this tutorial to sell your own services, please let me know how you get on. I’d love to add some case studies to this article (which will include a link to your website!). Please add your comments below.