Updated Sep 05, 2025

Step-by-Step Guide: Building an Amazon Clone with Adalo

Table of Contents
Text Link

This comprehensive tutorial will walk you through building an Amazon-style marketplace app using Adalo's no-code platform. You'll create a functional e-commerce app with product listings, shopping cart, user accounts, seller dashboards, and payment processing through Stripe.

Prerequisites and Initial Setup

Step 1: Create Your Adalo Account

  1. Go to Adalo.com and sign up
  2. Click "Create New App"
  3. Choose Responsive App (Adalo 2.0). (Mobile App also works, but Responsive is recommended for modern layouts.)
  4. Name your app (e.g., "MarketplaceApp")
  5. Select "Start from Scratch"

Step 2: Configure App Settings

  1. Choose your primary color scheme (Amazon uses orange/yellow)
  2. Select a clean, professional font
  3. Set app icon and splash screen
  4. Click "Continue" to enter the editor

Setting Up the Database

Step 3: Enhance the Users Collection

  1. Click Database icon in left sidebar
  2. Select the default "Users" collection
  3. Add these properties (click "+ Add Property"):
    • Profile Picture (Image)
    • Full Name (Text)
    • Phone Number (Text)
    • Address (Text - check "Multiline")
    • City (Text)
    • State (Text)
    • Zip Code (Text)
    • Is Seller (True/False - default: false)
    • Seller Name (Text)
    • Seller Rating (Number - default: 0)
    • Account Created (Date & Time - Automatic)

Learn more about the Users collection

Step 4: Create Products Collection

  1. Click "+ Add Collection"
  2. Name it "Products"
  3. Add properties:
    • Product Name (Text)
    • Description (Text - check "Multiline")
    • Price (Number - 2 decimal places)
    • Sale Price (Number - 2 decimal places)
    • Main Image (Image)
    • SKU (Text)
    • Stock Quantity (Number - default: 0)
    • Weight (Number)
    • Is Active (True/False - default: true)
    • Featured (True/False - default: false)
    • Created At (Date & Time - Automatic)

Step 5: Create Categories Collection

  1. Click "+ Add Collection"
  2. Name it "Categories"
  3. Add properties:
    • Category Name (Text)
    • Category Image (Image)
    • Description (Text)
    • Display Order (Number)
    • Is Active (True/False)

Step 6: Create Orders Collection

  1. Click "+ Add Collection"
  2. Name it "Orders"
  3. Add properties:
    • Order Number (Text)
    • Status (Text) - Values: "draft", "pending", "processing", "shipped", "delivered"
    • Subtotal (Number)
    • Tax (Number)
    • Shipping (Number)
    • Total (Number)
    • Created At (Date & Time - Automatic)
    • Updated At (Date & Time)
    • Shipping Address (Text - Multiline)
    • Payment Method (Text)
    • Notes (Text - Multiline)

Step 7: Create Order Items Collection

  1. Click "+ Add Collection"
  2. Name it "Order Items"
  3. Add properties:
    • Quantity (Number - default: 1)
    • Price (Number)
    • Total (Number)

Step 8: Create Reviews Collection

  1. Click "+ Add Collection"
  2. Name it "Reviews"
  3. Add properties:
    • Rating (Number) - Values: 1-5
    • Title (Text)
    • Review Text (Text - Multiline)
    • Is Verified (True/False)
    • Created At (Date & Time - Automatic)

Step 9: Create Product Images Collection

  1. Click "+ Add Collection"
  2. Name it "Product Images"
  3. Add properties:
    • Image (Image)
    • Display Order (Number)

Step 10: Set Up Relationships

  1. In Products:
    • Add "Seller" → Users (Many to One)
    • Add "Category" → Categories (Many to One)
  2. In Orders:
    • Add "Customer" → Users (Many to One)
  3. In Order Items:
    • Add "Order" → Orders (Many to One)
    • Add "Product" → Products (Many to One)
  4. In Reviews:
    • Add "Product" → Products (Many to One)
    • Add "Reviewer" → Users (Many to One)
  5. In Product Images:
    • Add "Product" → Products (Many to One)

Learn more about Databases

Building the Home Screen

Step 11: Create Home Screen Layout

  1. Add new screen "Home"
  2. Make it the home screen
  3. Add App Bar:
    • Add logo image
    • Add search icon → Link to Search screen
    • Add cart icon → Link to Cart screen

Step 12: Add Category Slider

  1. Add Custom List (horizontal):
    • Data: Categories
    • Filter: Is Active = true
    • Sort: Display Order (Low to High)
  2. For each list item:
    • Add Category Image (60x60)
    • Add Category Name below
  3. Click action → Navigate to "Category Products"

Step 13: Add Featured Products

  1. Add Text component: "Featured Products"
  2. Add Custom List (grid, 2 columns):
    • Data: Products
    • Filter: Featured = true AND Is Active = true
    • Maximum items: 6
  3. For each product card:
    • Product Image (aspect ratio 1:1)
    • Product Name
    • Price (formatted as currency)
    • Rating stars
  4. Click action → Navigate to "Product Detail"

Learn more about Component

Creating Product Listing Pages

Step 14: Build Search Screen

  1. Add new screen "Search"
  2. Add Text Input at top:
    • Placeholder: "Search products..."
    • Name it "SearchTerm"
  3. Add Custom List:
    • Data: Products
    • Filter: Product Name contains SearchTerm OR Description contains SearchTerm
    • Filter: Is Active = true

Learn how to create a search bar

Step 15: Create Category Products Screen

  1. Add new screen "Category Products"
  2. Add Text showing Current Category → Category Name
  3. Add filter dropdown:
    • Sort options: Price Low-High, Price High-Low, Rating
  4. Add Custom List:
    • Data: Current Category → Products
    • Filter: Is Active = true
    • Apply selected sort

Step 16: Build Product Detail Screen

  1. Add new screen "Product Detail"
  2. Add Image Slider for product images:
    • Data: Current Product → Product Images
    • Sort: Display Order
  3. Add product info section:
    • Product Name (H1)
    • Price display with strikethrough Sale Price
    • Rating with review count
    • Stock status
  4. Add Dropdown for quantity selection
  5. Add description section
  6. Add seller information:
    • Seller name
    • Seller rating

Step 17: Add Reviews Section

  1. Add Custom List:
    • Data: Current Product → Reviews
    • Sort: Created At (Newest First)
  2. Show for each review:
    • Rating stars
    • Review title
    • Review text
    • Reviewer name
    • Date
  3. Add "Write Review" button → Review Form screen

Implementing Shopping Cart

Step 18: Create Cart System (Draft Order)

  1. On Product Detail, tap Add to Cart
  2. If the user has no draft Order, Create Order with: Status = "draft", Customer = Logged In User
  3. Create Order Item with: Order = that draft Order, Product = Current Product, Quantity = Selected Quantity, Price = Product → Price (or Sale Price if set)
  4. (Optional) Update Order Subtotal/Total via actions (or compute on the Cart screen)

Learn how to set up your shopping cart

Step 19: Build Shopping Cart Screen

  1. Add new screen "Cart"
  2. Add Custom List:
    • Data: Order Items
    • Filter: Order → Customer = Logged in User
    • Filter: Order → Status = "draft"
  3. For each cart item show:
    • Product image
    • Product name
    • Quantity selector
    • Item total
    • Remove button
  4. Add cart summary:
    • Subtotal calculation
    • Tax calculation (e.g., 10%)
    • Shipping calculation
    • Total

Step 20: Create Checkout Flow

  1. Add new screen "Shipping Address"
  2. Add form fields:
    • Full Name
    • Address
    • City, State, Zip
    • Phone Number
  3. Save to User profile or Order

Step 21: Integrate Stripe (Checkout)

A) Single-vendor store

  1. Install Stripe Payment from Marketplace and connect your Stripe account
  2. Amount = Current Order → Total; Currency = desired currency; Description = "Order #" + Order Number
  3. On success: Update Order → Status = "pending" (or "processing"), set Payment Method, then go to Order Confirmation

Learn more about Stripe Payment

B) Multi-vendor marketplace

  1. Add Stripe Connect (for seller onboarding) and Stripe Marketplace Payment
  2. On the seller onboarding screen, place Stripe Connect and save the seller's Connected Account ID to the User (Seller)
  3. On Payment, use Stripe Marketplace Payment and set Connected Account ID = Product → Seller → Connected Account ID (via Magic Text)
  4. (Optional) Set a platform fee. On success: Update Order Status, then go to Order Confirmation

Building Seller Features

Step 22: Create Seller Registration

  1. Add Become a Seller screen
  2. Place Stripe Connect and prompt the seller to complete onboarding
  3. On success, save Connected Account ID to the Seller's User record; set Is Seller = true and Seller Name

Step 23: Build Seller Dashboard

  1. Add new screen "Seller Dashboard"
  2. Show only if User → Is Seller = true
  3. Add statistics cards:
    • Total Products
    • Total Orders
    • Revenue This Month
  4. Add Custom List of seller's products:
    • Filter: Seller = Logged in User

Step 24: Create Product Management

  1. Add new screen "Add Product"
  2. Add form with all product fields
  3. Add image upload for Main Image
  4. Create Product on submit
  5. Add "Edit Product" screen with update forms

Step 25: Implement Order Management

  1. Add new screen "Seller Orders"
  2. Add Custom List:
    • Data: Order Items
    • Filter: Product → Seller = Logged in User
  3. Show order details and status
  4. Add status update dropdown

Adding Advanced Features

Step 26: Implement Product Reviews

  1. Add new screen "Write Review"
  2. Add star rating selector (1-5)
  3. Add review form:
    • Title
    • Review Text
  4. Create Review on submit
  5. Update Product rating average

Step 27: Create User Account Pages

  1. Add new screen "My Account"
  2. Add sections:
    • Profile Information (editable)
    • Order History
    • Saved Addresses
    • Payment Methods
  3. Add logout button

Step 28: Build Order Tracking

  1. Add new screen "Order Details"
  2. Show order information:
    • Order number
    • Status with progress indicator
    • Items ordered
    • Delivery address
    • Total paid
  3. Add tracking information field

Step 29: Add Wishlist Feature

  1. Create "Wishlist" collection
  2. Add relationship to Users and Products
  3. Add heart icon on product cards
  4. Toggle wishlist on click
  5. Create "My Wishlist" screen

Optimizing Performance

Step 30: Implement Image Optimization

  1. Compress all images before upload
  2. Use Imgix parameters:
    • Add ?w=300&q=75 to product list images
    • Add ?w=600&q=85 to detail images
  3. Limit gallery to 5 images maximum

Image optimization guide

Step 31: List Pagination

  1. In product lists, enable Load items as user scrolls (infinite scroll)
  2. Limit initial load (e.g., 10–20 items)
  3. Avoid lists-within-lists for heavy screens

Step 32: Optimize Database Queries

  1. Pre-compute totals (item count, line totals) in actions instead of calculating in lists
  2. Reduce relationship depth in list items—bind only what you display
  3. Keep filters simple; sort by common fields (e.g., Created At, Price)

Testing and Launch

Step 33: Test Core Features

  1. Create test seller account
  2. Add sample products (10-20)
  3. Test purchase flow end-to-end
  4. Verify cart persistence
  5. Check seller dashboard updates
  6. Test on multiple devices

Step 34: Configure for Production

  1. Switch Stripe to Live keys and test a $1 live charge
  2. Add a custom domain on a paid plan (SSL is handled by Adalo)
  3. Add Privacy Policy and Terms; include refund/shipping policies
  4. (Mobile) Prepare app store assets & listings

Step 35: Prepare for Publishing

  1. Upgrade to Starter — $45/mo (includes publishing)
  2. Test end-to-end payments in Live mode
  3. Add support/contact flows
  4. (Mobile) Submit to stores (Apple/Google developer fees apply)

Working with Platform Limitations

Step 36: Handle Missing Features

Cannot Implement Natively: • True realtime inventory locks/transactions
• Complex carrier rating/shipping rules (multi-carrier rate shopping)
• Automatic multi-currency price conversion

Available in Adalo: • Advanced filters (Lists support AND/OR & multiple conditions)
Push notifications, External Collections, Custom Actions for API calls

Workarounds: • Use Custom Actions / External Collections to call shipping/rates or inventory APIs
• Use Zapier/Make for emails and back-office automations

Step 37: Scale Considerations

  1. Keep product images lightweight (use Imgix params on URL-bound images)
  2. Use infinite scroll, avoid heavy list nesting, and pre-compute counts
  3. For larger catalogs or external sources, connect via External Collections; on Team+, consider the Collections API

Additional Resources

Important Considerations

Pricing (monthly): • Starter — $45/mo (publishing)
• Professional — $65/mo (Custom Actions, External Collections)
• Team — $200/mo (Collections API, higher limits, collaborators)
• Business — $250/mo (highest limits)
(Annual pricing is lower; check out Adalo’s Pricing.)

Storage (per pricing page): plan storage tiers apply to your team. Keep media optimized.

Performance
Use list limits (≈10–20 initial), Load items as user scrolls, pre-compute totals, and keep list items light.

Payments
Stripe fees apply, and Stripe Connect is required for multi-vendor payouts.

Note: This Amazon clone provides core marketplace functionality within Adalo's constraints. While it won't match Amazon's advanced features, it serves as a solid foundation for a small to medium-sized e-commerce platform.

Start Building With An App Template
Build your app fast with one of our pre-made app templates
Try it now
Read This Next

Looking For More?

Ready to Get Started on Adalo?