Over the last decade, businesses have shifted from a pipe business model to a platform model. In this new model, the company isn’t the sole generator of value; platforms enable participants to co-create value alongside other platform participants and exchange it among themselves. As a result, the retail industry has been disrupted by “online marketplaces”—e-commerce platforms that enable interactions between customers and producers. The benefits that marketplaces bring to businesses are numerous: lower investment requirements, faster scaling, and multiple options for monetization, for example.

In our eight years on the market at Steel Kiwi, we’ve gained technical and business expertise in building electronic marketplace software. In this article, we’ll share our firsthand knowledge of how to build an online marketplace. Specifically, we’ll talk about the first steps of developing a marketplace: selecting a marketplace type, a business model, software developers, a programming language, functionality, and the technology stack. We’ll even mention some technical challenges.

There are a lot of decisions to make before starting a marketplace business. Below, we provide step-by-step instructions so you can create a successful project and avoid costly mistakes.

Choose your marketplace type

At the very beginning, you should decide whether your marketplace will be centralized (managed by a single authority) or decentralized (platform participants connect and make transactions directly). Let’s break this down using some examples.

Uber controls nearly everything, including pricing, payments, transaction terms, customer support, vehicle locations, and driver verification. On the other hand, eBay directly controls only payments and customer support and decentralizes pricing, reviews, ratings, transaction terms, photos, and communication. Centralization provides a great user experience, as users don’t have to resolve issues on their own. Additionally, marketplace elements, content, design, and interactions always behave the same way, as they’re managed by a single entity; the user experience is thus consistent and logical. Decentralized marketplaces ensure great security, as any sensitive data is stored on a network that doesn’t pass through a central server. Decentralized apps guard against data intrusion.

Marketplaces enable users to interact with each other and exchange value. So before starting a marketplace business, ask yourself what value your users will exchange. Products, services, or social currency?


If you’ve decided to build an e-commerce marketplace, think over what product categories your platform will offer. You could sell electronics, clothing and accessories, home goods, food and beverages, jewelry, electrical appliances, health and beauty products, and more. Marketplaces often include more than one product category.


If you’re looking into how to build a marketplace like TaskRabbit or Fiverr, then you’re considering a service marketplace. These marketplaces match service providers (like tradespeople) with clients who want help with skilled repairs or odd jobs (like repairing a light fixture).

Social currency

People like to share virtual content such as videos, pictures, and blog posts. Medium enables users to share articles, YouTube lets people share videos, and Twitter lets users share content via tweets.

Find the right business model

When it comes to choosing a business model, ask yourself what role(s) platform participants will be able to play: Can a user be both a customer and a producer? Only one or the other (either a customer or producer)? Or will you exclusively target businesses with a B2B marketplace?

Hire online marketplace software developers

Once you’ve decided on your platform’s type and business model, it’s time to look for software engineers to help you decide on its technology stack and features, and make it a reality.

Although the number of software developers worldwide reached 23 million in 2018, finding the right company for your project can still be a challenge. Below, we’ve prepared some useful tips that can help you find and hire the right marketplace app development company.

  • Scan the market. Platforms such as Clutch, LinkedIn, AppFutura, IT-Suppliers, TheyMakeApps.com, CrunchBase, Behance, and Dribbble can help you with this.

  • Narrow your search by region. Choose a region that suits you best in terms of pricing, approach, and technical expertise.

  • Compare prices of different companies and choose a company (or several companies) that work best for you in terms of price and quality.

  • Browse portfolios to see marketplace solutions companies have already crafted.

  • Check out customer feedback to see a company’s performance on earlier projects.

  • Interview the team to check their technical expertise and see whether they’re excited about developing your product.

    Our advice: Software companies usually adhere to a project management approach that enables them to manage multiple projects at the same time. We advise you to look for a development team that adopts an agile methodology, in which projects are split into sprints and clients can monitor progress regularly and make corrections where necessary.

Select the right programming language

There are quite a lot of programming languages that can work well for building a marketplace app. The most popular are Java, PHP, Ruby, and Python.

All four of these languages have great communities and have been adopted by famous companies. Java has powerful tools for marketplace website development that have proved effective for debugging. In addition, Java (alongside PHP) has great performance, whereas Ruby is slower compared to Python, Java, and PHP.

At Steelkiwi, we use Python for marketplace development. Python comes with lots of great features by default that help you get your product to market fast. And since Python is one of the most popular languages among developers, there’s a large pool of talent. So finding and hiring a Python development company isn’t a big deal.

Decide on the functionality

Now it’s time to focus on the features for your marketplace. Your decision on functionality should be driven by your core value. What issues does your marketplace address and what features can solve them?

Each marketplace should include a set of basic features. Since the goal is to enable interactions among participants, you should include:

  • Profiles. These are essential for building and maintaining relationships among users. There are typically two user roles on a marketplace―producers and customers―and their profile interfaces can differ.
  • Search. Clear navigation helps users browse your marketplace. Customers should be able to filter search results and preview products and services.
  • Bookings. These are crucial for service marketplaces like on-demand home services marketplaces, mHealth booking apps, and hotel booking platforms. You can also offer bookings with calendar support.
  • Payments. Customers should be able to pay for their purchases right on your marketplace via debit card, credit card, and other payment options. Stripe, Braintree, and PayPal are great marketplace payment gateways.
  • Reviews and ratings. These build trust on a platform and help customers make informed buying decisions.
  • Notifications. These keep users updated about key activities, such as orders being processed and delivered.

Some platforms require specific features:

  • A “you might like” or “related items” feature helps businesses provide customized content to each platform user. Machine learning algorithms curate content, taking into account a customer’s previous actions such as comments, clicks, and likes.

  • A blog can help you attract and entertain users by providing meaningful content.

  • A wishlist allows users to save items that they’re likely to buy soon.

  • Live chat enables users to communicate in real time.

  • Live Order tracking lets users track their orders and get real-time order status updates, boosting confidence in your platform.

    Too much effort, time, and money will go to waste if your product doesn’t meet market demand. CB Insights states that the top reason why startups fail is no market need. It was the reason for failure in 42% of over one-hundred cases they considered. We suggest you start a marketplace business with an MVP, meaning the first version of your marketplace should include only essential features to test your business idea. Once you’ve confirmed the market demand for your app, you can go on expanding its functionality. On finding your market niche, take some advice from IndieHacker Alex Redfern.

Choose the technology stack

There are two ways of building an online marketplace: from scratch and using ready-made solutions. There are lots of factors that influence this decision. Below, we outline the core advantages and disadvantages of both approaches to help you find the best one for you.

Ready-made solutions

If time and money are an issue, you might want to go with a ready-made solution. There are quite a lot of choices on the market. Some of the most popular off-the-shelf software for creating online marketplaces are Sharetribe, Marketplacer, and Near Me. The table below compares their strengths and weaknesses, pricing, and success stories.

From scratch

If your business idea requires unique functionality, then you need to build your marketplace from scratch.

Advantages of building from scratch

  • You’re free to choose. You can first go with essentials and build an MVP. Later on, you can scale and add functionality at any time.
  • You can meet your unique needs. Your features, content, and design can be tailored specifically to your business needs.
  • You can grow your business over the long term, as your marketplace will be highly scalable and easy to maintain.
  • Your security can be monitored more closely. Custom web development allows you to pay more attention to possible security issues and mitigate security risks.

Disadvantages of building from scratch

  • It’ll cost more. Custom development doesn’t come cheap. To cut costs, we suggest hiring a remote software development company. With a dedicated team, you pay only for work completed at hourly rates. With an in-house team, you’ll pay for hours worked plus taxes, sick leave, vacations, office maintenance, and insurance.
  • Development will take a while. Custom development can be time-consuming and take weeks, months, and sometimes even more.

Technical challenges of starting an online marketplace

The two main challenges of running a marketplace are connected with security and payments. How can you ensure your data is secure and payments are completed successfully?


Today, many businesses suffer from malicious content (e.g. spyware, viruses, worms) and fraud. That’s why you should keep user identity validation and data privacy in mind when building your marketplace. One way to validate user identity is via two-factor authentication, in which two validation mechanisms are required. Usually, one is token and the other is password or code. Authorization also plays a crucial role in online security, as it defines what permissions users have. Authorization verifies that users have access to data and prevents participants from accessing the wrong account.

For Snaapy, we integrated two-factor authentication: users receive a security code on their phone when logging in. The Snaapy app has four user roles: administrator, receptionist, service provider/business, and customer. When authorizing, the system lets a user access only the data they’re permitted to. On Qravity, users have to previously register to participate in the ICOs. They go through whitelist registration, meaning they provide not only personal information like name and email, but also a browser wallet address to check that they have a clean record. For NexDep, we used Twilio to let users verify their phone number when signing up. For NovaVita―a CRM/ERP system for a healthcare center―we developed two-factor authentication. Users can’t sign up for NovaVita on their own. They need to come to the hospital in person and provide documents and personal information so an administrator can create an account for them. Users are given a login and a password when their account is created. Once their registration is confirmed via an SMS code, the user can change their password.

Since marketplaces involve transactions, there’s always a risk of fraud. To prevent it, you can utilize machine learning algorithms. They can help you detect suspicious activity and decline fraudulent transactions faster than any human specialist.


As payments are an integral part of an online marketplace, you should ensure your payment system functions well. Considering the following things:

  • Multi-currency support. To stay competitive, give users the possibility to pay for services or products in their local currency.
  • Cross-border transactions. These create new market opportunities, but can also give rise to more risks. To understand potential risks of cross-border transactions and mitigate them, read this business report by Grant Thornton.
  • Various payment options. To enhance the customer experience, offer users flexible payment options: mobile payments, credit and debit cards, e-wallets, gift cards, vouchers, and cash.

To enable in-app purchases on Snaapy, we implemented several payment systems including KNET, Stripe, My Fatoorah, and Checkout.com so users can choose whichever they prefer.

Wrapping Up

We hope this guide has helped you better understand the building blocks of marketplaces. If you have any questions on how to create an online marketplace or want to start a conversation about crafting marketplaces with your fellow Indiehackers, leave a comment below.