How to make OroCommerce work like e-commerce Marketplace?

OroCommerce is a new kid in the block that is changing both B2C & B2B e-commerce with its amazing features.

OroCommerce is built to work for One Seller & multiple buyers’ pattern.

Hum…. that’s not what marketplace is. The marketplace is about multiple seller & multiple buyers

O! Ya… you are right.

Don’t let that thought disappoint you a lot.

Good news is that like Magneto we can customize OroCommerce to work as a marketplace.

Of course, there is no readymade plugin available yet, however, with some development effort this is easily achievable.

In fact, based on my past experience it’s worth taking that risk than developing a marketplace from scratch.

Also, I have figured out that you don’t need to go with enterprise edition to do all this. The community edition of OroCommerce is just enough.

So let’s dive in.

I will show you how OroCommerce can be converted into Marketplace without going too technical.

Ya… I don’t want this article to be developer focus. Instead, give a good idea about the possibility at 10 feet view.

Let’s start use case by use case

On-Boarding Sellers On To Marketplace

Yes, let’s start with getting the key players into the system.

That usually starts with the registration screen.

In OroCommerce you already have a registration screen for Buyer, but nothing for the seller. That’s the first task to be done.

This registration screen has to create users & a seller company in the database.

Then you have a mechanism to onboard the Seller – technically at least.

You can use the Login Screen to allow the seller to login into the system. Your sellers can edit their company profile page after login.

Moving ahead. Will cover other activities of seller further below.

Getting The Buyer On To Marketplace

Ya… Let’s get another key player into the system.

All you have to do here is have some drinks – hot or cold that’s up to you.

Because you have to do to nothing to achieve this. OroCommerce has everything pre-build into the system.

Both Buyer registration, Email ID confirmation, Buyer Login, Forgot password everything is built in.

Inviting Admin Into The System

If you are thinking what’s in for admin. How do we accommodate him?

Well, admin login & admin panel is already built into OroCommerce. You need not do anything about it.

All you have to do is create a user account for him with appropriate permissions & send him an invitation.

Here you go… He is also in now.

Smile, please. You have got all the key players into the system.

In fact, it’s time to celebrate. The next meaningful milestone is far away from here. Energize yourself.


Getting Products Into The System

The missing piece of a puzzle in the e-commerce for now is the products.

Keep good faith in OroCommerce – it won’t disappoint you.

OroCommerce already has Product Management module in place.  By setting up right permission you can allow seller himself to upload his products.

Of course, product approval mechanism has to be built. Plus product setup screens are quite complicated.

The good part is OroCommerce already have an internal status like enable & disable for products. You can add a few more like approved, rejected.

Maintaining Product Price Per Seller In Marketplace

There are a lot of good parts in OroCommerce that handhold you in all scenarios

OroCommerce has a price list management module. This allows you to maintain the price for multiple products per buyer.

Yep… you thought is right. You just need to make it work for per seller.

Ha… It’s easier to say than done.

Because the price is a core part of the equation. It affects all the modules starting from search.

Hence we need to tweak a few price extractor mechanism & search indexing mechanisms.

This is a good amount of efforts. You see this pain is worth it by end of this article.

Setting Up the Buying Process

Well… Thanks for reading so long. Now you have all the key players plus product with price is in place.

Up next all you have to build is the buying process.

In OroCommerce, you have 5 different flows in the buying process.

  • From Shopping List to Checkout to Order
  • From Shopping List to Request for Quote to Seller Quote to Checkout to Order
  • From Quick Order Form to Request for Quote to Seller Quote to Checkout to Order
  • From Quick Order Form to Checkout to Order
  • From Request for Quote to Seller Quote to Checkout to Order

Maybe now, it‘s this going above your head.

Don’t worry. Will explain this further

Getting Checkout To Multiple Order

Be it any flow all of them end up in Checkout Screen & finishes up with Order.

OroCommerce is currently designed to generate one order after successful completion of checkout.

This is where you need to twist the OroCommerce to generate separate Order per seller based on the product in line items.

This process can be done is background as well.

It’s simple. Every time you have a successful checkout you can place a process in the queue. This process can analyse the checkout details & run the algorithm to place multiple orders.


Single Request To Request Per Seller

Yet, there is another place you need to twist the logic in OroCommerce to make the system work like a marketplace.

Yep… It’s in Request for Quote part.

OroCommerce is designed to send one request after submitting the form.

Here you need to make it send a request per seller based on the product in the line items.

Again, this process can be done is background as well.

Every time you have a successful request for quote form submission you can place a process in the queue. This process can analyse the request & run the algorithm to place multiple child requests. Basically one request per seller involved.

Quote to Checkout

This part of the buying process doesn’t need any modifications.

That’s basically because every seller will get his own request & he will send his own individual quote to the buyer.

From there, the buyer can open those individual quotes & move to the checkout process

Now again after successful checkout, the background process will wake up to do the needful.

That’s it… You have got all the buying process covered.

Smile again. Celebrate if possible.

Final Question: Is OroCommerce is worth for this pain?

You know the answer.

Of Course it’ YES.

However, let’s explore few more strong points before going thru the pain

  • Inventory management is already in place. Of course, again you need to tweak to work per seller
  • Tire based pricing is in place
  • RFQ & quotes aren’t a core part of Magneto or other any e-commerce solutions. In OroCommerce it is.
  • OroCommerce was built on general purpose platform Called OroPlatform. Which means it gives a lot of foundation for something out of the box customizations

That’s my take on OroCommerce.

What do you think? Leave comments below.