Posted on

WooCommerce: How to Build a Multi-Vendor Website (Marketplace)?

Building the next Amazon is everyone’s dream.

Allowing sellers to use your online platform to reach wider audiences without holding stock, investing in shipping and warehousing and – let’s be honest – with a few dollars budget… is actually possible in WooCommerce.

The WooCommerce Multi-Vendor/Marketplace scenarios are many – not a surprise. And sometimes, a plugin is all you need to build an Amazon-alike website. Not bad for a small investment – you can focus on the marketing while the WooCommerce plugin does the rest.

However, building a full website, no matter its project specifications, is never easy. Many WooCommerce and ecommerce entrepreneur underestimate how much work, caution, attention, patience and money are needed to complete an online platform. Nothing is free – if something looks doable with a $79 plugin you also need to consider the cost of time, outsourcing, marketing and third parties (such as picking a reliable hosting).

Anyway, today we’ll take a look at the 3 best plugins for turning a WooCommerce website into a multi-vendor marketplace, including a simple PHP snippet that might just be enough for you.

1. Free WooCommerce Workaround: Manual Multi-Vendor Snippets

WooCommerce allows you to do almost anything with a couple of PHP snippets. And if your vendors have no intention or need to have their own dashboard, website access, product uploading functionalities and automatic payments and commissions… you don’t really need a Multi-Vendor / Marketplace plugin!

You could simply add a product custom field called “Seller” or “Vendor”, display this on the single product page frontend, cart and checkout pages, thank you page and email receipts. Then, you could manually pay your vendors commission on a monthly basis from your bank account.

I just re-used one of my snippets (https://businessbloomer.com/woocommerce-display-rrp-msrp-manufacturer-price/) – here’s the adapted version:


/**
 * @snippet       Display Seller @ WooCommerce Single Product
 * @how-to        Watch tutorial @ https://businessbloomer.com/?p=19055
 * @sourcecode    https://businessbloomer.com/?p=20727
 * @author        Rodolfo Melogli
 * @testedwith    WooCommerce 3.3.3
 */
 
add_action( 'woocommerce_product_options_pricing', 'bbloomer_add_seller_to_products' );        
 
function bbloomer_add_seller_to_products() {  
	
	woocommerce_wp_text_input( array( 
	'id' => 'seller', 
	'class' => 'short', 
	'label' => __( 'Seller', 'woocommerce' )
	) 
	);      
	
}
 
add_action( 'save_post', 'bbloomer_save_seller' );
 
function bbloomer_save_seller( $product_id ) {
	
    if ( isset( $_POST['seller'] ) ) {
	    update_post_meta( $product_id, 'seller', $_POST['seller'] );
	}
	
}
 
add_action( 'woocommerce_single_product_summary', 'bbloomer_display_seller', 25 );
 
function bbloomer_display_seller() {
	
    global $product;
     
    if ( $seller = get_post_meta( $product->get_id(), 'seller', true ) ) {
        echo '
<div class="woocommerce_seller"><b>';
        _e( 'Seller: ', 'woocommerce' );
        echo '<span>' . $seller . '</span>';
        echo '</b></div>

';
    }
	
}

A bit of a workaround, but it works πŸ™‚ You could also place the vendor description in a custom WooCommerce product tab on the frontend. And also add some PHP calculations to count sales by vendor at the end of the month. If you’re a developer, you can really code this “manual” solution as you wish!

Here’s the final result:

Display “Seller” on the single product page

But if you’re not a developer, or if you need an automatic, optimized, WooCommerce Multi-Vendor / Marketplace solution, then look no further than an official plugin.

And to me, there are only 3 major pieces of software that do their job well: WooCommerce “Product Vendors”, YITH WooCommerce Multi Vendor and WC Vendors.

Of course, it’s difficult to say which one is the “best” – so let’s be honest, there is no “best”. Instead, there is a “more relevant to your project” plugin. Their prices are different, their coding is different, but all 3 come with great support and functionalities.

2. WooCommerce “Product Vendors” Plugin ($79/year)

The immediate disadvantage of the official WooCommerce plugin is that there is no free version available on WordPress.org. Unlike YITH and WC Vendors, you therefore have to rely on the 30-day money-back guarantee in order to test the product.

Product Vendors plugin documentationΒ is very detailedΒ – and because I don’t feel like copying everything from that page, I seriously advise you learn more on the official WooCommerce website.

However, if I had to give you my personal opinion, here are the best plugin features. First of all, you can define a per-product vendor commission (on top of the global one), so that you can agree different rates with different vendors.

The reporting is also good, with an overall view of vendor sales, commissions and earnings for each month.

Vendors can control their public profile and upload products themselves from the frontend, as well as receiving commission payments automatically.

Website (marketplace) owners can, on the other hand, approve/reject vendor applications, set up payouts schedule (instantly, monthly, etc.) and also force products to go into “pending” mode until they can publish them.

Here are a few screenshots (click on any image to open lightbox):

3. YITH WooCommerce Multi Vendor Plugin (€81/year)

As well as WC Vendors, YITH WooCommerce Multi Vendor Plugin follows a “freemium” model. The basic plugin is completely free of charge, while the premium comes with more features and support. this is a no-brainer if you wish to test out a plugin before buying.

Once again, no point in describing all the plugin features when they’re widely covered on YITH WooCommerce Multi Vendor plugin page. On the same page, you can find also the “Free vs Premium” tab, which describes the most important differences between the two pricing plans.

To introduce briefly this plugin and its features, let’s first remember that YITH support is highly qualified and – from what I’ve seen so far – very fast and happy to accommodate customization requests.

Second, the YITH WooCommerce Multi Vendor Plugin comes with a very interesting set of functionalities. The free plugin looks very similar to the WooCommerce “Product Vendors” Plugin we’ve seen above. On top of this, the premium version comes with more advanced reporting and PayPal payout settings.

On the frontend, you can manage/move almost anything, while on the backend vendors can create coupons, set products as featured, change their shop header and description and manage shipping zones and rates. In this case, it seems vendors have more options.

Here are a few screenshots (click on any image to open lightbox):

4. WC Vendors Plugin ($199/year)

WC Vendors is the most expensive product, and has also additional premium extensions that you might need to purchase in order to complete your project.

In this case, as well as for YITH, WC Vendors comes in a free version available on WordPress.org. It seems pretty similar, once again, to YITH and WooCommerce so you will need to do further research to see which one suits your project.

In the premium version, there is a nice Vendor Frontend Dashboard, vendor order and coupon management, shipping rates and also capabilities settings. All the features can be found on their official page.

There is also a small range of in-house and third-party extensions that work with the basic premium plugin: you can integrate WC Vendors with Stripe payouts, WooCommerce bookings and an auctions plugin.

Here are a few screenshots (click on any image to open lightbox):

Rodolfo Melogli

Author, WooCommerce expert, WordCamp speaker and Internet marketer, Rodolfo Melogli has worked as a WooCommerce freelancer since 2011. He helps entrepreneurs and developers overcome their WooCommerce nightmares :) Rodolfo is the organiser of WordCamp Dublin, the Dublin WooCommerce Meetup, the Dublin Ecommerce Meetup and the Dublin WordPress Meetup. He enjoys interacting with people, travelling and chasing tennis & soccer balls. Of course, he loves pizza too.

20 thoughts on “WooCommerce: How to Build a Multi-Vendor Website (Marketplace)?

  1. Hi,

    I’m using YITH Multi Vendor and may I know, do you know how to change “Vendor” to “Seller”? Also how to let Seller(Vendor) choose their own Payment gateway from WC Payment gateway.

    1. Hello there! Please ask YITH πŸ™‚

  2. Hi on any of these plugins, would you allow me to change the form field to set the product description according to my need, for example when vendor upload product I would like to set my own customised form field to describe the products. Is this possible? if then how I can make it possible? please could someone suggest, I would very much appreciate it as I am not a coding/wordpress guru, just need advice and understanding. Thank you

    1. Hello Shane – thanks so much for your comment! So, you want a “vendor” product description and also to show your own description?

  3. Hi Rodolfo,
    I am looking for a plugin where the entire store is divided for each vendor so that the products can only be displayed for only one vendor at a time(the one selected by customer).
    I am currently using Dokan Plugin as it has very good UI dashboard for vendors but doesnt provide this functionality.
    Can you suggest if there is a plugin that can do that or what sort of customisation needs to be done.

    Thanks
    Rahul

    1. Hey Rahul, thanks for your comment! Try ask this question to the pre-sales teams, they should be able to help πŸ™‚

  4. Hi Rodolfo,

    Great post! Had a few questions about your workaround snippet:

    β€’ What snippet is needed to display the “Seller” in an email when that specific product is ordered?
    β€’ What snippet is needed to display that custom product meta on the My Account Dashboard?
    β€’ Lastly, once the “Seller” details are visible on the Dashboard, what would be needed to make it editable on the frontend?

    1. Brian, thanks so much for your comment!

      You can display post_meta in an email by using (as long as you have access to $product):

      get_post_meta( $product->get_id(), 'seller', true );
      

      To display it in the My Account, maybe this visual hook guide might help: https://businessbloomer.com/woocommerce-visual-hook-guide-account-pages/

      Finally, in order to make it editable from the My Account frontend, that’s a little complex (yet doable). You would need to print an input within an HTML form and on click save post_meta to update the seller value.

      Hope this helps πŸ™‚

  5. Hi Rodolfo:

    Are you aware of any plugins that will allow for giveaways and gift cards on a multi-vendor WP site? I’d like each vendor to have the ability to set up giveaways of products (e-books) and for the main site (me) to give electronic gift cards. Thanks for any help you can provide!

    1. Not sure Robyn. Try ask both pre-sales teams πŸ™‚

  6. Thanks. Interesting article.

    I use YITH WooCommerce multi vendor plugin for my websites. It’s useful and easy to use plugin

    1. Good to know πŸ™‚ Thanks Sergio!

  7. Hi Rodolfo, I use the YITH multi-vendor global marketplace and the stripe.com gateway.
    I need to find a plugin solution to manage taxes and VAT from all the various customers (private and business), vendor types and all the locations. Any advice would be great. Thanks, Kevin.

    1. Hey Kevin, thanks for your comment! Not sure here as custom work might be required. I use https://wordpress.org/plugins/woocommerce-eu-vat-assistant/ if that can help πŸ™‚

  8. Hi Rodolfo,
    Any of these have build-in feature: the seller can pay for extra money for promotion (either like sponsored products) or like THIER product goes to the first page of offerings?
    In Switzerland we have just seen a 300 mio investment (siroop) fail. I was selling on the platform but the problem was I could only ‘upload’ my products and wait if something got sold. I could not stimulate my sales. (which would have meant also extra income for the platform)
    If the feature is not build-in, think such woud be possible?
    Thanks
    Mark

    1. Hey Mark, thanks so much for your comment! This is a very interesting one – marketplaces (or multi-vendor platforms) are where demand and offer meet. If there is too much demand, the website owner goal’s is to increase the offer by incentivizing vendors… if there is too much offer, then the manager needs to find more traffic for their vendors.

      The idea of “bumping up” the product to page 1 for example is certainly something that can be added to the marketplace. The best in this case it would be to ask the plugin developers as this is pretty specific πŸ™‚

  9. Also your thoughts on WC Marketplace would be helpful to have!

    1. Thanks for your comment Annette! Unfortunately I don’t know that product and don’t feel like saying my opinion on something I haven’t used πŸ™‚ Sorry!

  10. Hi Rodolfo, I think there’s another popular plugin that could have been included in this article: Dokan.

    1. Hey Marco, very good point! However, as a past user of Dokan, I didn’t have a good experience with their support team – this is why I didn’t include it in the list. Hopefully they have improved in the last 2 years πŸ™‚

Questions? Feedback? Support? Leave your Comment Now!
If you're writing code, please wrap it between: [php] code_here [/php]

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.