Tutorials

How to Build an Amazon Clone Using Bubble - No Code Required

September 17, 2021
Rashmi Mathur
Account Manager @ AtomChat
9 min read

Modern society’s dependence on digital tools is not something that needs an elaborate introduction. From connecting with friends and family and applying for jobs to ordering the month’s groceries and booking travel tickets, there is an app for everything. Besides, the pandemic-stricken years have shown us how helpless we are without online tools and technologies.

It’s pertinent to point out that e-commerce sites have seen a surge in use since the pandemic hit. Even though consumers in both developed and emerging economies preferred not to overspend, online purchasing, especially of essential products, saw a prominent rise. Needless to say, e-retail giants like Amazon and Etsy have become household names. Plus, the fact that Amazon generated close to US$ 386 billion in its 2020 net sales and has 200 million subscribers to Amazon Prime vouch for the e-commerce giant’s staggering success. 

Taking a cue from those figures, it is not wrong to say that online multivendor marketplaces are the future. So, why not build one with core functionalities like those of Amazon? What’s more, you needn’t have to be a coding ninja to get your marketplace website up and running. With Bubble, you can build any web app without writing a single line of code! So, if that gets you wondering, get on board and take a tour of this article to know how you can build an Amazon-like online multivendor marketplace with no coding required.


Must-Have Online MultiVendor Marketplace Features Inspired by Amazon

Before we go into the details of how to go about building your online multivendor marketplace, we ought to highlight the features that must be a part of your platform. Hence, here are the key features from Amazon that we will focus on in this guide:

• Dynamic display of products on the home page

• A dedicated search function to help customers discover specific products

• Allowing vendors to create new product listings

• Dynamic pages for product listings

• A checkout feature for product purchases

Keeping those features in mind, let’s dive into the actual task of building the online multivendor marketplace website.


Getting Started

The first thing that you need to do is create a Bubble account. Registering and using the Bubble platform is free, but if you want, you can check out their pricing plans to get access to premium features. 

Once you have set up your Bubble account, focus on creating a blueprint of how you want your platform to look or the critical fields that you would want to build within your database.

If you intend to build an online marketplace along the lines of Amazon, the following are some of the core pages that you would want to include:

• A Home Page to display the list of featured products.

• A Product Listing Page or a backend portal for sellers to list their products.

• A Product Page that displays full information related to a specific product.

• A Search Results Page that displays a list of products based on the user’s search query.

• Finally, a Checkout Page where users review their cart items, make payments and complete the purchase.

The good thing about Bubble is that it can send data between web pages. So, all you need to do is create a generic page design and then dynamically display suitable content from your database as required.


Configure the Database

With the wireframe of your marketplace website in mind, the next step is to create the requisite data types and fields that will help connect the workflows behind your application. Since Bubble offers a pre-built database, creating different data types and fields is pretty easy. Since you are aiming to create a replica of Amazon, we will focus on the following data types and fields.

1. Data Type: User

Fields:

• Name 

• Address

• Purchased products (list of products)

• Items added to cart (list of products)

When you create a field as a list based on a different data type, you can coherently integrate all relevant data fields without creating additional fields.


2. Data Type: Product

Fields:

• Title

• Featured image

• Description

• Price

• Category

• Shipping cost

• Location



Build Workflows

The next step of making your product functional is to build the workflows. In Bubble, a workflow entails that an event occurs, and a series of actions follow to respond to the event. For example, the “event” could be a user clicking on a button, and the “response” would be signing the user up, making a change to the database, etc.


Add a New Product

Since you are making a clone of Amazon, you have to ensure that sellers can list their products for sale in the marketplace. It is also one of the core features of Amazon.

To begin the process, go to the Product Upload page, where you will find various input fields, including image uploaders, free-text fields, and the like. A new entry will be created in your database when a user (seller) adds the relevant details into each input field and clicks the submit button. The button click will be the action that triggers a workflow.



Now, you will be creating a new product. In the workflow editor, select Create a new thing within your database.



Next, add data to the relevant fields within your database. Hence, map each input field you would like to create against its corresponding data field.



Display a List of Featured Products on the Homepage

Once you have added multiple products to your marketplace, the next step is to curate the homepage with a feed displaying different items. The repeating group element of Bubble will help you achieve this. Repeating groups work by integrating with your database to display as well as update a list of dynamic content.

When you are using a repeating group, you will need to link the element to a data type within your database. By doing so, you will classify the data type as a product. Plus, you will also need to set the data source as a list comprising all the submitted products from your database. 




Once you have configured the data source, you can begin structuring the dynamic content to be displayed within this column. The best part is that the repeating group element will save you the trouble of structuring again and again. All you have to do is map out the first column with the content you would like to show and the element will fill the remaining columns based on your existing data.




Send data between pages

You can also create events within every column in a repeating group, a feature that comes in handy when you want to build navigational features across your online platform. In other words, since your homepage will only display a product’s overview, you would want the full details of each unique product on a separate page. However, the additional content would need hosting on a dedicated product page. 

To power the navigational feature, you need to create a workflow that will redirect a user to your product page once they click on the product’s image.



Hence, within this workflow, use a navigation event to send users to another page. Select the product page as the destination page type.

Also, you will need to send additional data to the destination page for the Bubble editor to know which specific item to display. You will need to display the data of the current cell’s product.


Display Dynamic Content on a Product Page

Once a user redirects to a particular product’s page, you can pull this event data from your workflow and display the desired content.

On the destination page, the page type configuration should be done to be the same data type that is sent through your workflow. In this case, you will set the product page to a product property.



Henceforth, you can begin adding dynamic content into your page elements to display the information from the product sent in your workflow. 


Create a Search Navigation

When your marketplace has millions of products on sale, you will need a robust search function to help customers search for specific items on the homepage. Hence, customers will be able to input a search query and view a list of all relevant products that match the query keywords. You can create a search results list by building an additional page. 

For this, you can use the same repeating group element you created on the homepage and shorten the build time by replicating the existing page. But while building this page, you will need to configure the Type of content to product.



Back on the homepage, you will now use a text input field that will allow users to enter product keywords.

Next, you will create a new workflow that will classify a user’s search phrase and passes the data through to the search results page. To power the workflow, you have to create an event that will recognize when an input’s value is changed. The element will be the text input field.


 


Since you have to add a unique search query to your URL string, you will not send a user to a page within this workflow. Instead, you will Open an external website that will allow customization of the URL path between pages.

The URL you will send the user to will be the website’s home URL + the URL of the search results page + the dynamic query value from the text input field.




Now on the dedicated search results page, you will update the data source of your repeating group to display only the products that include the URL strings text in their title field.




Next, you will be prompted to select which field of the URL you will put this data from. Here, choose to get data from the URL path and not the parameter. Hence, it will display any product whose title matches any instance of the specific keyword being searched.



Once you are done indexing a list of relevant items, you can repeat the same steps as before to build a navigation feature between the individual product page and the repeating group’s cells.


Add Items To a Cart

When a user (customer) is set to buy a product, they will click the Add to cart button and set off a workflow. This workflow works in a similar way as creating a new product but instead of creating a new thing, you will be making changes to a field in your database.


You need to change the current user and add the product from the current page to their added-to-cart items.




Build a Checkout

With Bubble, you can leverage various plugins to accept payments and process orders at checkout. We will be using the Stripe.js plugin for processing credit card payments through Stripe.

Start building the checkout page by adding a repeating group that displays a list of all items in a user’s add to cart data field.


You will also want to display the total price of the items in the cart below the list. Bubble automatically calculates this based on the existing data fields.


Next, you can display a payment form where users can enter their payment details. Also, you will have to include a Stripe token element next to the payment form, an essential feature to facilitate a new transaction in Stripe.


When the user clicks the Purchase button, a new workflow will be set off that will trigger a Stripe payment. Select the event convert card into Stripetoken A and within this event, you have to configure your input fields to match the payment structure of Stripe.


Once a card converts to a Stripe token, you have to create another workflow that will automatically process this token from the user’s bank account. Use the Stripe.js - Charge - Create an event to verify the Stripe token and the final amount to be paid.



Add Additional Features

Once you have built the core features of your online marketplace, you will be familiar with creating custom data fields and displaying dynamic content. Hence, you can add additional features such as:

• Store profiles

• Support for different product variations in a single listing

• Letting users leave product reviews, and much more.


Take User Engagement on Your Online Marketplace to the Next Level with AtomChat

With AtomChat’s real-time chat software, you can establish direct communication between buyers and sellers on your online marketplace. Marketplace communication is extremely crucial to connect users, initiate conversations, and build trust. AtomChat caters to all those marketplace needs and creates an engaging and connected platform. With AtomChat, you can rest assured that you can deliver the most personalized user experience by fulfilling all communication needs.

Here’s a sneak peek into what AtomChat has to offer to marketplace websites:

• Group and private chat

• High-definition audio and video calling

• Video broadcasting

• File sharing

• Language and style customization

• Content moderation

• White-label apps

• Monetization through tiered access and ads

• User engagement tracking, and a lot more!


So, what are you waiting for? If you want to create an Amazon clone without getting your hands into coding, try the Bubble platform today. With Bubble, building a multivendor marketplace website has never been easier. And yes, don’t forget to harness the incredible features of AtomChat that will amp up your website’s communication needs!


Rashmi Mathur

Rashmi is a sales and support expert with great enthusiasm for technology. Currently at AtomChat she is helping clients discover possible chat solutions and help them scale new heights.

Related Blogs

July 14, 2021

7 Essential WordPress Themes To Start Your Private Social Network in 2021

5 min read

Read
August 11, 2021

Why Online Group Chat is a necessity for your website in 2021 - A Guide

5 min read

Read
July 30, 2021

A Foolproof Guide to building a WordPress Community in 2021

4 min read

Read
September 17, 2021

How to Build an Amazon Clone Using Bubble - No Code Required

9 min read

Read
July 23, 2021

5 Ultimate WordPress Plugins to start your Social Network Platform

4 min read

Read
SHARE THIS BLOG
IMPORTANT LINKS
DOWNLOAD EBOOK
How to make money with your chat app?

Read about all the tips you need to start your own business without going into the techicalities

DOWNLOAD EBOOK

Become a member of our Community!

Get weekly insights handpicked by our editorial team straight in your inbox. Every week!

Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.